From: "Michael S. Tsirkin" <mst@redhat.com>
To: Parav Pandit <parav@nvidia.com>
Cc: "virtio@lists.oasis-open.org" <virtio@lists.oasis-open.org>,
"virtio-comment@lists.oasis-open.org"
<virtio-comment@lists.oasis-open.org>,
Shahaf Shuler <shahafs@nvidia.com>,
Xuan Zhuo <xuanzhuo@linux.alibaba.com>,
"hengqi@linux.alibaba.com" <hengqi@linux.alibaba.com>,
Zhu Lingshan <lingshan.zhu@intel.com>
Subject: [virtio-comment] Re: proposal: use admin command (and aq) of the device to query config space
Date: Wed, 2 Aug 2023 00:20:06 -0400 [thread overview]
Message-ID: <20230802000955-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <PH0PR12MB54818D33A150A01DACF3BF74DC0AA@PH0PR12MB5481.namprd12.prod.outlook.com>
On Tue, Aug 01, 2023 at 07:09:14AM +0000, Parav Pandit wrote:
> One line proposal:
> Let's use new admin command and admin q for all device types to query device config space for new fields. (always).
>
> Details below.
>
> Query of device capabilities and configuration using DMA interface.
> Need:
> Currently device configuration space is exposed as read only registers. It is growing rapidly.
> Some devices may be even multi-functionality device in coming future such as net + clock + rdma device.
> For a PCI transport implementing such ever-growing capabilities, configuration is burdensome as plain registers.
> Hence, it is required for the driver to query capabilities and configuration using a DMA interface.
>
> Interface requirements:
> 1. Maintain backward compatibility for existing defined configuration fields to stay as registers.
This is both too specific and too vague. I think you mean "device
should be able to optionally support both config access over DMA and support
existing transitional and non-transitional virtio pci drivers".
> 2. Any new field added must be accessed via DMA interface, regardless of device implementation (hw/sw etc).
> Results in single driver code regardless of device implementation.
> 3. A device must be able to choose, starting from which field driver must query
> such configuration via DMA interface. This field offset must be greater than currently defined configuration field.
2 and 3 look like implementation more than like a requirement.
Try to think what your actual requirement is.
> 4. Any driver to device query operation must not be mandated to be
> mediated by the owner device for PCI VFs or SIOV or SF devices. Driver must be able to
> communicate query capabilities and configuration fields directly to
> the device regardless of device type being PCI PF, VF, SF/SIOV device uniformly.
I don't really know what does it mean to communicate directly with SIOV device.
neither do I know query is and what capabilities are.
> 5. When having multi-functionality device in future, it is desired to not always
> query all the configuration but may be able to query per-functionality configurations.
> For example, query only steering capabilities, query only rdma capabilities or query only clock capabilities.
I don't know what query is and what capabilities are. Do you mean
"access part of config space"?
> 6. The driver should be able to query config/capabilities without
> polling for the DMA completion, in other words, the driver should be able to get
> notification from the device when DMA command completes.
> 7. The driver should be able to utilize existing interrupt vector and/or
> virtqueue for query and set operation without demanding
> additional interrupt vector whenever possible.
additional over what? existing where?
>
> There are multiple options for DMA interface.
> Some of these options are listed below that we would like to consider fulfilling above requirements.
Cc: Zhu Lingshan <lingshan.zhu@intel.com>
Zhu Lingshan are you still interested in a transport for SIOV (what was
called transport vq)? Clearly SIOV needs this as part of the transport.
--
MST
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/
next prev parent reply other threads:[~2023-08-02 4:20 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-01 7:09 [virtio-comment] proposal: use admin command (and aq) of the device to query config space Parav Pandit
2023-08-02 4:20 ` Michael S. Tsirkin [this message]
2023-08-02 4:33 ` [virtio-comment] " Parav Pandit
2023-08-02 8:45 ` [virtio-comment] " Zhu, Lingshan
2023-08-02 8:59 ` [virtio-comment] " Parav Pandit
2023-08-02 9:40 ` [virtio-comment] " Zhu, Lingshan
2023-08-02 10:00 ` [virtio-comment] " Parav Pandit
2023-08-02 11:35 ` [virtio-comment] " Michael S. Tsirkin
2023-08-02 11:51 ` [virtio-comment] " Parav Pandit
2023-08-02 11:53 ` [virtio-comment] " Michael S. Tsirkin
2023-08-02 11:58 ` [virtio-comment] " Parav Pandit
2023-08-02 12:10 ` [virtio-comment] " Michael S. Tsirkin
2023-08-02 8:53 ` [virtio-comment] " Jason Wang
2023-08-02 9:07 ` Parav Pandit
2023-08-02 9:32 ` [virtio-comment] Re: [virtio] " Jason Wang
2023-08-02 9:57 ` [virtio-comment] " Parav Pandit
2023-08-02 11:25 ` [virtio-comment] " Michael S. Tsirkin
2023-08-02 11:29 ` [virtio-comment] " Parav Pandit
2023-08-02 11:39 ` [virtio-comment] " Michael S. Tsirkin
2023-08-02 11:44 ` Parav Pandit
2023-08-02 11:50 ` Michael S. Tsirkin
2023-08-02 11:56 ` Parav Pandit
2023-08-02 12:09 ` Michael S. Tsirkin
2023-08-03 2:55 ` Jason Wang
2023-08-03 10:13 ` [virtio-comment] " Parav Pandit
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=20230802000955-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=hengqi@linux.alibaba.com \
--cc=lingshan.zhu@intel.com \
--cc=parav@nvidia.com \
--cc=shahafs@nvidia.com \
--cc=virtio-comment@lists.oasis-open.org \
--cc=virtio@lists.oasis-open.org \
--cc=xuanzhuo@linux.alibaba.com \
/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.