All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Zhu, Lingshan" <lingshan.zhu@intel.com>
Cc: Parav Pandit <parav@nvidia.com>,
	"jasowang@redhat.com" <jasowang@redhat.com>,
	"eperezma@redhat.com" <eperezma@redhat.com>,
	"cohuck@redhat.com" <cohuck@redhat.com>,
	"stefanha@redhat.com" <stefanha@redhat.com>,
	"virtio-comment@lists.oasis-open.org"
	<virtio-comment@lists.oasis-open.org>
Subject: Re: [virtio-comment] Re: [PATCH V2 4/6] virtio-pci: implement VIRTIO_F_QUEUE_STATE
Date: Thu, 9 Nov 2023 05:02:29 -0500	[thread overview]
Message-ID: <20231109050151-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <b3ac6cd9-a04e-4cf4-9fce-a9d687191522@intel.com>

On Thu, Nov 09, 2023 at 06:00:27PM +0800, Zhu, Lingshan wrote:
> 
> 
> On 11/9/2023 1:44 AM, Michael S. Tsirkin wrote:
> > On Tue, Nov 07, 2023 at 05:31:38PM +0800, Zhu, Lingshan wrote:
> > > 
> > > On 11/6/2023 6:52 PM, Parav Pandit wrote:
> > > > > From: Zhu, Lingshan <lingshan.zhu@intel.com>
> > > > > Sent: Monday, November 6, 2023 2:57 PM
> > > > > 
> > > > > On 11/6/2023 12:12 PM, Parav Pandit wrote:
> > > > > > > From: Zhu, Lingshan <lingshan.zhu@intel.com>
> > > > > > > Sent: Monday, November 6, 2023 9:01 AM
> > > > > > > 
> > > > > > > On 11/3/2023 11:50 PM, Parav Pandit wrote:
> > > > > > > > > From: virtio-comment@lists.oasis-open.org
> > > > > > > > > <virtio-comment@lists.oasis- open.org> On Behalf Of Zhu, Lingshan
> > > > > > > > > Sent: Friday, November 3, 2023 8:27 PM
> > > > > > > > > 
> > > > > > > > > On 11/3/2023 7:35 PM, Parav Pandit wrote:
> > > > > > > > > > > From: Zhu Lingshan <lingshan.zhu@intel.com>
> > > > > > > > > > > Sent: Friday, November 3, 2023 4:05 PM
> > > > > > > > > > > 
> > > > > > > > > > > This patch adds two new le16 fields to common configuration
> > > > > > > > > > > structure to support VIRTIO_F_QUEUE_STATE in PCI transport layer.
> > > > > > > > > > > 
> > > > > > > > > > > Signed-off-by: Zhu Lingshan <lingshan.zhu@intel.com>
> > > > > > > > > > > ---
> > > > > > > > > > >       transport-pci.tex | 18 ++++++++++++++++++
> > > > > > > > > > >       1 file changed, 18 insertions(+)
> > > > > > > > > > > 
> > > > > > > > > > > diff --git a/transport-pci.tex b/transport-pci.tex index
> > > > > > > > > > > a5c6719..3161519 100644
> > > > > > > > > > > --- a/transport-pci.tex
> > > > > > > > > > > +++ b/transport-pci.tex
> > > > > > > > > > > @@ -325,6 +325,10 @@ \subsubsection{Common configuration
> > > > > > > structure
> > > > > > > > > > > layout}\label{sec:Virtio Transport
> > > > > > > > > > >               /* About the administration virtqueue. */
> > > > > > > > > > >               le16 admin_queue_index;         /* read-only for driver */
> > > > > > > > > > >               le16 admin_queue_num;         /* read-only for driver */
> > > > > > > > > > > +
> > > > > > > > > > > +	/* Virtqueue state */
> > > > > > > > > > > +        le16 queue_avail_state;         /* read-write */
> > > > > > > > > > > +        le16 queue_used_state;          /* read-write */
> > > > > > > > > > This tiny interface for 128 virtio net queues through register
> > > > > > > > > > read writes, does
> > > > > > > > > not work effectively.
> > > > > > > > > > There are inflight out of order descriptors for block also.
> > > > > > > > > > Hence toy registers like this do not work.
> > > > > > > > > Do you know there is a queue_select? Why this does not work? Do you
> > > > > > > > > know how other queue related fields work?
> > > > > > > > :)
> > > > > > > > Yes. If you notice queue_reset related critical spec bug fix was
> > > > > > > > done when it
> > > > > > > was introduced so that live migration can _actually_ work.
> > > > > > > > When queue_select is done for 128 queues serially, it take a lot of
> > > > > > > > time to
> > > > > > > read those slow register interface for this + inflight descriptors + more.
> > > > > > > interesting, virtio work in this pattern for many years, right?
> > > > > > All these years 400Gbps and 800Gbps virtio was not present, number of
> > > > > queues were not in hw.
> > > > > The registers are control path in config space, how 400G or 800G affect??
> > > > Because those are the one in practice requires large number of VQs.
> > > > 
> > > > You are asking per VQ register commands to modify things dynamically via this one vq at a time, serializing all the operations.
> > > > It does not scale well with high q count.
> > > This is not dynamically, it only happens when SUSPEND and RESUME.
> > > This is the same mechanism how virtio initialize a virtqueue, working for
> > > many years.
> > I wish we just had a transport vq already. That's the way to solve this
> > not fighting individual bits.
> Yeah, I agree, transport is a queued task(sent out V4 months ago...), one by
> one... hard and tough work...

