From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A4F55C2BA1A for ; Mon, 6 Apr 2020 22:29:01 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 7FF382072A for ; Mon, 6 Apr 2020 22:29:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726365AbgDFW3A (ORCPT ); Mon, 6 Apr 2020 18:29:00 -0400 Received: from mga06.intel.com ([134.134.136.31]:19971 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726130AbgDFW3A (ORCPT ); Mon, 6 Apr 2020 18:29:00 -0400 IronPort-SDR: wzPxupD2QNY6RQ4znvjoiXlQjMxdFTBZlNkA+Q/Df1opYzH9n2VG+HM4+m2R//bm1W1ZNQie5S aaYY+HgWZQjA== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Apr 2020 15:28:59 -0700 IronPort-SDR: ZjSqQccUSqImH6e00wteNigxxx0JFhrPxvTy3VZpJt33qVg7jnTKeNHO8OTHQmV2oSrOUNTQ2H cwB9W+OMjnyw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.72,352,1580803200"; d="scan'208";a="269219159" Received: from adixit-mobl.amr.corp.intel.com (HELO adixit-arch.intel.com) ([10.212.100.187]) by orsmga002.jf.intel.com with ESMTP; 06 Apr 2020 15:28:58 -0700 Date: Mon, 06 Apr 2020 15:28:58 -0700 Message-ID: <87v9mctfit.wl-ashutosh.dixit@intel.com> From: "Dixit, Ashutosh" To: "Michael S. Tsirkin" Cc: , Sudeep Dutt , Arnd Bergmann , Greg Kroah-Hartman Subject: Re: [PATCH v6 10/12] vop: switch to virtio_legacy_init/size In-Reply-To: <20200406222507.281867-11-mst@redhat.com> References: <20200406222507.281867-1-mst@redhat.com> <20200406222507.281867-11-mst@redhat.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (=?ISO-8859-4?Q?Goj=F2?=) APEL/10.8 EasyPG/1.0.0 Emacs/26 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 06 Apr 2020 15:26:48 -0700, Michael S. Tsirkin wrote: > > These are used for legacy ring format, switch to APIs that make this > explicit. > > Signed-off-by: Michael S. Tsirkin > --- > > maintainers, pls ack merging this through virtio tree due to dependency > on previous patches in the patchset. Acked-by: Ashutosh Dixit > > drivers/misc/mic/vop/vop_main.c | 5 +++-- > drivers/misc/mic/vop/vop_vringh.c | 8 +++++--- > 2 files changed, 8 insertions(+), 5 deletions(-) > > diff --git a/drivers/misc/mic/vop/vop_main.c b/drivers/misc/mic/vop/vop_main.c > index 85942f6717c5..829b3b14b1d7 100644 > --- a/drivers/misc/mic/vop/vop_main.c > +++ b/drivers/misc/mic/vop/vop_main.c > @@ -283,7 +283,7 @@ static struct virtqueue *vop_new_virtqueue(unsigned int index, > bool weak_barriers = false; > struct vring vring; > > - vring_init(&vring, num, pages, MIC_VIRTIO_RING_ALIGN); > + vring_legacy_init(&vring, num, pages, MIC_VIRTIO_RING_ALIGN); > vring.used = used; > > return __vring_new_virtqueue(index, vring, vdev, weak_barriers, context, > @@ -320,7 +320,8 @@ static struct virtqueue *vop_find_vq(struct virtio_device *dev, > /* First assign the vring's allocated in host memory */ > vqconfig = _vop_vq_config(vdev->desc) + index; > memcpy_fromio(&config, vqconfig, sizeof(config)); > - _vr_size = vring_size(le16_to_cpu(config.num), MIC_VIRTIO_RING_ALIGN); > + _vr_size = vring_legacy_size(le16_to_cpu(config.num), > + MIC_VIRTIO_RING_ALIGN); > vr_size = PAGE_ALIGN(_vr_size + sizeof(struct _mic_vring_info)); > va = vpdev->hw_ops->remap(vpdev, le64_to_cpu(config.address), vr_size); > if (!va) > diff --git a/drivers/misc/mic/vop/vop_vringh.c b/drivers/misc/mic/vop/vop_vringh.c > index 30eac172f017..0535c02d637d 100644 > --- a/drivers/misc/mic/vop/vop_vringh.c > +++ b/drivers/misc/mic/vop/vop_vringh.c > @@ -296,7 +296,8 @@ static int vop_virtio_add_device(struct vop_vdev *vdev, > > num = le16_to_cpu(vqconfig[i].num); > mutex_init(&vvr->vr_mutex); > - vr_size = PAGE_ALIGN(vring_size(num, MIC_VIRTIO_RING_ALIGN) + > + vr_size = PAGE_ALIGN(vring_legacy_size(num, > + MIC_VIRTIO_RING_ALIGN) + > sizeof(struct _mic_vring_info)); > vr->va = (void *) > __get_free_pages(GFP_KERNEL | __GFP_ZERO, > @@ -308,7 +309,8 @@ static int vop_virtio_add_device(struct vop_vdev *vdev, > goto err; > } > vr->len = vr_size; > - vr->info = vr->va + vring_size(num, MIC_VIRTIO_RING_ALIGN); > + vr->info = vr->va + vring_legacy_size(num, > + MIC_VIRTIO_RING_ALIGN); > vr->info->magic = cpu_to_le32(MIC_MAGIC + vdev->virtio_id + i); > vr_addr = dma_map_single(&vpdev->dev, vr->va, vr_size, > DMA_BIDIRECTIONAL); > @@ -321,7 +323,7 @@ static int vop_virtio_add_device(struct vop_vdev *vdev, > } > vqconfig[i].address = cpu_to_le64(vr_addr); > > - vring_init(&vr->vr, num, vr->va, MIC_VIRTIO_RING_ALIGN); > + vring_legacy_init(&vr->vr, num, vr->va, MIC_VIRTIO_RING_ALIGN); > ret = vringh_init_kern(&vvr->vrh, > *(u32 *)mic_vq_features(vdev->dd), > num, false, vr->vr.desc, vr->vr.avail, > -- > MST >