From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753012AbbCKNtu (ORCPT ); Wed, 11 Mar 2015 09:49:50 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36809 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751868AbbCKNtt (ORCPT ); Wed, 11 Mar 2015 09:49:49 -0400 Date: Wed, 11 Mar 2015 14:49:44 +0100 From: "Michael S. Tsirkin" To: Paolo Bonzini Cc: linux-kernel@vger.kernel.org, qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org Subject: Re: [PATCH] uapi/virtio_scsi: allow overriding CDB/SENSE size 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> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.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 { > >