Frankly I think that should take precedence, then Parav will not get
annoyed each time add a couple of registers.

> > > > > See the virtio common cfg, you will find the max number of vqs is there,
> > > > > num_queues.
> > > > :)
> > > > Sure. those values at high q count affects.
> > > the driver need to initialize them anyway.
> > > > > > Device didn’t support LM.
> > > > > > Many limitations existed all these years and TC is improving and expanding
> > > > > them.
> > > > > > So all these years do not matter.
> > > > > Not sure what are you talking about, haven't we initialize the device and vqs in
> > > > > config space for years?????? What's wrong with this mechanism?
> > > > > Are you questioning virito-pci fundamentals???
> > > > Don’t point to in-efficient past to establish similar in-efficient future.
> > > interesting, you know this is a one-time thing, right?
> > > and you are aware of this has been there for years.
> > > > > > > > > Like how to set a queue size and enable it?
> > > > > > > > Those are meant to be used before DRIVER_OK stage as they are init
> > > > > > > > time
> > > > > > > registers.
> > > > > > > > Not to keep abusing them..
> > > > > > > don't you need to set queue_size at the destination side?
> > > > > > No.
> > > > > > But the src/dst does not matter.
> > > > > > Queue_size to be set before DRIVER_OK like rest of the registers, as all
> > > > > queues must be created before the driver_ok phase.
> > > > > > Queue_reset was last moment exception.
> > > > > create a queue? Nvidia specific?
> > > > > 
> > > > Huh. No.
> > > > Do git log and realize what happened with queue_reset.
> > > You didn't answer the question, does the spec even has defined "create a
> > > vq"?
> > > > > For standard virtio, you need to read the number of enabled vqs at the source
> > > > > side, then enable them at the dst, so queue_size matters, not to create.
> > > > All that happens in the pre-copy phase.
> > > Yes and how your answer related to this discussion?


This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.

In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.

Subscribe: virtio-comment-subscribe@lists.oasis-open.org
Unsubscribe: virtio-comment-unsubscribe@lists.oasis-open.org
List help: virtio-comment-help@lists.oasis-open.org
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/


  reply	other threads:[~2023-11-09 10:02 UTC|newest]

