> -----Original Message-----
> From: Loktionov, Aleksandr <[email protected]>
> Sent: Monday, October 5, 2026 12:22 PM
> To: Yuho Choi <[email protected]>; Nguyen, Anthony L
> <[email protected]>; Kitszel, Przemyslaw
> <[email protected]>
> Cc: Simon Horman <[email protected]>; Lobakin, Aleksander
> <[email protected]>; Hay, Joshua A <[email protected]>; Alan
> Brady <[email protected]>; Samudrala, Sridhar
> <[email protected]>; Burra, Phani R <[email protected]>;
> Andrew Lunn <[email protected]>; David S . Miller
> <[email protected]>; Eric Dumazet <[email protected]>; Jakub Kicinski
> <[email protected]>; Paolo Abeni <[email protected]>; intel-wired-
> [email protected]; [email protected]; [email protected]
> Subject: RE: [PATCH net v2] idpf: Fix vport IRQ name leak on request failure
> 
> 
> 
> > -----Original Message-----
> > From: Yuho Choi <[email protected]>
> > Sent: Sunday, October 4, 2026 8:09 PM
> > To: Nguyen, Anthony L <[email protected]>; Kitszel,
> > Przemyslaw <[email protected]>
> > Cc: Simon Horman <[email protected]>; Lobakin, Aleksander
> > <[email protected]>; Hay, Joshua A
> > <[email protected]>; Alan Brady <[email protected]>;
> > Samudrala, Sridhar <[email protected]>; Burra, Phani R
> > <[email protected]>; Andrew Lunn <[email protected]>; David
> > S . Miller <[email protected]>; Eric Dumazet <[email protected]>;
> > Jakub Kicinski <[email protected]>; Paolo Abeni <[email protected]>;
> > [email protected]; [email protected]; linux-
> > [email protected]; Yuho Choi <[email protected]>
> > Subject: [PATCH net v2] idpf: Fix vport IRQ name leak on request
> > failure
> >
> > idpf_vport_intr_req_irq() allocates a name for each vector IRQ before
> > calling request_irq(). On success, the name is released later through
> > kfree(free_irq()), but when request_irq() fails, the error path only
> > unwinds the previous vectors and the name for the failed one is
> > leaked.
> >
> > Free the allocated name on the request_irq() failure path, as done for
> > the mailbox IRQ in commit 9bff30482c10 ("idpf: Fix mailbox IRQ name
> > leak on request failure"). While at it, fail with -ENOMEM when the
> > name cannot be allocated instead of requesting the IRQ without a name.
> >
> > Fixes: d4d558718266 ("idpf: initialize interrupts and enable vport")
> > Signed-off-by: Yuho Choi <[email protected]>
> > ---
> > Changes in v2:
> > - Correct the Fixes: tag (Simon Horman)
> > - Handle kasprintf() failure (Simon Horman)
> >
> > v1: https://lore.kernel.org/all/20260923234819.702327-1-
> > [email protected]/
> >
> > Compile-tested only (x86_64 defconfig + CONFIG_IDPF=m, W=1).
> >
> >  drivers/net/ethernet/intel/idpf/idpf_txrx.c | 5 +++++
> >  1 file changed, 5 insertions(+)
> >
> > diff --git a/drivers/net/ethernet/intel/idpf/idpf_txrx.c
> > b/drivers/net/ethernet/intel/idpf/idpf_txrx.c
> > index 4311ffa30bb1..af3213eae393 100644
> > --- a/drivers/net/ethernet/intel/idpf/idpf_txrx.c
> > +++ b/drivers/net/ethernet/intel/idpf/idpf_txrx.c
> > @@ -4067,12 +4067,17 @@ static int idpf_vport_intr_req_irq(struct
> > idpf_vport *vport,
> >
> >             name = kasprintf(GFP_KERNEL, "%s-%s-%s-%d", drv_name,
> if_name,
> >                              vec_name, vector);
> > +           if (!name) {
> > +                   err = -ENOMEM;
> > +                   goto free_q_irqs;
> > +           }
> >
> >             err = request_irq(irq_num, idpf_vport_intr_clean_queues, 0,
> >                               name, q_vector);
> >             if (err) {
> >                     netdev_err(vport->netdev,
> >                                "Request_irq failed, error: %d\n", err);
> > +                   kfree(name);
> >                     goto free_q_irqs;
> >             }
> >
> >
> > base-commit: 551c722f40809618230001baccf219193e22fc5a
> > --
> > 2.43.0
> 
> Reviewed-by: Aleksandr Loktionov <[email protected]>


Tested-by: Rafal Romanowski <[email protected]>

Reply via email to