* [PATCH RESEND] hw/pci: add comment to explain checking for available function 0 in pci hotplug
@ 2023-07-11 7:03 Ani Sinha
2023-07-21 5:47 ` Ani Sinha
0 siblings, 1 reply; 2+ messages in thread
From: Ani Sinha @ 2023-07-11 7:03 UTC (permalink / raw)
To: Michael S. Tsirkin, Marcel Apfelbaum; +Cc: Ani Sinha, mjt, qemu-devel
This change is cosmetic. A comment is added explaining why we need to check for
the availability of function 0 when we hotplug a device.
CC: mst@redhat.com
CC: mjt@tls.msk.ru
Signed-off-by: Ani Sinha <anisinha@redhat.com>
---
hw/pci/pci.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/hw/pci/pci.c b/hw/pci/pci.c
index e2eb4c3b4a..6db18dfe46 100644
--- a/hw/pci/pci.c
+++ b/hw/pci/pci.c
@@ -1180,9 +1180,14 @@ static PCIDevice *do_pci_register_device(PCIDevice *pci_dev,
PCI_SLOT(devfn), PCI_FUNC(devfn), name,
bus->devices[devfn]->name, bus->devices[devfn]->qdev.id);
return NULL;
- } else if (dev->hotplugged &&
- !pci_is_vf(pci_dev) &&
- pci_get_function_0(pci_dev)) {
+ } /*
+ * Populating function 0 triggers a scan from the guest that
+ * exposes other non-zero functions. Hence we need to ensure that
+ * function 0 wasn't added yet.
+ */
+ else if (dev->hotplugged &&
+ !pci_is_vf(pci_dev) &&
+ pci_get_function_0(pci_dev)) {
error_setg(errp, "PCI: slot %d function 0 already occupied by %s,"
" new func %s cannot be exposed to guest.",
PCI_SLOT(pci_get_function_0(pci_dev)->devfn),
--
2.39.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH RESEND] hw/pci: add comment to explain checking for available function 0 in pci hotplug
2023-07-11 7:03 [PATCH RESEND] hw/pci: add comment to explain checking for available function 0 in pci hotplug Ani Sinha
@ 2023-07-21 5:47 ` Ani Sinha
0 siblings, 0 replies; 2+ messages in thread
From: Ani Sinha @ 2023-07-21 5:47 UTC (permalink / raw)
To: Michael S. Tsirkin, Marcel Apfelbaum
Cc: Michael Tokarev, qemu-devel, qemu-trivial
> On 11-Jul-2023, at 12:33 PM, Ani Sinha <anisinha@redhat.com> wrote:
>
> This change is cosmetic. A comment is added explaining why we need to check for
> the availability of function 0 when we hotplug a device.
>
> CC: mst@redhat.com
> CC: mjt@tls.msk.ru
> Signed-off-by: Ani Sinha <anisinha@redhat.com>
Can we merge this while we are still in rc0?
> ---
> hw/pci/pci.c | 11 ++++++++---
> 1 file changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/hw/pci/pci.c b/hw/pci/pci.c
> index e2eb4c3b4a..6db18dfe46 100644
> --- a/hw/pci/pci.c
> +++ b/hw/pci/pci.c
> @@ -1180,9 +1180,14 @@ static PCIDevice *do_pci_register_device(PCIDevice *pci_dev,
> PCI_SLOT(devfn), PCI_FUNC(devfn), name,
> bus->devices[devfn]->name, bus->devices[devfn]->qdev.id);
> return NULL;
> - } else if (dev->hotplugged &&
> - !pci_is_vf(pci_dev) &&
> - pci_get_function_0(pci_dev)) {
> + } /*
> + * Populating function 0 triggers a scan from the guest that
> + * exposes other non-zero functions. Hence we need to ensure that
> + * function 0 wasn't added yet.
> + */
> + else if (dev->hotplugged &&
> + !pci_is_vf(pci_dev) &&
> + pci_get_function_0(pci_dev)) {
> error_setg(errp, "PCI: slot %d function 0 already occupied by %s,"
> " new func %s cannot be exposed to guest.",
> PCI_SLOT(pci_get_function_0(pci_dev)->devfn),
> --
> 2.39.1
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-07-21 5:48 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-11 7:03 [PATCH RESEND] hw/pci: add comment to explain checking for available function 0 in pci hotplug Ani Sinha
2023-07-21 5:47 ` Ani Sinha
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).