Re: [PATCH mlx5-next v7 0/4] Dynamically assign MSI-X vectors count
From: Alexander Duyck <hidden>
Date: 2021-03-11 20:13:05
Also in:
linux-pci, linux-rdma
On Thu, Mar 11, 2021 at 11:51 AM Leon Romanovsky [off-list ref] wrote:
On Thu, Mar 11, 2021 at 11:37:28AM -0800, Alexander Duyck wrote:quoted
On Thu, Mar 11, 2021 at 10:17 AM Bjorn Helgaas [off-list ref] wrote:quoted
On Wed, Mar 10, 2021 at 03:34:01PM -0800, Alexander Duyck wrote:quoted
On Wed, Mar 10, 2021 at 11:09 AM Bjorn Helgaas [off-list ref] wrote:quoted
On Sun, Mar 07, 2021 at 10:55:24AM -0800, Alexander Duyck wrote:quoted
On Sun, Feb 28, 2021 at 11:55 PM Leon Romanovsky [off-list ref] wrote:quoted
From: Leon Romanovsky <leonro@nvidia.com> @Alexander Duyck, please update me if I can add your ROB tag again to the series, because you liked v6 more. Thanks --------------------------------------------------------------------------------- Changelog v7: * Rebase on top v5.12-rc1 * More english fixes * Returned to static sysfs creation model as was implemented in v0/v1.<...>quoted
quoted
quoted
representors rather than being actual PCIe devices. Having functionality that only works when the VF driver is not loaded just feels off. The VF sysfs directory feels like it is being used as a subdirectory of the PF rather than being a device on its own.Moving "virtfnX_msix_count" to the PF seems like it would mitigate this somewhat. I don't know how to make this work while a VF driver is bound without making the VF feel even less like a PCIe device, i.e., we won't be able to use the standard MSI-X model.Yeah, I actually do kind of like that idea. In addition it would address one of the things I pointed out as an issue before as you could place the virtfn values that the total value in the same folder so that it is all in one central spot rather than having to walk all over the sysfs hierarchy to check the setting for each VF when trying to figure out how the vectors are currently distributed.User binds specific VF with specific PCI ID to VM, so instead of changing MSI-X table for that specific VF, he will need to translate from virtfn25_msix_count to PCI ID.
Wouldn't that just be a matter of changing the naming so that the PCI ID was present in the virtfn name?
I also gave an example of my system where I have many PFs and VFs function numbers are not distributed nicely. On that system virtfn25_msix_count won't translate to AA:BB:CC.25 but to something else.
That isn't too surprising since normally we only support 7 functions per device. I am okay with not using the name virtfnX. If you wanted to embed the bus, device, func in the naming scheme that would work for me too. Really in general as a naming scheme just using a logical number have probably never provided all that much value. There may be an argument to be made for renaming the virtfn symlinks to include bus, device, function instead.