From nobody Sun Feb 8 10:17:37 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 16359339550042.183085271371965; Wed, 3 Nov 2021 03:05:55 -0700 (PDT) Received: from localhost ([::1]:44376 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1miD9W-0005gi-0b for importer@patchew.org; Wed, 03 Nov 2021 06:05:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35182) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1miD5f-0007uL-1b for qemu-devel@nongnu.org; Wed, 03 Nov 2021 06:01:55 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:27745) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1miD5Z-0005vp-E6 for qemu-devel@nongnu.org; Wed, 03 Nov 2021 06:01:54 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-447-pjRVTiTiOeaBSJzDI5XAWA-1; Wed, 03 Nov 2021 06:01:45 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 0884D100A640 for ; Wed, 3 Nov 2021 10:01:45 +0000 (UTC) Received: from eperezma.remote.csb (unknown [10.39.192.133]) by smtp.corp.redhat.com (Postfix) with ESMTP id BA9305D9DE; Wed, 3 Nov 2021 10:01:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1635933707; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=zdn8h+Lyaws9/stSltRBuoMx84Im6nUPH5OEi4FOOE0=; b=GtEdNT3RgaGAMdEknDjQFn4h+/Vlot+Zm+iYssxS9JXXGmKOknnq1GvRgmQ+Ufe26qtjb4 +wzOuiTO1Pb+3Uz8jKScj9+F+WQCHewo37z/IniV+yjYORlXy/B12oqG1jOzODTEYPtNVC YjMkRAgI2Ncg6LDPOz1X3KA25jgB7PM= X-MC-Unique: pjRVTiTiOeaBSJzDI5XAWA-1 From: =?UTF-8?q?Eugenio=20P=C3=A9rez?= To: qemu-devel@nongnu.org Subject: [PATCH v3 1/2] vhost: Rename last_index to last_vq_index Date: Wed, 3 Nov 2021 11:01:30 +0100 Message-Id: <20211103100131.1983272-2-eperezma@redhat.com> In-Reply-To: <20211103100131.1983272-1-eperezma@redhat.com> References: <20211103100131.1983272-1-eperezma@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=eperezma@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=eperezma@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.702, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Jason Wang , "Michael S. Tsirkin" , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1635933955928100001 The doc of this field points out that last_index is the last vq index. Since last_index can cause confusion if seen out of context, renaming to last_vq_index, aligning with vq_index. Signed-off-by: Eugenio P=C3=A9rez Acked-by: Jason Wang Reviewed-by: Juan Quintela --- include/hw/virtio/vhost.h | 2 +- hw/net/vhost_net.c | 4 ++-- hw/virtio/vhost-vdpa.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/include/hw/virtio/vhost.h b/include/hw/virtio/vhost.h index 3fa0b554ef..8a79833b54 100644 --- a/include/hw/virtio/vhost.h +++ b/include/hw/virtio/vhost.h @@ -75,7 +75,7 @@ struct vhost_dev { /* the first virtqueue which would be used by this vhost dev */ int vq_index; /* the last vq index for the virtio device (not vhost) */ - int last_index; + int last_vq_index; /* if non-zero, minimum required value for max_queues */ int num_queues; uint64_t features; diff --git a/hw/net/vhost_net.c b/hw/net/vhost_net.c index 0d888f29a6..081946dc93 100644 --- a/hw/net/vhost_net.c +++ b/hw/net/vhost_net.c @@ -232,10 +232,10 @@ fail: } =20 static void vhost_net_set_vq_index(struct vhost_net *net, int vq_index, - int last_index) + int last_vq_index) { net->dev.vq_index =3D vq_index; - net->dev.last_index =3D last_index; + net->dev.last_vq_index =3D last_vq_index; } =20 static int vhost_net_start_one(struct vhost_net *net, diff --git a/hw/virtio/vhost-vdpa.c b/hw/virtio/vhost-vdpa.c index 12661fd5b1..a1831b27ca 100644 --- a/hw/virtio/vhost-vdpa.c +++ b/hw/virtio/vhost-vdpa.c @@ -632,7 +632,7 @@ static int vhost_vdpa_dev_start(struct vhost_dev *dev, = bool started) vhost_vdpa_host_notifiers_uninit(dev, dev->nvqs); } =20 - if (dev->vq_index + dev->nvqs !=3D dev->last_index) { + if (dev->vq_index + dev->nvqs !=3D dev->last_vq_index) { return 0; } =20 --=20 2.27.0 From nobody Sun Feb 8 10:17:37 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1635933843247906.8180398622335; Wed, 3 Nov 2021 03:04:03 -0700 (PDT) Received: from localhost ([::1]:38946 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1miD7i-00020D-6Z for importer@patchew.org; Wed, 03 Nov 2021 06:04:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35214) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1miD5g-0007vR-1B for qemu-devel@nongnu.org; Wed, 03 Nov 2021 06:01:57 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:54644) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1miD5Z-00060D-Ef for qemu-devel@nongnu.org; Wed, 03 Nov 2021 06:01:55 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-404-l7P4oEDgNWGSTPRXIvraNA-1; Wed, 03 Nov 2021 06:01:47 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 9D9191927801 for ; Wed, 3 Nov 2021 10:01:46 +0000 (UTC) Received: from eperezma.remote.csb (unknown [10.39.192.133]) by smtp.corp.redhat.com (Postfix) with ESMTP id 6081618A68; Wed, 3 Nov 2021 10:01:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1635933708; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ud9SjcWNWH6zG/0jluD3BZyRdqJLHQZV3VmXL4K65rI=; b=YFKwJUKOacngUU3y8fCJ+bJwzX/TbI25WpslKscWy7UlL80mNbPneUG4cpe4kysowRSt9g Eih+wCzGJzi0iymgMExgJ6pZzbgq29N4sBr6J63R7OleWUcRTrIvvMvDCoXYqOGPLrS+9K nZMJTo8Ibq0YBkXvN9WK/ylk8WOCSbk= X-MC-Unique: l7P4oEDgNWGSTPRXIvraNA-1 From: =?UTF-8?q?Eugenio=20P=C3=A9rez?= To: qemu-devel@nongnu.org Subject: [PATCH v3 2/2] vhost: Fix last vq queue index of devices with no cvq Date: Wed, 3 Nov 2021 11:01:31 +0100 Message-Id: <20211103100131.1983272-3-eperezma@redhat.com> In-Reply-To: <20211103100131.1983272-1-eperezma@redhat.com> References: <20211103100131.1983272-1-eperezma@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=eperezma@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=eperezma@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.702, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Jason Wang , "Michael S. Tsirkin" , Juan Quintela Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZM-MESSAGEID: 1635933844659100002 The -1 assumes that last index counts all vhost device models as having two queues, but they count only the ones that models the data queues. Because of that, the right change in last_index is to actually add the cvq, not to remove the missing one. This is not a problem to vhost-net, but it is to vhost-vdpa, which device model trust to reach the last index to finish starting the device. Tested with vp_vdpa with host's vhost=3Don and vhost=3Doff, with ctrl_vq=3D= on and ctrl_vq=3Doff. Fixes: 049eb15b5fc9 ("vhost: record the last virtqueue index for the virtio= device") Signed-off-by: Eugenio P=C3=A9rez Reviewed-by: Juan Quintela --- hw/net/vhost_net.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/net/vhost_net.c b/hw/net/vhost_net.c index 081946dc93..fe2b8a2b83 100644 --- a/hw/net/vhost_net.c +++ b/hw/net/vhost_net.c @@ -329,8 +329,8 @@ int vhost_net_start(VirtIODevice *dev, NetClientState *= ncs, int r, e, i, last_index =3D data_queue_pairs * 2; NetClientState *peer; =20 - if (!cvq) { - last_index -=3D 1; + if (cvq) { + last_index +=3D 1; } =20 if (!k->set_guest_notifiers) { --=20 2.27.0