Michael S. Tsirkin
2678369e8e
virtio_scsi: fix DMA cacheline issues for events
...
Current struct virtio_scsi_event_node layout has two problems:
The event (DMA_FROM_DEVICE) and work (CPU-written via
INIT_WORK/queue_work) fields share a cacheline.
On non-cache-coherent platforms, CPU writes to work can
corrupt device-written event data.
If ARCH_DMA_MINALIGN is large enough, the 8 events in event_list share
cachelines, triggering CONFIG_DMA_API_DEBUG warnings.
Fix the corruption by moving event buffers to a separate array and
aligning using __dma_from_device_group_begin()/end().
Suppress the (now spurious) DMA debug warnings using
virtqueue_add_inbuf_cache_clean().
Message-ID: <8801aeef7576a155299f19b6887682dd3a272aba.1767601130.git.mst@redhat.com >
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com >
Signed-off-by: Michael S. Tsirkin <mst@redhat.com >
2026-01-08 09:54:27 -05:00
..
2025-10-23 23:01:00 -04:00
2025-08-13 02:59:28 -04:00
2025-11-12 20:50:43 -05:00
2025-08-13 02:59:28 -04:00
2025-06-08 09:07:37 +02:00
2025-11-12 21:28:26 -05:00
2025-11-24 16:58:59 -06:00
2025-11-12 21:28:26 -05:00
2025-06-08 09:07:37 +02:00
2025-11-24 16:58:59 -06:00
2025-06-08 09:07:37 +02:00
2025-11-12 21:28:26 -05:00
2025-07-31 12:13:53 -07:00
2025-06-17 10:44:13 +02:00
2025-11-08 12:28:11 -05:00
2025-12-05 19:56:50 -08:00
2025-08-18 22:08:30 -04:00
2025-06-17 10:44:13 +02:00
2025-11-12 21:28:26 -05:00
2025-10-20 12:00:11 -04:00
2025-10-06 22:27:28 -04:00
2025-12-08 22:08:31 -05:00
2025-12-05 19:56:50 -08:00
2025-10-20 12:00:42 -04:00
2025-11-29 15:08:41 -05:00
2025-10-03 19:17:48 -07:00
2025-09-29 17:26:20 -04:00
2025-08-13 02:59:28 -04:00
2025-11-12 21:28:27 -05:00
2025-11-12 21:28:26 -05:00
2025-11-12 21:28:26 -05:00
2025-12-14 15:35:35 +12:00
2025-12-14 15:35:35 +12:00
2025-11-08 13:09:49 -05:00
2025-11-19 12:30:11 +01:00
2025-06-08 09:07:37 +02:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2024-12-04 15:34:28 -05:00
2024-12-09 21:59:52 -05:00
2024-11-06 20:45:25 -05:00
2024-11-06 20:45:25 -05:00
2025-10-23 22:58:53 -04:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2024-12-09 21:59:52 -05:00
2024-11-06 20:45:25 -05:00
2025-08-13 02:59:28 -04:00
2025-10-02 10:16:56 -07:00
2025-08-13 02:59:28 -04:00
2024-11-06 20:45:25 -05:00
2024-03-10 18:15:48 -04:00
2025-06-08 09:07:37 +02:00
2024-12-09 21:59:52 -05:00
2024-12-04 15:34:28 -05:00
2025-01-02 13:42:35 -05:00
2024-12-09 21:59:52 -05:00
2025-08-13 02:59:28 -04:00
2024-04-08 22:01:19 -04:00
2024-06-11 21:33:58 -04:00
2025-11-19 22:59:25 -05:00
2025-09-24 21:41:24 -04:00
2024-12-09 21:59:52 -05:00
2025-11-29 15:42:17 -05:00
2025-08-13 02:59:28 -04:00
2025-12-14 15:35:35 +12:00
2024-10-02 17:23:23 -04:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2025-02-12 22:05:10 -05:00
2025-02-12 22:05:10 -05:00
2024-11-06 20:45:25 -05:00
2025-10-01 00:00:42 +00:00
2025-02-12 22:05:10 -05:00
2025-07-21 23:48:36 -04:00
2024-03-07 23:06:19 +11:00
2024-11-06 20:45:25 -05:00
2024-11-06 20:45:25 -05:00
2025-02-03 18:04:55 -05:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2025-11-14 17:05:53 +01:00
2024-11-06 20:45:25 -05:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2024-08-22 21:28:56 -04:00
2025-08-19 22:30:57 -04:00
2024-08-22 21:28:56 -04:00
2025-06-08 09:07:37 +02:00
2024-08-12 22:05:50 -04:00
2024-08-12 22:05:50 -04:00
2024-12-09 21:59:52 -05:00
2025-06-08 09:07:37 +02:00
2025-08-13 02:59:28 -04:00
2024-12-04 15:34:28 -05:00
2025-10-21 22:06:22 -04:00
2024-11-20 21:32:48 -05:00
2025-08-13 02:59:28 -04:00
2025-08-13 02:59:28 -04:00
2024-12-04 15:34:28 -05:00
2024-10-02 17:23:23 -04:00
2025-11-19 22:42:09 -05:00
2024-04-08 22:12:33 -04:00
2025-06-24 21:17:22 -04:00
2025-12-08 22:04:38 -05:00
2025-11-19 22:59:25 -05:00
2025-05-07 07:31:07 -06:00
2025-01-21 12:16:17 -05:00
2025-11-29 15:20:15 -05:00
2025-10-21 21:11:35 -04:00
2025-11-12 20:56:38 -05:00
2025-11-12 17:02:31 -05:00
2024-10-02 17:23:23 -04:00
2025-11-12 17:02:31 -05:00
2025-03-03 22:11:48 -05:00
2025-11-12 18:16:05 -05:00
2024-10-02 17:23:23 -04:00
2025-11-12 21:28:26 -05:00
2025-11-12 21:15:18 -05:00
2025-07-24 22:00:43 -04:00
2025-01-10 15:15:20 -05:00
2025-04-03 10:54:31 -04:00
2025-11-12 17:02:31 -05:00
2025-08-13 02:59:28 -04:00
2025-07-01 14:00:15 +02:00
2025-11-05 08:07:21 -07:00
2025-12-09 08:53:24 +09:00
2025-11-05 08:07:21 -07:00
2024-10-02 17:23:23 -04:00
2025-11-19 22:46:36 -05:00
2024-11-06 20:45:25 -05:00
2025-11-12 20:53:41 -05:00
2024-11-06 20:45:25 -05:00
2024-07-28 17:06:20 -07:00
2025-08-30 21:46:21 -04:00
2024-05-15 10:05:24 -04:00
2025-11-08 12:21:10 -05:00
2025-02-03 17:43:31 -05:00
2025-12-05 19:56:50 -08:00
2025-10-13 15:54:13 -04:00
2024-11-06 21:06:44 -05:00
2024-11-06 20:45:25 -05:00
2024-11-06 20:45:25 -05:00
2026-01-08 09:54:27 -05:00
2024-08-22 21:28:55 -04:00
2024-10-03 21:48:08 -04:00
2025-08-13 02:59:28 -04:00
2024-12-04 15:34:28 -05:00
2024-09-12 20:25:43 -04:00