Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

uapi/virtio_scsi: allow overriding CDB/SENSE size

QEMU wants to use virtio scsi structures with
a different VIRTIO_SCSI_CDB_SIZE/VIRTIO_SCSI_SENSE_SIZE,
let's add ifdefs to allow overriding them.

Keep the old defines under new names:
VIRTIO_SCSI_CDB_DEFAULT_SIZE/VIRTIO_SCSI_SENSE_DEFAULT_SIZE,
since that's what these values really are:
defaults for cdb/sense size fields.

Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>

authored by

Michael S. Tsirkin and committed by
Rusty Russell
a4994b81 87e7bf14

+10 -2
+10 -2
include/uapi/linux/virtio_scsi.h
··· 29 29 30 30 #include <linux/virtio_types.h> 31 31 32 - #define VIRTIO_SCSI_CDB_SIZE 32 33 - #define VIRTIO_SCSI_SENSE_SIZE 96 32 + /* Default values of the CDB and sense data size configuration fields */ 33 + #define VIRTIO_SCSI_CDB_DEFAULT_SIZE 32 34 + #define VIRTIO_SCSI_SENSE_DEFAULT_SIZE 96 35 + 36 + #ifndef VIRTIO_SCSI_CDB_SIZE 37 + #define VIRTIO_SCSI_CDB_SIZE VIRTIO_SCSI_CDB_DEFAULT_SIZE 38 + #endif 39 + #ifndef VIRTIO_SCSI_SENSE_SIZE 40 + #define VIRTIO_SCSI_SENSE_SIZE VIRTIO_SCSI_SENSE_DEFAULT_SIZE 41 + #endif 34 42 35 43 /* SCSI command request, followed by data-out */ 36 44 struct virtio_scsi_cmd_req {