* [PATCH] ata: macio: Use non-hybrid PCI devres API
@ 2025-06-04 11:34 Philipp Stanner
2025-06-06 1:17 ` Damien Le Moal
2025-06-10 12:31 ` Niklas Cassel
0 siblings, 2 replies; 4+ messages in thread
From: Philipp Stanner @ 2025-06-04 11:34 UTC (permalink / raw)
To: Damien Le Moal, Niklas Cassel; +Cc: linux-ide, linux-kernel, Philipp Stanner
macio enables its PCI device with pcim_enable_device(). This,
implicitly, switches the function pci_request_regions() into managed
mode, where it becomes a devres function.
The PCI subsystem wants to remove this hybrid nature from its
interfaces. To do so, users of the aforementioned combination of
functions must be ported to non-hybrid functions.
Replace the call to sometimes-managed pci_request_regions() with one to
the always-managed pcim_request_all_regions().
Signed-off-by: Philipp Stanner <phasta@kernel.org>
---
Hi,
seems I forgot sending this patch out a while ago. Mea culpa.
PCI has currently chained the changes mentioned above queued up for
Linus, so it's probably a good idea to get this into macio relatively
soonish. Otherwise the driver would likely fail to reload in v6.16,
because the device's PCI regions remain blocked.
Thx
P.
---
drivers/ata/pata_macio.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/ata/pata_macio.c b/drivers/ata/pata_macio.c
index fbf5f07ea357..f7a933eefe05 100644
--- a/drivers/ata/pata_macio.c
+++ b/drivers/ata/pata_macio.c
@@ -1298,7 +1298,7 @@ static int pata_macio_pci_attach(struct pci_dev *pdev,
priv->dev = &pdev->dev;
/* Get MMIO regions */
- if (pci_request_regions(pdev, "pata-macio")) {
+ if (pcim_request_all_regions(pdev, "pata-macio")) {
dev_err(&pdev->dev,
"Cannot obtain PCI resources\n");
return -EBUSY;
--
2.48.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] ata: macio: Use non-hybrid PCI devres API
2025-06-04 11:34 [PATCH] ata: macio: Use non-hybrid PCI devres API Philipp Stanner
@ 2025-06-06 1:17 ` Damien Le Moal
2025-06-10 12:31 ` Niklas Cassel
1 sibling, 0 replies; 4+ messages in thread
From: Damien Le Moal @ 2025-06-06 1:17 UTC (permalink / raw)
To: Philipp Stanner, Niklas Cassel; +Cc: linux-ide, linux-kernel
On 6/4/25 20:34, Philipp Stanner wrote:
> macio enables its PCI device with pcim_enable_device(). This,
> implicitly, switches the function pci_request_regions() into managed
> mode, where it becomes a devres function.
>
> The PCI subsystem wants to remove this hybrid nature from its
> interfaces. To do so, users of the aforementioned combination of
> functions must be ported to non-hybrid functions.
>
> Replace the call to sometimes-managed pci_request_regions() with one to
> the always-managed pcim_request_all_regions().
>
> Signed-off-by: Philipp Stanner <phasta@kernel.org>
Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
--
Damien Le Moal
Western Digital Research
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] ata: macio: Use non-hybrid PCI devres API
2025-06-04 11:34 [PATCH] ata: macio: Use non-hybrid PCI devres API Philipp Stanner
2025-06-06 1:17 ` Damien Le Moal
@ 2025-06-10 12:31 ` Niklas Cassel
2025-06-10 13:19 ` Philipp Stanner
1 sibling, 1 reply; 4+ messages in thread
From: Niklas Cassel @ 2025-06-10 12:31 UTC (permalink / raw)
To: Philipp Stanner; +Cc: Damien Le Moal, linux-ide, linux-kernel
Hello Philipp,
On Wed, Jun 04, 2025 at 01:34:24PM +0200, Philipp Stanner wrote:
> macio enables its PCI device with pcim_enable_device(). This,
> implicitly, switches the function pci_request_regions() into managed
> mode, where it becomes a devres function.
>
> The PCI subsystem wants to remove this hybrid nature from its
> interfaces. To do so, users of the aforementioned combination of
> functions must be ported to non-hybrid functions.
>
> Replace the call to sometimes-managed pci_request_regions() with one to
> the always-managed pcim_request_all_regions().
>
> Signed-off-by: Philipp Stanner <phasta@kernel.org>
> ---
> Hi,
> seems I forgot sending this patch out a while ago. Mea culpa.
>
> PCI has currently chained the changes mentioned above queued up for
chained?
> Linus, so it's probably a good idea to get this into macio relatively
> soonish. Otherwise the driver would likely fail to reload in v6.16,
> because the device's PCI regions remain blocked.
I can queue this up for 6.16, but then I think you need to rewrite the
commit message to motivate why it is a fix (i.e. why it deserves to go
in to 6.16-rc2).
Or, I can just queue it up for 6.17.
What do you prefer?
Kind regards,
Niklas
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] ata: macio: Use non-hybrid PCI devres API
2025-06-10 12:31 ` Niklas Cassel
@ 2025-06-10 13:19 ` Philipp Stanner
0 siblings, 0 replies; 4+ messages in thread
From: Philipp Stanner @ 2025-06-10 13:19 UTC (permalink / raw)
To: Niklas Cassel, Philipp Stanner; +Cc: Damien Le Moal, linux-ide, linux-kernel
On Tue, 2025-06-10 at 14:31 +0200, Niklas Cassel wrote:
> Hello Philipp,
>
> On Wed, Jun 04, 2025 at 01:34:24PM +0200, Philipp Stanner wrote:
> > macio enables its PCI device with pcim_enable_device(). This,
> > implicitly, switches the function pci_request_regions() into
> > managed
> > mode, where it becomes a devres function.
> >
> > The PCI subsystem wants to remove this hybrid nature from its
> > interfaces. To do so, users of the aforementioned combination of
> > functions must be ported to non-hybrid functions.
> >
> > Replace the call to sometimes-managed pci_request_regions() with
> > one to
> > the always-managed pcim_request_all_regions().
> >
> > Signed-off-by: Philipp Stanner <phasta@kernel.org>
> > ---
> > Hi,
> > seems I forgot sending this patch out a while ago. Mea culpa.
> >
> > PCI has currently chained the changes mentioned above queued up for
>
> chained?
"Queued up for the merge window".
Now it's already in Linus's tree.
>
>
> > Linus, so it's probably a good idea to get this into macio
> > relatively
> > soonish. Otherwise the driver would likely fail to reload in v6.16,
> > because the device's PCI regions remain blocked.
>
> I can queue this up for 6.16, but then I think you need to rewrite
> the
> commit message to motivate why it is a fix (i.e. why it deserves to
> go
> in to 6.16-rc2).
>
> Or, I can just queue it up for 6.17.
No, this needs to go into 6.16. As I state above, all kernels from 6.16
onwards which don't have this patch will see pata_macio fail in case of
a driver-reload, because the PCI regions remain blocked.
I can fish out the commit ID and provide an adjusted descrption with
Fixes: tag as a v2.
Thx
P.
>
> What do you prefer?
>
>
> Kind regards,
> Niklas
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-06-10 13:19 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-04 11:34 [PATCH] ata: macio: Use non-hybrid PCI devres API Philipp Stanner
2025-06-06 1:17 ` Damien Le Moal
2025-06-10 12:31 ` Niklas Cassel
2025-06-10 13:19 ` Philipp Stanner
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).