From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52181) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YQy5A-0004C2-WB for qemu-devel@nongnu.org; Thu, 26 Feb 2015 08:02:29 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YQy57-0006KC-Ci for qemu-devel@nongnu.org; Thu, 26 Feb 2015 08:02:24 -0500 Received: from e06smtp16.uk.ibm.com ([195.75.94.112]:49546) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YQy57-0006I8-3u for qemu-devel@nongnu.org; Thu, 26 Feb 2015 08:02:21 -0500 Received: from /spool/local by e06smtp16.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 26 Feb 2015 13:02:19 -0000 Received: from b06cxnps4076.portsmouth.uk.ibm.com (d06relay13.portsmouth.uk.ibm.com [9.149.109.198]) by d06dlp02.portsmouth.uk.ibm.com (Postfix) with ESMTP id 73F1F219004D for ; Thu, 26 Feb 2015 13:02:09 +0000 (GMT) Received: from d06av07.portsmouth.uk.ibm.com (d06av07.portsmouth.uk.ibm.com [9.149.37.248]) by b06cxnps4076.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id t1QD2GrX11076086 for ; Thu, 26 Feb 2015 13:02:16 GMT Received: from d06av07.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av07.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id t1QD2Glw009477 for ; Thu, 26 Feb 2015 08:02:16 -0500 Date: Thu, 26 Feb 2015 14:02:12 +0100 From: Cornelia Huck Message-ID: <20150226140212.6c788d52.cornelia.huck@de.ibm.com> In-Reply-To: <1424934286-7099-5-git-send-email-jasowang@redhat.com> References: <1424934286-7099-1-git-send-email-jasowang@redhat.com> <1424934286-7099-5-git-send-email-jasowang@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH V2 04/11] virtio-ccw: introduce ccw specific queue limit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jason Wang Cc: Alexander Graf , Richard Henderson , qemu-devel@nongnu.org, Christian Borntraeger , mst@redhat.com On Thu, 26 Feb 2015 15:04:39 +0800 Jason Wang wrote: > Instead of depending on marco, using a bus specific limit. > > Cc: Alexander Graf > Cc: Cornelia Huck > Cc: Christian Borntraeger > Cc: Richard Henderson > Signed-off-by: Jason Wang > --- > hw/s390x/s390-virtio-ccw.c | 7 +++++-- > hw/s390x/virtio-ccw.c | 13 +++++++------ > include/hw/virtio/virtio.h | 1 + > 3 files changed, 13 insertions(+), 8 deletions(-) > > diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c > index 71bafe0..6aeb815 100644 > --- a/hw/s390x/s390-virtio-ccw.c > +++ b/hw/s390x/s390-virtio-ccw.c > @@ -43,6 +43,7 @@ void io_subsystem_reset(void) > > static int virtio_ccw_hcall_notify(const uint64_t *args) > { > + VirtIODevice *vdev; > uint64_t subch_id = args[0]; > uint64_t queue = args[1]; > SubchDev *sch; > @@ -55,10 +56,12 @@ static int virtio_ccw_hcall_notify(const uint64_t *args) > if (!sch || !css_subch_visible(sch)) { > return -EINVAL; > } > - if (queue >= VIRTIO_PCI_QUEUE_MAX) { > + > + vdev = virtio_ccw_get_vdev(sch); > + if (queue >= virtio_get_queue_max(vdev)) { But we already know we have a virtio_ccw device, right? So why not just check against VIRTIO_CCW_QUEUE_MAX? > return -EINVAL; > } > - virtio_queue_notify(virtio_ccw_get_vdev(sch), queue); > + virtio_queue_notify(vdev, queue); > return 0; > > } (...) > diff --git a/include/hw/virtio/virtio.h b/include/hw/virtio/virtio.h > index 9fe0d92..04ad532 100644 > --- a/include/hw/virtio/virtio.h > +++ b/include/hw/virtio/virtio.h > @@ -93,6 +93,7 @@ typedef struct VirtQueueElement > } VirtQueueElement; > > #define VIRTIO_PCI_QUEUE_MAX 64 > +#define VIRTIO_CCW_QUEUE_MAX 64 Does generic code need to know about the ccw limit? > > #define VIRTIO_NO_VECTOR 0xffff >