mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and eeh_ops
@ 2025-06-18  4:22 Timothy Pearson
  2025-06-18  5:38 ` Christoph Hellwig
  0 siblings, 1 reply; 4+ messages in thread
From: Timothy Pearson @ 2025-06-18  4:22 UTC (permalink / raw)
  To: linuxppc-dev
  Cc: linux-kernel, linux-pci, Timothy Pearson, Madhavan Srinivasan,
	Michael Ellerman, christophe leroy, Naveen N Rao, Bjorn Helgaas,
	Shawn Anastasio

The PowerNV hotplug driver needs to be able to detect and clear any
frozen PE on the PHB after suprise removal of a downstream device.

Export the eeh_unfreeze_pe() and eeh_ops symbols to allow implementation
of this functionality in the php_nv module.

Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
---
 arch/powerpc/kernel/eeh.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/powerpc/kernel/eeh.c b/arch/powerpc/kernel/eeh.c
index 83fe99861eb1..543d8323c1fb 100644
--- a/arch/powerpc/kernel/eeh.c
+++ b/arch/powerpc/kernel/eeh.c
@@ -107,6 +107,7 @@ bool eeh_debugfs_no_recover;
 
 /* Platform dependent EEH operations */
 struct eeh_ops *eeh_ops = NULL;
+EXPORT_SYMBOL(eeh_ops);
 
 /* Lock to avoid races due to multiple reports of an error */
 DEFINE_RAW_SPINLOCK(confirm_error_lock);
@@ -1139,6 +1140,7 @@ int eeh_unfreeze_pe(struct eeh_pe *pe)
 
 	return ret;
 }
+EXPORT_SYMBOL(eeh_unfreeze_pe);
 
 
 static struct pci_device_id eeh_reset_ids[] = {
-- 
2.39.5

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and eeh_ops
  2025-06-18  4:22 [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and eeh_ops Timothy Pearson
@ 2025-06-18  5:38 ` Christoph Hellwig
  2025-06-18 16:10   ` Timothy Pearson
  0 siblings, 1 reply; 4+ messages in thread
From: Christoph Hellwig @ 2025-06-18  5:38 UTC (permalink / raw)
  To: Timothy Pearson
  Cc: linuxppc-dev, linux-kernel, linux-pci, Madhavan Srinivasan,
	Michael Ellerman, christophe leroy, Naveen N Rao, Bjorn Helgaas,
	Shawn Anastasio

On Tue, Jun 17, 2025 at 11:22:39PM -0500, Timothy Pearson wrote:
>  /* Platform dependent EEH operations */
>  struct eeh_ops *eeh_ops = NULL;
> +EXPORT_SYMBOL(eeh_ops);

Exporting ops vectors is generally a really bad idea.  Please build a
proper abstraction instead.

And use EXPORT_SYMBOL_GPL for any kind of low-level API.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and eeh_ops
  2025-06-18  5:38 ` Christoph Hellwig
@ 2025-06-18 16:10   ` Timothy Pearson
  2025-06-18 16:55     ` Timothy Pearson
  0 siblings, 1 reply; 4+ messages in thread
From: Timothy Pearson @ 2025-06-18 16:10 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: linuxppc-dev, linux-kernel, linux-pci, Madhavan Srinivasan,
	Michael Ellerman, christophe leroy, Naveen N Rao, Bjorn Helgaas,
	Shawn Anastasio



