[PATCH] gpib: ines: fix I/O region leak in ines_isa_attach() error path

From: tonybanters

Date: Wed May 27 2026 - 16:55:37 EST


If request_irq() fails after request_region() has succeeded,
ines_isa_attach() returns without releasing the I/O region. This
leaks the region and prevents a subsequent attach attempt from
acquiring it.

Release the region on the failure path.

Reported-by: kernel test robot <lkp@xxxxxxxxx>
Reported-by: Dan Carpenter <error27@xxxxxxxxx>
Closes: https://lore.kernel.org/r/202605271229.d8wGTffx-lkp@xxxxxxxxx/
Fixes: e6ab504633e4 ("staging: gpib: Destage gpib")
Cc: stable <stable@xxxxxxxxxx>
Signed-off-by: tonybanters <tonybanters@xxxxxxxxx>
---
drivers/gpib/ines/ines_gpib.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/gpib/ines/ines_gpib.c b/drivers/gpib/ines/ines_gpib.c
index c000f647fbb..cb6ee6882a0 100644
--- a/drivers/gpib/ines/ines_gpib.c
+++ b/drivers/gpib/ines/ines_gpib.c
@@ -911,6 +911,7 @@ static int ines_isa_attach(struct gpib_board *board, const struct gpib_board_con
nec7210_board_reset(nec_priv, board);
if (request_irq(config->ibirq, ines_pci_interrupt, isr_flags, DRV_NAME, board)) {
dev_err(board->gpib_dev, "failed to allocate IRQ %d\n", config->ibirq);
+ release_region(config->ibbase, ines_isa_iosize);
return -1;
}
ines_priv->irq = config->ibirq;
--
2.54.0