Re: [PATCHv2 0/5] ata: pata_mpc52xx: fix cleanup ordering and modernize

From: Niklas Cassel

Date: Fri Jun 12 2026 - 07:11:29 EST


On Tue, Jun 09, 2026 at 12:43:06PM -0700, Rosen Penev wrote:
> Fix several lifecycle bugs in the MPC52xx ATA driver:
>
> - The BestComm task IRQ was managed by devm, creating a use-after-free
> and teardown inversion. Switch to non-devm request_irq/free_irq so
> the interrupt is unregistered before the task is freed.
>
> - The error and remove paths called irq_dispose_mapping() explicitly,
> duplicating the one in bcom_task_free(). Remove the redundant calls.
>
> - Replace irq_of_parse_and_map() with platform_get_irq() for proper
> error handling and integration with the platform device model.
>
> - Replace the open-coded of_address_to_resource()/devm_request_mem_region()
> /devm_ioremap() sequence with the standard helper.
>
> v2: add extra patch from sashiko review.
>
> Rosen Penev (5):
> ata: pata_mpc52xx: fix NULL pointer dereference in IRQ handler
> ata: pata_mpc52xx: switch to non-devm request_irq for proper ordering
> ata: pata_mpc52xx: remove redundant irq_dispose_mapping calls
> ata: pata_mpc52xx: convert to platform_get_irq()
> ata: pata_mpc52xx: use devm_platform_get_and_ioremap_resource
>
> drivers/ata/pata_mpc52xx.c | 70 +++++++++++++-------------------------
> 1 file changed, 23 insertions(+), 47 deletions(-)
>
> --
> 2.54.0
>

Will wait with this series, as it seems that Andy's review comment on V1
that the irq should be requested after devm_kzalloc() is still unresolved.


Kind regards,
Niklas