From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58891) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVh1F-0006VM-EE for qemu-devel@nongnu.org; Wed, 11 Mar 2015 09:49:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YVh1B-0007ur-Dg for qemu-devel@nongnu.org; Wed, 11 Mar 2015 09:49:53 -0400 Received: from mx1.redhat.com ([209.132.183.28]:43539) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVh1B-0007ud-5G for qemu-devel@nongnu.org; Wed, 11 Mar 2015 09:49:49 -0400 Date: Wed, 11 Mar 2015 14:49:44 +0100 From: "Michael S. Tsirkin" Message-ID: <20150311144627-mutt-send-email-mst@redhat.com> References: <20150311141903-mutt-send-email-mst@redhat.com> <550043C7.3030301@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <550043C7.3030301@redhat.com> Subject: Re: [Qemu-devel] [PATCH] uapi/virtio_scsi: allow overriding CDB/SENSE size List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: virtualization@lists.linux-foundation.org, linux-kernel@vger.kernel.org, qemu-devel@nongnu.org On Wed, Mar 11, 2015 at 02:31:51PM +0100, Paolo Bonzini wrote: > > > On 11/03/2015 14:19, Michael S. Tsirkin wrote: > > 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 > > Signed-off-by: Michael S. Tsirkin > > QEMU will then use a zero-element array instead of a flexible array > member. That's okay. Or a flex array member: just do #define VIRTIO_SCSI_CDB_SIZE #define VIRTIO_SCSI_SENSE_SIZE before including this header. > Acked-by: Paolo Bonzini > > Paolo > > > --- > > include/uapi/linux/virtio_scsi.h | 12 ++++++++++-- > > 1 file changed, 10 insertions(+), 2 deletions(-) > > > > diff --git a/include/uapi/linux/virtio_scsi.h b/include/uapi/linux/virtio_scsi.h > > index 42b9370..cc18ef8 100644 > > --- a/include/uapi/linux/virtio_scsi.h > > +++ b/include/uapi/linux/virtio_scsi.h > > @@ -29,8 +29,16 @@ > > > > #include > > > > -#define VIRTIO_SCSI_CDB_SIZE 32 > > -#define VIRTIO_SCSI_SENSE_SIZE 96 > > +/* Default values of the CDB and sense data size configuration fields */ > > +#define VIRTIO_SCSI_CDB_DEFAULT_SIZE 32 > > +#define VIRTIO_SCSI_SENSE_DEFAULT_SIZE 96 > > + > > +#ifndef VIRTIO_SCSI_CDB_SIZE > > +#define VIRTIO_SCSI_CDB_SIZE VIRTIO_SCSI_CDB_DEFAULT_SIZE > > +#endif > > +#ifndef VIRTIO_SCSI_SENSE_SIZE > > +#define VIRTIO_SCSI_SENSE_SIZE VIRTIO_SCSI_SENSE_DEFAULT_SIZE > > +#endif > > > > /* SCSI command request, followed by data-out */ > > struct virtio_scsi_cmd_req { > >