From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jason Wang Subject: Re: [net-next RFC V5 2/5] virtio_ring: move queue_index to vring_virtqueue Date: Fri, 06 Jul 2012 11:17:56 +0800 Message-ID: <4FF658E4.6030008@redhat.com> References: <1341484194-8108-1-git-send-email-jasowang@redhat.com> <1341484194-8108-3-git-send-email-jasowang@redhat.com> <1341488454.18786.15.camel@lappy> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1341488454.18786.15.camel@lappy> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: Sasha Levin Cc: krkumar2@in.ibm.com, habanero@linux.vnet.ibm.com, mashirle@us.ibm.com, kvm@vger.kernel.org, mst@redhat.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, edumazet@google.com, tahm@linux.vnet.ibm.com, jwhan@filewood.snu.ac.kr, davem@davemloft.net, sri@us.ibm.com List-Id: virtualization@lists.linuxfoundation.org T24gMDcvMDUvMjAxMiAwNzo0MCBQTSwgU2FzaGEgTGV2aW4gd3JvdGU6Cj4gT24gVGh1LCAyMDEy LTA3LTA1IGF0IDE4OjI5ICswODAwLCBKYXNvbiBXYW5nIHdyb3RlOgo+PiBJbnN0ZWFkIG9mIHN0 b3JpbmcgdGhlIHF1ZXVlIGluZGV4IGluIHZpcnRpbyBpbmZvcywgdGhpcyBwYXRjaCBtb3ZlcyB0 aGVtIHRvCj4+IHZyaW5nX3ZpcnRxdWV1ZSBhbmQgaW50cm9kdWNlcyBoZWxwZXJzIHRvIHNldCBh bmQgZ2V0IHRoZSB2YWx1ZS4gVGhpcyB3b3VsZAo+PiBzaW1wbGlmeSB0aGUgbWFuYWdlbWVudCBh bmQgdHJhY2luZy4KPj4KPj4gU2lnbmVkLW9mZi1ieTogSmFzb24gV2FuZzxqYXNvd2FuZ0ByZWRo YXQuY29tPgo+IFRoaXMgcGF0Y2ggYWN0dWFsbHkgZmFpbHMgdG8gY29tcGlsZToKPgo+IGRyaXZl cnMvdmlydGlvL3ZpcnRpb19tbWlvLmM6IEluIGZ1bmN0aW9uIOKAmHZtX25vdGlmeeKAmToKPiBk cml2ZXJzL3ZpcnRpby92aXJ0aW9fbW1pby5jOjIyOToxMzogZXJyb3I6IOKAmHN0cnVjdCB2aXJ0 aW9fbW1pb192cV9pbmZv4oCZIGhhcyBubyBtZW1iZXIgbmFtZWQg4oCYcXVldWVfaW5kZXjigJkK PiBkcml2ZXJzL3ZpcnRpby92aXJ0aW9fbW1pby5jOiBJbiBmdW5jdGlvbiDigJh2bV9kZWxfdnHi gJk6Cj4gZHJpdmVycy92aXJ0aW8vdmlydGlvX21taW8uYzoyNzg6MTM6IGVycm9yOiDigJhzdHJ1 Y3QgdmlydGlvX21taW9fdnFfaW5mb+KAmSBoYXMgbm8gbWVtYmVyIG5hbWVkIOKAmHF1ZXVlX2lu ZGV44oCZCj4gbWFrZVsyXTogKioqIFtkcml2ZXJzL3ZpcnRpby92aXJ0aW9fbW1pby5vXSBFcnJv ciAxCj4KPiBJdCBwcm9iYWJseSBtaXNzZXMgdGhlIGZvbGxvd2luZyBodW5rczoKPgo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL3ZpcnRpby92aXJ0aW9fbW1pby5jIGIvZHJpdmVycy92aXJ0aW8vdmly dGlvX21taW8uYwo+IGluZGV4IGY1NDMyYjYuLjEyYjYxODAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy92aXJ0aW8vdmlydGlvX21taW8uYwo+ICsrKyBiL2RyaXZlcnMvdmlydGlvL3ZpcnRpb19tbWlv LmMKPiBAQCAtMjIyLDExICsyMjIsMTAgQEAgc3RhdGljIHZvaWQgdm1fcmVzZXQoc3RydWN0IHZp cnRpb19kZXZpY2UgKnZkZXYpCj4gICBzdGF0aWMgdm9pZCB2bV9ub3RpZnkoc3RydWN0IHZpcnRx dWV1ZSAqdnEpCj4gICB7Cj4gICAgICAgICAgc3RydWN0IHZpcnRpb19tbWlvX2RldmljZSAqdm1f ZGV2ID0gdG9fdmlydGlvX21taW9fZGV2aWNlKHZxLT52ZGV2KTsKPiAtICAgICAgIHN0cnVjdCB2 aXJ0aW9fbW1pb192cV9pbmZvICppbmZvID0gdnEtPnByaXY7Cj4KPiAgICAgICAgICAvKiBXZSB3 cml0ZSB0aGUgcXVldWUncyBzZWxlY3RvciBpbnRvIHRoZSBub3RpZmljYXRpb24gcmVnaXN0ZXIg dG8KPiAgICAgICAgICAgKiBzaWduYWwgdGhlIG90aGVyIGVuZCAqLwo+IC0gICAgICAgd3JpdGVs KGluZm8tPnF1ZXVlX2luZGV4LCB2bV9kZXYtPmJhc2UgKyBWSVJUSU9fTU1JT19RVUVVRV9OT1RJ RlkpOwo+ICsgICAgICAgd3JpdGVsKHZpcnRxdWV1ZV9nZXRfcXVldWVfaW5kZXgodnEpLCB2bV9k ZXYtPmJhc2UgKyBWSVJUSU9fTU1JT19RVUVVRV9OT1RJRlkpOwo+ICAgfQo+Cj4gICAvKiBOb3Rp ZnkgYWxsIHZpcnRxdWV1ZXMgb24gYW4gaW50ZXJydXB0LiAqLwo+IEBAIC0yNzUsNyArMjc0LDcg QEAgc3RhdGljIHZvaWQgdm1fZGVsX3ZxKHN0cnVjdCB2aXJ0cXVldWUgKnZxKQo+ICAgICAgICAg IHZyaW5nX2RlbF92aXJ0cXVldWUodnEpOwo+Cj4gICAgICAgICAgLyogU2VsZWN0IGFuZCBkZWFj dGl2YXRlIHRoZSBxdWV1ZSAqLwo+IC0gICAgICAgd3JpdGVsKGluZm8tPnF1ZXVlX2luZGV4LCB2 bV9kZXYtPmJhc2UgKyBWSVJUSU9fTU1JT19RVUVVRV9TRUwpOwo+ICsgICAgICAgd3JpdGVsKHZp cnRxdWV1ZV9nZXRfcXVldWVfaW5kZXgodnEpLCB2bV9kZXYtPmJhc2UgKyBWSVJUSU9fTU1JT19R VUVVRV9TRUwpOwo+ICAgICAgICAgIHdyaXRlbCgwLCB2bV9kZXYtPmJhc2UgKyBWSVJUSU9fTU1J T19RVUVVRV9QRk4pOwo+Cj4gICAgICAgICAgc2l6ZSA9IFBBR0VfQUxJR04odnJpbmdfc2l6ZShp bmZvLT5udW0sIFZJUlRJT19NTUlPX1ZSSU5HX0FMSUdOKSk7Cj4KT29wcywgSSBtaXNzIHRoZSB2 aXJ0aW8gbW1pbyBwYXJ0LCB0aGFua3MgZm9yIHBvaW50aW5nIHRoaXMuCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClZpcnR1YWxpemF0aW9uIG1haWxpbmcg bGlzdApWaXJ0dWFsaXphdGlvbkBsaXN0cy5saW51eC1mb3VuZGF0aW9uLm9yZwpodHRwczovL2xp c3RzLmxpbnV4Zm91bmRhdGlvbi5vcmcvbWFpbG1hbi9saXN0aW5mby92aXJ0dWFsaXphdGlvbg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933494Ab2GFDQG (ORCPT ); Thu, 5 Jul 2012 23:16:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:27940 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932465Ab2GFDQD (ORCPT ); Thu, 5 Jul 2012 23:16:03 -0400 Message-ID: <4FF658E4.6030008@redhat.com> Date: Fri, 06 Jul 2012 11:17:56 +0800 From: Jason Wang User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20120210 Thunderbird/10.0.1 MIME-Version: 1.0 To: Sasha Levin CC: mst@redhat.com, mashirle@us.ibm.com, krkumar2@in.ibm.com, habanero@linux.vnet.ibm.com, rusty@rustcorp.com.au, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, edumazet@google.com, tahm@linux.vnet.ibm.com, jwhan@filewood.snu.ac.kr, davem@davemloft.net, akong@redhat.com, kvm@vger.kernel.org, sri@us.ibm.com Subject: Re: [net-next RFC V5 2/5] virtio_ring: move queue_index to vring_virtqueue References: <1341484194-8108-1-git-send-email-jasowang@redhat.com> <1341484194-8108-3-git-send-email-jasowang@redhat.com> <1341488454.18786.15.camel@lappy> In-Reply-To: <1341488454.18786.15.camel@lappy> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 07/05/2012 07:40 PM, Sasha Levin wrote: > On Thu, 2012-07-05 at 18:29 +0800, Jason Wang wrote: >> Instead of storing the queue index in virtio infos, this patch moves them to >> vring_virtqueue and introduces helpers to set and get the value. This would >> simplify the management and tracing. >> >> Signed-off-by: Jason Wang > This patch actually fails to compile: > > drivers/virtio/virtio_mmio.c: In function ‘vm_notify’: > drivers/virtio/virtio_mmio.c:229:13: error: ‘struct virtio_mmio_vq_info’ has no member named ‘queue_index’ > drivers/virtio/virtio_mmio.c: In function ‘vm_del_vq’: > drivers/virtio/virtio_mmio.c:278:13: error: ‘struct virtio_mmio_vq_info’ has no member named ‘queue_index’ > make[2]: *** [drivers/virtio/virtio_mmio.o] Error 1 > > It probably misses the following hunks: > > diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c > index f5432b6..12b6180 100644 > --- a/drivers/virtio/virtio_mmio.c > +++ b/drivers/virtio/virtio_mmio.c > @@ -222,11 +222,10 @@ static void vm_reset(struct virtio_device *vdev) > static void vm_notify(struct virtqueue *vq) > { > struct virtio_mmio_device *vm_dev = to_virtio_mmio_device(vq->vdev); > - struct virtio_mmio_vq_info *info = vq->priv; > > /* We write the queue's selector into the notification register to > * signal the other end */ > - writel(info->queue_index, vm_dev->base + VIRTIO_MMIO_QUEUE_NOTIFY); > + writel(virtqueue_get_queue_index(vq), vm_dev->base + VIRTIO_MMIO_QUEUE_NOTIFY); > } > > /* Notify all virtqueues on an interrupt. */ > @@ -275,7 +274,7 @@ static void vm_del_vq(struct virtqueue *vq) > vring_del_virtqueue(vq); > > /* Select and deactivate the queue */ > - writel(info->queue_index, vm_dev->base + VIRTIO_MMIO_QUEUE_SEL); > + writel(virtqueue_get_queue_index(vq), vm_dev->base + VIRTIO_MMIO_QUEUE_SEL); > writel(0, vm_dev->base + VIRTIO_MMIO_QUEUE_PFN); > > size = PAGE_ALIGN(vring_size(info->num, VIRTIO_MMIO_VRING_ALIGN)); > Oops, I miss the virtio mmio part, thanks for pointing this.