Thread overview: 186+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-03 10:34 [virtio-comment] [PATCH V2 0/6] introduce basic facilities for virito live migration Zhu Lingshan
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 1/6] virtio: introduce virtqueue state Zhu Lingshan
2023-11-03 11:35   ` [virtio-comment] " Parav Pandit
2023-11-03 14:39     ` [virtio-comment] " Zhu, Lingshan
2023-11-03 11:52   ` Michael S. Tsirkin
2023-11-03 14:49     ` Zhu, Lingshan
2023-11-06  9:35       ` Michael S. Tsirkin
2023-11-06  9:42         ` Zhu, Lingshan
2023-11-06  9:45           ` Michael S. Tsirkin
2023-11-07  8:11             ` Zhu, Lingshan
2023-11-07  8:22               ` Michael S. Tsirkin
2023-11-08  4:08                 ` Zhu, Lingshan
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 2/6] virtio: introduce SUSPEND bit in device status Zhu Lingshan
2023-11-03 11:35   ` [virtio-comment] " Parav Pandit
2023-11-03 14:55     ` [virtio-comment] " Zhu, Lingshan
2023-11-03 15:54       ` [virtio-comment] " Parav Pandit
2023-11-06  3:29         ` [virtio-comment] " Zhu, Lingshan
2023-11-06  4:07           ` [virtio-comment] " Parav Pandit
2023-11-06  9:21             ` Zhu, Lingshan
2023-11-06 10:52               ` Parav Pandit
2023-11-07  8:21                 ` Zhu, Lingshan
2023-11-07  8:33                   ` Michael S. Tsirkin
2023-11-07  9:24                     ` Zhu, Lingshan
2023-11-08  7:42                       ` Michael S. Tsirkin
2023-11-06  9:43   ` [virtio-comment] " Michael S. Tsirkin
2023-11-07  9:09     ` Zhu, Lingshan
2023-11-08 17:55       ` Michael S. Tsirkin
2023-11-09  9:55         ` Zhu, Lingshan
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 3/6] virtio: dont reset vqs when SUSPEND Zhu Lingshan
2023-11-06  9:49   ` [virtio-comment] " Michael S. Tsirkin
2023-11-07  9:27     ` Zhu, Lingshan
2023-11-08 17:46       ` Michael S. Tsirkin
2023-11-09  9:58         ` Zhu, Lingshan
2023-11-09 10:15           ` [virtio-comment] " Parav Pandit
2023-11-10  6:22             ` [virtio-comment] " Zhu, Lingshan
2023-11-10  6:31               ` [virtio-comment] " Parav Pandit
2023-11-13  9:23                 ` Zhu, Lingshan
2023-11-15 17:35                   ` Parav Pandit
2023-11-16 10:09                     ` Zhu, Lingshan
2023-11-16 10:19                       ` Parav Pandit
2023-11-16 12:09                       ` Michael S. Tsirkin
2023-11-17 10:13                         ` Zhu, Lingshan
2023-11-17 11:04                           ` Michael S. Tsirkin
2023-11-22  1:41                             ` Zhu, Lingshan
2023-11-22  7:30                               ` Michael S. Tsirkin
2023-11-13  3:34             ` [virtio-comment] " Jason Wang
2023-11-15 17:39               ` [virtio-comment] " Parav Pandit
2023-11-16  4:19                 ` Jason Wang
2023-11-16  5:27                   ` Parav Pandit
2023-11-16 10:12                     ` Zhu, Lingshan
2023-11-21  7:33                     ` Jason Wang
2023-11-21 16:32                       ` Parav Pandit
2023-11-22  5:28                         ` Jason Wang
2023-11-22  6:11                           ` Parav Pandit
2023-11-24  3:35                             ` Jason Wang
2023-11-24  9:04                               ` Michael S. Tsirkin
2023-11-24 11:50                                 ` Jason Wang
2023-11-24 12:17                                   ` Michael S. Tsirkin
2023-11-24 13:01                                     ` Jason Wang
2023-11-24 14:45                                       ` Michael S. Tsirkin
2023-11-27  6:38                                         ` Jason Wang
2023-11-27  8:27                                           ` Michael S. Tsirkin
2023-11-27  9:54                                         ` Zhu, Lingshan
2023-11-21 21:18                       ` Michael S. Tsirkin
2023-11-22  1:51                         ` Zhu, Lingshan
2023-11-22  6:47                           ` Parav Pandit
2023-11-22 10:04                             ` Zhu, Lingshan
2023-11-22 10:14                               ` Parav Pandit
2023-11-22  6:49                           ` Michael S. Tsirkin
2023-11-22 10:03                             ` Zhu, Lingshan
2023-11-22 13:37                               ` Michael S. Tsirkin
2023-11-22  5:28                         ` Jason Wang
2023-11-22  6:32                           ` Parav Pandit
2023-11-24  3:25                             ` Jason Wang
2023-11-24  6:20                               ` Michael S. Tsirkin
2023-11-24  6:28                                 ` Jason Wang
2023-11-24  6:43                                   ` Zhu, Lingshan
2023-11-24  8:50                                   ` Michael S. Tsirkin
2023-11-24 11:51                                     ` Jason Wang
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 4/6] virtio-pci: implement VIRTIO_F_QUEUE_STATE Zhu Lingshan
2023-11-03 11:35   ` [virtio-comment] " Parav Pandit
2023-11-03 14:57     ` [virtio-comment] " Zhu, Lingshan
2023-11-03 15:50       ` Parav Pandit
2023-11-06  3:31         ` Zhu, Lingshan
2023-11-06  4:12           ` Parav Pandit
2023-11-06  9:27             ` Zhu, Lingshan
2023-11-06 10:52               ` Parav Pandit
2023-11-07  9:31                 ` Zhu, Lingshan
2023-11-08 17:44                   ` Michael S. Tsirkin
2023-11-09 10:00                     ` Zhu, Lingshan
2023-11-09 10:02                       ` Michael S. Tsirkin [this message]
2023-11-10  6:52                         ` Zhu, Lingshan
2023-11-10 12:31                           ` Parav Pandit
2023-11-13  3:46                             ` Jason Wang
2023-11-13  9:23                               ` Zhu, Lingshan
2023-11-15 17:36                               ` Parav Pandit
2023-11-09  6:28                   ` Parav Pandit
2023-11-09  8:41                     ` Michael S. Tsirkin
2023-11-09  9:10                       ` Parav Pandit
2023-11-09  9:53                         ` Michael S. Tsirkin
2023-11-09 10:11                           ` Parav Pandit
2023-11-09 10:09                     ` Zhu, Lingshan
2023-11-09 10:25                       ` Parav Pandit
2023-11-10  7:52                         ` Zhu, Lingshan
2023-11-10 12:31                           ` Parav Pandit
2023-11-13  9:25                             ` Zhu, Lingshan
2023-11-15 17:35                               ` Parav Pandit
2023-11-16 10:14                                 ` Zhu, Lingshan
2023-11-16 10:21                                   ` Parav Pandit
2023-11-17 10:02                                     ` Zhu, Lingshan
2023-11-17 10:06                                       ` Parav Pandit
2023-11-21  4:30                                         ` Jason Wang
2023-11-21 16:26                                           ` Parav Pandit
2023-11-22  4:15                                             ` Jason Wang
2023-11-22  7:15                                               ` Michael S. Tsirkin
2023-11-22  7:33                                                 ` Parav Pandit
2023-11-22 14:43                                                   ` Michael S. Tsirkin
2023-11-17 10:45                                       ` Michael S. Tsirkin
2023-11-22  1:32                                         ` Zhu, Lingshan
2023-11-22  6:53                                           ` Michael S. Tsirkin
2023-11-08 17:56   ` Michael S. Tsirkin
2023-11-13  9:29     ` Zhu, Lingshan
2023-11-13 10:10       ` Michael S. Tsirkin
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 5/6] virtio: introduce dirty page tracking facility Zhu Lingshan
2023-11-03 11:35   ` [virtio-comment] " Parav Pandit
2023-11-03 14:11     ` [virtio-comment] " Zhu, Lingshan
2023-11-03 10:34 ` [virtio-comment] [PATCH V2 6/6] virtio-pci: implement dirty page tracking Zhu Lingshan
2023-11-03 10:46   ` [virtio-comment] " Michael S. Tsirkin
2023-11-03 14:21     ` Zhu, Lingshan
2023-11-06  9:16       ` Zhu, Lingshan
2023-11-06 10:15         ` Michael S. Tsirkin
2023-11-07  9:43           ` Zhu, Lingshan
2023-11-07 10:43             ` Michael S. Tsirkin
2023-11-03 10:50   ` Michael S. Tsirkin
2023-11-03 11:35     ` [virtio-comment] " Parav Pandit
2023-11-03 15:02       ` [virtio-comment] " Zhu, Lingshan
2023-11-03 15:47         ` [virtio-comment] " Parav Pandit
2023-11-05 16:12           ` [virtio-comment] " Michael S. Tsirkin
2023-11-06  3:58             ` Zhu, Lingshan
2023-11-06 10:33               ` Michael S. Tsirkin
2023-11-07  9:48                 ` Zhu, Lingshan
2023-11-06  4:03             ` [virtio-comment] " Parav Pandit
2023-11-07 11:13               ` [virtio-comment] " Michael S. Tsirkin
2023-11-08  9:29                 ` Zhu, Lingshan
2023-11-08 17:18                   ` Michael S. Tsirkin
2023-11-09 10:29                     ` Zhu, Lingshan
2023-11-09 10:41                       ` Michael S. Tsirkin
2023-11-10  7:24                         ` Zhu, Lingshan
2023-11-06  3:52           ` Zhu, Lingshan
2023-11-06  4:34             ` [virtio-comment] " Parav Pandit
2023-11-06  9:34               ` [virtio-comment] " Zhu, Lingshan
2023-11-06 10:52                 ` [virtio-comment] " Parav Pandit
2023-11-06 11:05                   ` [virtio-comment] " Michael S. Tsirkin
2023-11-06 11:07                     ` [virtio-comment] " Parav Pandit
2023-11-06 11:21                       ` [virtio-comment] " Michael S. Tsirkin
2023-11-07  9:52                   ` Zhu, Lingshan
2023-11-07 11:33                     ` Michael S. Tsirkin
2023-11-08  9:30                       ` Zhu, Lingshan
2023-11-08 17:19                         ` Michael S. Tsirkin
2023-11-09 10:34                           ` Zhu, Lingshan
2023-11-06 11:13                 ` [virtio-comment] " Parav Pandit
2023-11-07 10:01                   ` [virtio-comment] " Zhu, Lingshan
2023-11-07 10:25                     ` Michael S. Tsirkin
2023-11-07 11:12                       ` [virtio-comment] " Parav Pandit
2023-11-07 11:24                         ` Parav Pandit
2023-11-08  7:11                           ` [virtio-comment] " Jason Wang
2023-11-08  7:16                             ` [virtio-comment] " Parav Pandit
2023-11-07 11:31                         ` [virtio-comment] " Michael S. Tsirkin
2023-11-08  9:36                       ` Zhu, Lingshan
2023-11-07 12:00                     ` Michael S. Tsirkin
2023-11-06 10:29               ` Michael S. Tsirkin
2023-11-06 11:21                 ` [virtio-comment] " Parav Pandit
2023-11-06 11:27                   ` [virtio-comment] " Michael S. Tsirkin
2023-11-06 11:31                     ` [virtio-comment] " Parav Pandit
2023-11-07 10:02                   ` [virtio-comment] " Zhu, Lingshan
2023-11-07 11:36                     ` Michael S. Tsirkin
2023-11-05 16:20       ` Michael S. Tsirkin
2023-11-06  3:51         ` [virtio-comment] " Parav Pandit
2023-11-03 14:32     ` [virtio-comment] " Zhu, Lingshan
2023-11-05 16:16       ` Michael S. Tsirkin
2023-11-06  4:06         ` Zhu, Lingshan
2023-11-06 10:22           ` Michael S. Tsirkin
2023-11-07 10:44             ` Zhu, Lingshan
2023-11-07 11:29               ` Michael S. Tsirkin
2023-11-07  8:01 ` [virtio-comment] Re: [PATCH V2 0/6] introduce basic facilities for virito live migration Michael S. Tsirkin
2023-11-08 10:19   ` Zhu, Lingshan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231109050151-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=cohuck@redhat.com \
    --cc=eperezma@redhat.com \
    --cc=jasowang@redhat.com \
    --cc=lingshan.zhu@intel.com \
    --cc=parav@nvidia.com \
    --cc=stefanha@redhat.com \
    --cc=virtio-comment@lists.oasis-open.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.