[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <dc7eb252-5223-4475-9607-9cf1fc81b486@intel.com>
Date: Thu, 11 Apr 2024 18:03:56 -0500
From: "Samudrala, Sridhar" <sridhar.samudrala@...el.com>
To: Parav Pandit <parav@...dia.com>, "netdev@...r.kernel.org"
<netdev@...r.kernel.org>, "dsahern@...nel.org" <dsahern@...nel.org>,
"stephen@...workplumber.org" <stephen@...workplumber.org>
CC: Jiri Pirko <jiri@...dia.com>, Shay Drori <shayd@...dia.com>
Subject: Re: [PATCH v2 0/2] devlink: Support setting max_io_eqs
On 4/10/2024 9:32 PM, Parav Pandit wrote:
> Hi Sridhar,
>
>> From: Samudrala, Sridhar <sridhar.samudrala@...el.com>
>> Sent: Thursday, April 11, 2024 4:53 AM
>>
>>
>> On 4/10/2024 6:58 AM, Parav Pandit wrote:
>>> Devices send event notifications for the IO queues, such as tx and rx
>>> queues, through event queues.
>>>
>>> Enable a privileged owner, such as a hypervisor PF, to set the number
>>> of IO event queues for the VF and SF during the provisioning stage.
>>
>> How do you provision tx/rx queues for VFs & SFs?
>> Don't you need similar mechanism to setup max tx/rx queues too?
>
> Currently we don’t. They are derived from the IO event queues.
> As you know, sometimes more txqs than IO event queues needed for XDP, timestamp, multiple TCs.
> If needed, probably additional knob for txq, rxq can be added to restrict device resources.
Rather than deriving tx and rx queues from IO event queues, isn't it
more user friendly to do the other way. Let the host admin set the max
number of tx and rx queues allowed and the driver derive the number of
ioevent queues based on those values. This will be consistent with what
ethtool reports as pre-set maximum values for the corresponding VF/SF.
>
>>
>>
>>>
>>> example:
>>> Get maximum IO event queues of the VF device::
>>>
>>> $ devlink port show pci/0000:06:00.0/2
>>> pci/0000:06:00.0/2: type eth netdev enp6s0pf0vf1 flavour pcivf pfnum 0
>> vfnum 1
>>> function:
>>> hw_addr 00:00:00:00:00:00 ipsec_packet disabled max_io_eqs
>>> 10
>>>
>>> Set maximum IO event queues of the VF device::
>>>
>>> $ devlink port function set pci/0000:06:00.0/2 max_io_eqs 32
>>>
>>> $ devlink port show pci/0000:06:00.0/2
>>> pci/0000:06:00.0/2: type eth netdev enp6s0pf0vf1 flavour pcivf pfnum 0
>> vfnum 1
>>> function:
>>> hw_addr 00:00:00:00:00:00 ipsec_packet disabled max_io_eqs
>>> 32
>>>
>>> patch summary:
>>> patch-1 updates devlink uapi
>>> patch-2 adds print, get and set routines for max_io_eqs field
>>>
>>> changelog:
>>> v1->v2:
>>> - addressed comments from Jiri
>>> - updated man page for the new parameter
>>> - corrected print to not have EQs value as optional
>>> - replaced 'value' with 'EQs'
>>>
>>> Parav Pandit (2):
>>> uapi: Update devlink kernel headers
>>> devlink: Support setting max_io_eqs
>>>
>>> devlink/devlink.c | 29 ++++++++++++++++++++++++++++-
>>> include/uapi/linux/devlink.h | 1 +
>>> man/man8/devlink-port.8 | 12 ++++++++++++
>>> 3 files changed, 41 insertions(+), 1 deletion(-)
>>>
Powered by blists - more mailing lists