qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Shivaprasad G Bhat <sbhat@linux.ibm.com>
To: "Cédric Le Goater" <clg@redhat.com>,
	"Akihiko Odaki" <akihiko.odaki@daynix.com>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"Marcel Apfelbaum" <marcel.apfelbaum@gmail.com>,
	"Alex Williamson" <alex.williamson@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Daniel P. Berrangé" <berrange@redhat.com>,
	"Eduardo Habkost" <eduardo@habkost.net>,
	"Sriram Yagnaraman" <sriram.yagnaraman@ericsson.com>,
	"Jason Wang" <jasowang@redhat.com>,
	"Keith Busch" <kbusch@kernel.org>,
	"Klaus Jensen" <its@irrelevant.dk>,
	"Markus Armbruster" <armbru@redhat.com>,
	"Matthew Rosato" <mjrosato@linux.ibm.com>,
	"Eric Farman" <farman@linux.ibm.com>,
	"Harsh Prateek Bora" <harshpb@linux.ibm.com>
Cc: qemu-devel@nongnu.org, qemu-block@nongnu.org
Subject: Re: [PATCH v16 03/13] hw/ppc/spapr_pci: Do not reject VFs created after a PF
Date: Fri, 11 Oct 2024 22:52:52 +0530	[thread overview]
Message-ID: <84adb86d-a60c-4468-84a3-5bdc545bc161@linux.ibm.com> (raw)
In-Reply-To: <3cc3456d-a47d-4960-9d5e-10cf1c8b4beb@redhat.com>

On 9/18/24 7:57 PM, Cédric Le Goater wrote:
> Adding :
>
>   Harsh for QEMU/PPC pseries machine,
>   Shivaprasad for KVM/PPC VFIO and IOMMU support.
>
> Thanks,
>
> C.
>
>
> On 9/13/24 05:44, Akihiko Odaki wrote:
>> A PF may automatically create VFs and the PF may be function 0.
>>
>> Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
>> ---
>>   hw/ppc/spapr_pci.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/hw/ppc/spapr_pci.c b/hw/ppc/spapr_pci.c
>> index f63182a03c41..ed4454bbf79e 100644
>> --- a/hw/ppc/spapr_pci.c
>> +++ b/hw/ppc/spapr_pci.c
>> @@ -1573,7 +1573,9 @@ static void spapr_pci_pre_plug(HotplugHandler 
>> *plug_handler,
>>        * hotplug, we do not allow functions to be hotplugged to a
>>        * slot that already has function 0 present
>>        */
>> -    if (plugged_dev->hotplugged && bus->devices[PCI_DEVFN(slotnr, 
>> 0)] &&
>> +    if (plugged_dev->hotplugged &&
>> +        !pci_is_vf(pdev) &&

I see there is history to this change. The reverted[1] virtio-net-pci 
SRIOV emulation support

needed this as the VFs were explicitly specified with -device 
virtio-net-pci,sriov-pf=X

property. I see the pre_plug handlers for the VFs cant be reached now 
with the reverted

code base for the other devices(nvme and igb) supporting the SRIOV 
emulation.


Do the VFs really reach this path in today's code base ? Other than the 
above

workflow, the pre_plug() handlers wont be called for VFs when the

echo X > /<sys-fs-pf-path>/sriov_numvfs inside the guest too. I don't 
see the

workflow(PF automatically creating VFs) to hit this path. Could you 
clarify how?


I see before the revert of virito-net-pci sriov use-case, the out of 
order VF hot|cold

plug post PF are prevented here. Even if we allowed VFs to continue 
here, PFs were

prevented in pcie_sriov_register_device() which is followed sequentially 
anyway. Now,

as the pcie_sriov_register_device() is no longer there, this check 
actually makes

sense as this would be the only place we avoid the out of order plugging.


On a side note, for testing this fulky on PPC, we need more work on Qemu 
today as the

open-sriov[2] is supported only on PowerVM.


Thanks,

Shivaprasad


Reference :

[1] - Atleast till commit b0fdaee5d1

[2] - 
https://lore.kernel.org/linuxppc-dev/20180105164552.36371-1-bryantly@linux.vnet.ibm.com/



  reply	other threads:[~2024-10-11 17:37 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-13  3:44 [PATCH v16 00/13] hw/pci: SR-IOV related fixes and improvements Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 01/13] hw/pci: Rename has_power to enabled Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 02/13] hw/ppc/spapr_pci: Do not create DT for disabled PCI device Akihiko Odaki
2024-09-18 14:27   ` Cédric Le Goater
2024-09-19  4:32     ` Harsh Prateek Bora
2024-10-11 17:22     ` Shivaprasad G Bhat
2024-10-14 16:26       ` Shivaprasad G Bhat
2024-09-13  3:44 ` [PATCH v16 03/13] hw/ppc/spapr_pci: Do not reject VFs created after a PF Akihiko Odaki
2024-09-18 14:27   ` Cédric Le Goater
2024-10-11 17:22     ` Shivaprasad G Bhat [this message]
2024-10-12 12:10       ` Akihiko Odaki
2024-10-14 16:21         ` Shivaprasad G Bhat
2024-09-13  3:44 ` [PATCH v16 04/13] s390x/pci: Avoid creating zpci for VFs Akihiko Odaki
2024-09-18 15:02   ` Cédric Le Goater
2024-09-18 15:32     ` Akihiko Odaki
2024-10-10 15:44       ` Cédric Le Goater
2024-10-12 11:05         ` Akihiko Odaki
2024-10-14  8:43           ` Cédric Le Goater
2024-10-18  4:29             ` Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 05/13] s390x/pci: Allow plugging SR-IOV devices Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 06/13] s390x/pci: Check for multifunction after device realization Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 07/13] pcie_sriov: Do not manually unrealize Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 08/13] pcie_sriov: Reuse SR-IOV VF device instances Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 09/13] pcie_sriov: Release VFs failed to realize Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 10/13] pcie_sriov: Remove num_vfs from PCIESriovPF Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 11/13] pcie_sriov: Register VFs after migration Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 12/13] hw/pci: Use -1 as the default value for rombar Akihiko Odaki
2024-09-13  3:44 ` [PATCH v16 13/13] hw/qdev: Remove opts member Akihiko Odaki

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=84adb86d-a60c-4468-84a3-5bdc545bc161@linux.ibm.com \
    --to=sbhat@linux.ibm.com \
    --cc=akihiko.odaki@daynix.com \
    --cc=alex.williamson@redhat.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=clg@redhat.com \
    --cc=eduardo@habkost.net \
    --cc=farman@linux.ibm.com \
    --cc=harshpb@linux.ibm.com \
    --cc=its@irrelevant.dk \
    --cc=jasowang@redhat.com \
    --cc=kbusch@kernel.org \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=mjrosato@linux.ibm.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=sriram.yagnaraman@ericsson.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).