----- Original Message -----
> From: "Christoph Hellwig" <hch@infradead.org>
> To: "Timothy Pearson" <tpearson@raptorengineering.com>
> Cc: "linuxppc-dev" <linuxppc-dev@lists.ozlabs.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "linux-pci"
> <linux-pci@vger.kernel.org>, "Madhavan Srinivasan" <maddy@linux.ibm.com>, "Michael Ellerman" <mpe@ellerman.id.au>,
> "christophe leroy" <christophe.leroy@csgroup.eu>, "Naveen N Rao" <naveen@kernel.org>, "Bjorn Helgaas"
> <bhelgaas@google.com>, "Shawn Anastasio" <sanastasio@raptorengineering.com>
> Sent: Wednesday, June 18, 2025 12:38:56 AM
> Subject: Re: [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and eeh_ops

> On Tue, Jun 17, 2025 at 11:22:39PM -0500, Timothy Pearson wrote:
>>  /* Platform dependent EEH operations */
>>  struct eeh_ops *eeh_ops = NULL;
>> +EXPORT_SYMBOL(eeh_ops);
> 
> Exporting ops vectors is generally a really bad idea.  Please build a
> proper abstraction instead.
> 
> And use EXPORT_SYMBOL_GPL for any kind of low-level API.

Fair enough.  I'll add a properly exported method for PE get_state() and update the series in the next couple of days.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and eeh_ops
  2025-06-18 16:10   ` Timothy Pearson
@ 2025-06-18 16:55     ` Timothy Pearson
  0 siblings, 0 replies; 4+ messages in thread
From: Timothy Pearson @ 2025-06-18 16:55 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: linuxppc-dev, linux-kernel, linux-pci, Madhavan Srinivasan,
	Michael Ellerman, christophe leroy, Naveen N Rao, Bjorn Helgaas,
	Shawn Anastasio



----- Original Message -----
> From: "Timothy Pearson" <tpearson@raptorengineeringinc.com>
> To: "Christoph Hellwig" <hch@infradead.org>
> Cc: "linuxppc-dev" <linuxppc-dev@lists.ozlabs.org>, "linux-kernel" <linux-kernel@vger.kernel.org>, "linux-pci"
> <linux-pci@vger.kernel.org>, "Madhavan Srinivasan" <maddy@linux.ibm.com>, "Michael Ellerman" <mpe@ellerman.id.au>,
> "christophe leroy" <christophe.leroy@csgroup.eu>, "Naveen N Rao" <naveen@kernel.org>, "Bjorn Helgaas"
> <bhelgaas@google.com>, "Shawn Anastasio" <sanastasio@raptorengineering.com>
> Sent: Wednesday, June 18, 2025 11:10:02 AM
> Subject: Re: [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and eeh_ops

> ----- Original Message -----
>> From: "Christoph Hellwig" <hch@infradead.org>
>> To: "Timothy Pearson" <tpearson@raptorengineering.com>
>> Cc: "linuxppc-dev" <linuxppc-dev@lists.ozlabs.org>, "linux-kernel"
>> <linux-kernel@vger.kernel.org>, "linux-pci"
>> <linux-pci@vger.kernel.org>, "Madhavan Srinivasan" <maddy@linux.ibm.com>,
>> "Michael Ellerman" <mpe@ellerman.id.au>,
>> "christophe leroy" <christophe.leroy@csgroup.eu>, "Naveen N Rao"
>> <naveen@kernel.org>, "Bjorn Helgaas"
>> <bhelgaas@google.com>, "Shawn Anastasio" <sanastasio@raptorengineering.com>
>> Sent: Wednesday, June 18, 2025 12:38:56 AM
>> Subject: Re: [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and
>> eeh_ops
> 
>> On Tue, Jun 17, 2025 at 11:22:39PM -0500, Timothy Pearson wrote:
>>>  /* Platform dependent EEH operations */
>>>  struct eeh_ops *eeh_ops = NULL;
>>> +EXPORT_SYMBOL(eeh_ops);
>> 
>> Exporting ops vectors is generally a really bad idea.  Please build a
>> proper abstraction instead.
>> 
>> And use EXPORT_SYMBOL_GPL for any kind of low-level API.
> 
> Fair enough.  I'll add a properly exported method for PE get_state() and update
> the series in the next couple of days.

Somehow I completely missed eeh_pe_get_state() the first time around.  I don't need to change the API, v2 incoming now.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-06-18 16:56 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-18  4:22 [PATCH 3/8] powerpc/pseries/eeh: Export eeh_unfreeze_pe() and eeh_ops Timothy Pearson
2025-06-18  5:38 ` Christoph Hellwig
2025-06-18 16:10   ` Timothy Pearson
2025-06-18 16:55     ` Timothy Pearson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®