Re: [PATCH] rnbd-clt: Use common error handling code in rnbd_get_iu()
Haris Iqbal <[email protected]> Fri, 12 Jun 2026 11:39:05 +0200
| Newsgroups | org.kernel.vger.kernel-janitors,org.kernel.vger.linux-block,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <CAJpMwygBw3meeMj9mS+0N1p9mM2cOrYo81jf9toBkmD+rREkRQ@mail.gmail.com> |
On Wed, Jun 10, 2026 at 9:03 PM Markus Elfring <[email protected]> wrote: > > From: Markus Elfring <[email protected]> > Date: Wed, 10 Jun 2026 20:58:47 +0200 > > Use an additional label so that a bit of exception handling can be better > reused at the end of an if branch. > > This issue was detected by using the Coccinelle software. > > Signed-off-by: Markus Elfring <[email protected]> > --- > drivers/block/rnbd/rnbd-clt.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/drivers/block/rnbd/rnbd-clt.c b/drivers/block/rnbd/rnbd-clt.c > index 4d6725a0035e..d8e3f145ee2f 100644 > --- a/drivers/block/rnbd/rnbd-clt.c > +++ b/drivers/block/rnbd/rnbd-clt.c > @@ -329,10 +329,8 @@ static struct rnbd_iu *rnbd_get_iu(struct rnbd_clt_session *sess, > return NULL; > > permit = rnbd_get_permit(sess, con_type, wait); > - if (!permit) { > - kfree(iu); > - return NULL; > - } > + if (!permit) > + goto free_iu; > > iu->permit = permit; > /* > @@ -349,6 +347,7 @@ static struct rnbd_iu *rnbd_get_iu(struct rnbd_clt_session *sess, > > if (sg_alloc_table(&iu->sgt, 1, GFP_KERNEL)) { > rnbd_put_permit(sess, permit); > +free_iu: Thanks for the patch. It does what it mentioned in the commit description, but maybe we do not need to do this? If there was a kfree before the last "return iu;", it would have made more sense. But jumping to the middle of a conditional block to reuse the free and return seems forced. > kfree(iu); > return NULL; > } > -- > 2.54.0 >