Re: [PATCH v11 20/23] CXL/PCI: Export and rename merge_result() to pci_ers_merge_result()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Sep 10, 2025 at 10:57:17AM -0500, Bowman, Terry wrote:
> On 8/27/2025 3:04 AM, Lukas Wunner wrote:
> > On Tue, Aug 26, 2025 at 08:35:35PM -0500, Terry Bowman wrote:
> >> +++ b/include/linux/pci.h
> >> @@ -2760,6 +2760,17 @@ static inline bool pci_is_thunderbolt_attached(struct pci_dev *pdev)
> >>  void pci_uevent_ers(struct pci_dev *pdev, enum  pci_ers_result err_type);
> >>  #endif
> >>  
> >> +#if defined(CONFIG_PCIEAER)
> >> +pci_ers_result_t pci_ers_merge_result(enum pci_ers_result orig,
> >> +				      enum pci_ers_result new);
> >> +#else
> >> +static inline pci_ers_result_t pci_ers_merge_result(enum pci_ers_result orig,
> >> +						    enum pci_ers_result new)
> >> +{
> >> +	return PCI_ERS_RESULT_NONE;
> >> +}
> >> +#endif
> >> +
> >>  #include <linux/dma-mapping.h>
> >>  
> >>  #define pci_emerg(pdev, fmt, arg...)	dev_emerg(&(pdev)->dev, fmt, ##arg)
> > Would it be possible for you to just declare a local version of
> > pci_ers_merge_result() within drivers/cxl/ which is encapsulated by
> > "#ifndef CONFIG_PCIEAER"?
> >
> > That would avoid the need to make this public in include/linux/pci.h.
> 
> The move of local merge_result() to exported pci_merge_result() was requested
> by Jonathan Cameron:
> https://lore.kernel.org/linux-cxl/20250627120541.00003a14@xxxxxxxxxx/
> 
> I believe the intent was to make reuse of the PCI merge function to keep the
> PCI and CXL UCE flows somewhat similar.

That's not my point.  My point is, can you avoid declaring the static inline
in include/linux/pci.h if you move it to drivers/cxl/ and encapsulate by
"#ifndef CONFIG_PCIEAER"?  I'm only referring to the static inline stub.

Thanks,

Lukas




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux