[PATCH] pci-hyperv: Add check for hyperv_initialized in init_hv_pci_drv()

Subsystems: hyper-v/azure core and drivers, pci native host bridge and endpoint drivers, pci subsystem, the rest

STALE1898d LANDED

Landed in mainline as 7d815f4afa87 on 2021-06-20.

7 messages, 3 authors, 2021-06-18 · open the first message on its own page

[PATCH] pci-hyperv: Add check for hyperv_initialized in init_hv_pci_drv()

From: Haiyang Zhang <haiyangz@microsoft.com>
Date: 2021-05-25 23:19:14

Add check for hv_is_hyperv_initialized() at the top of init_hv_pci_drv(),
so if the pci-hyperv driver is force-loaded on non Hyper-V platforms, the
init_hv_pci_drv() will exit immediately, without any side effects, like
assignments to hvpci_block_ops, etc.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reported-and-tested-by: Mohammad Alqayeem <redacted>
---
 drivers/pci/controller/pci-hyperv.c | 3 +++
 1 file changed, 3 insertions(+)
diff --git a/drivers/pci/controller/pci-hyperv.c b/drivers/pci/controller/pci-hyperv.c
index 6511648271b2..bebe3eeebc4e 100644
--- a/drivers/pci/controller/pci-hyperv.c
+++ b/drivers/pci/controller/pci-hyperv.c
@@ -3476,6 +3476,9 @@ static void __exit exit_hv_pci_drv(void)
 
 static int __init init_hv_pci_drv(void)
 {
+	if (!hv_is_hyperv_initialized())
+		return -ENODEV;
+
 	/* Set the invalid domain number's bit, so it will not be used */
 	set_bit(HVPCI_DOM_INVALID, hvpci_dom_map);
 
-- 
2.25.1

Re: [PATCH] pci-hyperv: Add check for hyperv_initialized in init_hv_pci_drv()

From: Wei Liu <wei.liu@kernel.org>
Date: 2021-05-26 10:08:22

On Tue, May 25, 2021 at 04:17:33PM -0700, Haiyang Zhang wrote:
Add check for hv_is_hyperv_initialized() at the top of init_hv_pci_drv(),
so if the pci-hyperv driver is force-loaded on non Hyper-V platforms, the
init_hv_pci_drv() will exit immediately, without any side effects, like
assignments to hvpci_block_ops, etc.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reported-and-tested-by: Mohammad Alqayeem <redacted>
Reviewed-by: Wei Liu <wei.liu@kernel.org>
quoted hunk
---
 drivers/pci/controller/pci-hyperv.c | 3 +++
 1 file changed, 3 insertions(+)
diff --git a/drivers/pci/controller/pci-hyperv.c b/drivers/pci/controller/pci-hyperv.c
index 6511648271b2..bebe3eeebc4e 100644
--- a/drivers/pci/controller/pci-hyperv.c
+++ b/drivers/pci/controller/pci-hyperv.c
@@ -3476,6 +3476,9 @@ static void __exit exit_hv_pci_drv(void)
 
 static int __init init_hv_pci_drv(void)
 {
+	if (!hv_is_hyperv_initialized())
+		return -ENODEV;
+
 	/* Set the invalid domain number's bit, so it will not be used */
 	set_bit(HVPCI_DOM_INVALID, hvpci_dom_map);
 
-- 
2.25.1

Re: [PATCH] pci-hyperv: Add check for hyperv_initialized in init_hv_pci_drv()

From: Wei Liu <wei.liu@kernel.org>
Date: 2021-06-02 10:32:13

On Tue, May 25, 2021 at 04:17:33PM -0700, Haiyang Zhang wrote:
Add check for hv_is_hyperv_initialized() at the top of init_hv_pci_drv(),
so if the pci-hyperv driver is force-loaded on non Hyper-V platforms, the
init_hv_pci_drv() will exit immediately, without any side effects, like
assignments to hvpci_block_ops, etc.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reported-and-tested-by: Mohammad Alqayeem <redacted>
Hello PCI subsystem maintainers, are you going to take this patch or
shall I?

Wei.
quoted hunk
---
 drivers/pci/controller/pci-hyperv.c | 3 +++
 1 file changed, 3 insertions(+)
diff --git a/drivers/pci/controller/pci-hyperv.c b/drivers/pci/controller/pci-hyperv.c
index 6511648271b2..bebe3eeebc4e 100644
--- a/drivers/pci/controller/pci-hyperv.c
+++ b/drivers/pci/controller/pci-hyperv.c
@@ -3476,6 +3476,9 @@ static void __exit exit_hv_pci_drv(void)
 
 static int __init init_hv_pci_drv(void)
 {
+	if (!hv_is_hyperv_initialized())
+		return -ENODEV;
+
 	/* Set the invalid domain number's bit, so it will not be used */
 	set_bit(HVPCI_DOM_INVALID, hvpci_dom_map);
 
-- 
2.25.1

Re: [PATCH] pci-hyperv: Add check for hyperv_initialized in init_hv_pci_drv()

From: Bjorn Helgaas <helgaas@kernel.org>
Date: 2021-06-04 21:26:27

On Wed, Jun 02, 2021 at 10:32:06AM +0000, Wei Liu wrote:
On Tue, May 25, 2021 at 04:17:33PM -0700, Haiyang Zhang wrote:
quoted
Add check for hv_is_hyperv_initialized() at the top of init_hv_pci_drv(),
so if the pci-hyperv driver is force-loaded on non Hyper-V platforms, the
init_hv_pci_drv() will exit immediately, without any side effects, like
assignments to hvpci_block_ops, etc.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reported-and-tested-by: Mohammad Alqayeem <redacted>
Hello PCI subsystem maintainers, are you going to take this patch or
shall I?
This was mistakenly assigned to me, so I reassigned it back to
Lorenzo.

If you *do* take this, please at least update it to follow the PCI
commit log conventions, e.g.,

  PCI: hv: Add check ...

and wrap the text so it fits in 75 columns.
quoted
---
 drivers/pci/controller/pci-hyperv.c | 3 +++
 1 file changed, 3 insertions(+)
diff --git a/drivers/pci/controller/pci-hyperv.c b/drivers/pci/controller/pci-hyperv.c
index 6511648271b2..bebe3eeebc4e 100644
--- a/drivers/pci/controller/pci-hyperv.c
+++ b/drivers/pci/controller/pci-hyperv.c
@@ -3476,6 +3476,9 @@ static void __exit exit_hv_pci_drv(void)
 
 static int __init init_hv_pci_drv(void)
 {
+	if (!hv_is_hyperv_initialized())
+		return -ENODEV;
+
 	/* Set the invalid domain number's bit, so it will not be used */
 	set_bit(HVPCI_DOM_INVALID, hvpci_dom_map);
 
-- 
2.25.1

Re: [PATCH] pci-hyperv: Add check for hyperv_initialized in init_hv_pci_drv()

From: Wei Liu <wei.liu@kernel.org>
Date: 2021-06-05 10:40:26

On Fri, Jun 04, 2021 at 04:26:22PM -0500, Bjorn Helgaas wrote:
On Wed, Jun 02, 2021 at 10:32:06AM +0000, Wei Liu wrote:
quoted
On Tue, May 25, 2021 at 04:17:33PM -0700, Haiyang Zhang wrote:
quoted
Add check for hv_is_hyperv_initialized() at the top of init_hv_pci_drv(),
so if the pci-hyperv driver is force-loaded on non Hyper-V platforms, the
init_hv_pci_drv() will exit immediately, without any side effects, like
assignments to hvpci_block_ops, etc.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reported-and-tested-by: Mohammad Alqayeem <redacted>
Hello PCI subsystem maintainers, are you going to take this patch or
shall I?
This was mistakenly assigned to me, so I reassigned it back to
Lorenzo.

If you *do* take this, please at least update it to follow the PCI
commit log conventions, e.g.,

  PCI: hv: Add check ...

and wrap the text so it fits in 75 columns.
Lorenzo already picked up two Hyper-V PCI patches from Long Li. I think
leaving this to him is better.

Wei.

Re: [PATCH] pci-hyperv: Add check for hyperv_initialized in init_hv_pci_drv()

From: Wei Liu <wei.liu@kernel.org>
Date: 2021-06-18 13:22:41

On Sat, Jun 05, 2021 at 10:40:21AM +0000, Wei Liu wrote:
On Fri, Jun 04, 2021 at 04:26:22PM -0500, Bjorn Helgaas wrote:
quoted
On Wed, Jun 02, 2021 at 10:32:06AM +0000, Wei Liu wrote:
quoted
On Tue, May 25, 2021 at 04:17:33PM -0700, Haiyang Zhang wrote:
quoted
Add check for hv_is_hyperv_initialized() at the top of init_hv_pci_drv(),
so if the pci-hyperv driver is force-loaded on non Hyper-V platforms, the
init_hv_pci_drv() will exit immediately, without any side effects, like
assignments to hvpci_block_ops, etc.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reported-and-tested-by: Mohammad Alqayeem <redacted>
Hello PCI subsystem maintainers, are you going to take this patch or
shall I?
This was mistakenly assigned to me, so I reassigned it back to
Lorenzo.

If you *do* take this, please at least update it to follow the PCI
commit log conventions, e.g.,

  PCI: hv: Add check ...

and wrap the text so it fits in 75 columns.
Lorenzo already picked up two Hyper-V PCI patches from Long Li. I think
leaving this to him is better.
This patch is still missing from pci/hv, so I've picked it up via
hyperv-next (with the adjustments required by Bjorn).

Wei.

RE: [PATCH] pci-hyperv: Add check for hyperv_initialized in init_hv_pci_drv()

From: Haiyang Zhang <haiyangz@microsoft.com>
Date: 2021-06-18 13:26:13

-----Original Message-----
From: Wei Liu <wei.liu@kernel.org>
Sent: Friday, June 18, 2021 9:23 AM
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: Wei Liu <wei.liu@kernel.org>; Haiyang Zhang <haiyangz@microsoft.com>;
bhelgaas@google.com; lorenzo.pieralisi@arm.com; linux-
hyperv@vger.kernel.org; linux-pci@vger.kernel.org; KY Srinivasan
[off-list ref]; olaf@aepfle.de; vkuznets [off-list ref];
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] pci-hyperv: Add check for hyperv_initialized in
init_hv_pci_drv()

On Sat, Jun 05, 2021 at 10:40:21AM +0000, Wei Liu wrote:
quoted
On Fri, Jun 04, 2021 at 04:26:22PM -0500, Bjorn Helgaas wrote:
quoted
On Wed, Jun 02, 2021 at 10:32:06AM +0000, Wei Liu wrote:
quoted
On Tue, May 25, 2021 at 04:17:33PM -0700, Haiyang Zhang wrote:
quoted
Add check for hv_is_hyperv_initialized() at the top of
init_hv_pci_drv(), so if the pci-hyperv driver is force-loaded
on non Hyper-V platforms, the
init_hv_pci_drv() will exit immediately, without any side
effects, like assignments to hvpci_block_ops, etc.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Reported-and-tested-by: Mohammad Alqayeem
[off-list ref]
Hello PCI subsystem maintainers, are you going to take this patch
or shall I?
This was mistakenly assigned to me, so I reassigned it back to
Lorenzo.

If you *do* take this, please at least update it to follow the PCI
commit log conventions, e.g.,

  PCI: hv: Add check ...

and wrap the text so it fits in 75 columns.
Lorenzo already picked up two Hyper-V PCI patches from Long Li. I
think leaving this to him is better.
This patch is still missing from pci/hv, so I've picked it up via hyperv-next
(with the adjustments required by Bjorn).
Thank you!

- Haiyang
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help