From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752181AbaLCTbQ (ORCPT ); Wed, 3 Dec 2014 14:31:16 -0500 Received: from cantor2.suse.de ([195.135.220.15]:37682 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752145AbaLCTbN (ORCPT ); Wed, 3 Dec 2014 14:31:13 -0500 Date: Wed, 03 Dec 2014 20:31:11 +0100 Message-ID: From: Takashi Iwai To: Joe Perches Cc: SF Markus Elfring , Jaroslav Kysela , alsa-devel@alsa-project.org, LKML , kernel-janitors@vger.kernel.org, Julia Lawall Subject: Re: [PATCH] ALSA: ctxfi: Neaten get_daio_rsc In-Reply-To: <1417629571.2902.16.camel@perches.com> References: <5307CAA2.8060406@users.sourceforge.net> <530A086E.8010901@users.sourceforge.net> <530A72AA.3000601@users.sourceforge.net> <530B5FB6.6010207@users.sourceforge.net> <530C5E18.1020800@users.sourceforge.net> <530CD2C4.4050903@users.sourceforge.net> <530CF8FF.8080600@users.sourceforge.net> <530DD06F.4090703@users.sourceforge.net> <5317A59D.4@users.sourceforge.net> <547E2612.6010304@users.sourceforge.net> <547EF64B.1080403@users.sourceforge.net> <1417626888.2902.13.camel@perches.com> <1417629571.2902.16.camel@perches.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/24.4 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org At Wed, 03 Dec 2014 09:59:31 -0800, Joe Perches wrote: > > Move the pointer declarations into the blocks that use them. > Neaten the kfree calls when the _init functions fail. > > Trivially reduces object size (defconfig x86-64) > > $ size sound/pci/ctxfi/ctdaio.o.* > text data bss dec hex filename > 5287 224 0 5511 1587 sound/pci/ctxfi/ctdaio.o.new > 5319 224 0 5543 15a7 sound/pci/ctxfi/ctdaio.o.old > > Signed-off-by: Joe Perches > Noticed-by: Markus Elfring > --- > On Wed, 2014-12-03 at 18:30 +0100, Takashi Iwai wrote: > > At Wed, 03 Dec 2014 09:14:48 -0800, Joe Perches wrote: > > > On Wed, 2014-12-03 at 13:41 +0100, Takashi Iwai wrote: > > > Takashi, what did you think of this? > > > https://lkml.org/lkml/2014/12/2/771 > > > > > > Just unnecessary? > > > > Well, this one looks more consistent. But honestly speaking, it's > > rather a matter of taste. So I'm not so much inclined to merge the > > stuff, too, sorry. If it's proven to reduce the compiled size, etc, > > I'll happily apply it, though. Thanks, applied now. Takashi > > sound/pci/ctxfi/ctdaio.c | 30 +++++++++++++----------------- > 1 file changed, 13 insertions(+), 17 deletions(-) > > diff --git a/sound/pci/ctxfi/ctdaio.c b/sound/pci/ctxfi/ctdaio.c > index c1c3f88..9b87dd2 100644 > --- a/sound/pci/ctxfi/ctdaio.c > +++ b/sound/pci/ctxfi/ctdaio.c > @@ -528,8 +528,6 @@ static int get_daio_rsc(struct daio_mgr *mgr, > struct daio **rdaio) > { > int err; > - struct dai *dai = NULL; > - struct dao *dao = NULL; > unsigned long flags; > > *rdaio = NULL; > @@ -544,27 +542,30 @@ static int get_daio_rsc(struct daio_mgr *mgr, > return err; > } > > + err = -ENOMEM; > /* Allocate mem for daio resource */ > if (desc->type <= DAIO_OUT_MAX) { > - dao = kzalloc(sizeof(*dao), GFP_KERNEL); > - if (!dao) { > - err = -ENOMEM; > + struct dao *dao = kzalloc(sizeof(*dao), GFP_KERNEL); > + if (!dao) > goto error; > - } > + > err = dao_rsc_init(dao, desc, mgr); > - if (err) > + if (err) { > + kfree(dao); > goto error; > + } > > *rdaio = &dao->daio; > } else { > - dai = kzalloc(sizeof(*dai), GFP_KERNEL); > - if (!dai) { > - err = -ENOMEM; > + struct dai *dai = kzalloc(sizeof(*dai), GFP_KERNEL); > + if (!dai) > goto error; > - } > + > err = dai_rsc_init(dai, desc, mgr); > - if (err) > + if (err) { > + kfree(dai); > goto error; > + } > > *rdaio = &dai->daio; > } > @@ -575,11 +576,6 @@ static int get_daio_rsc(struct daio_mgr *mgr, > return 0; > > error: > - if (dao) > - kfree(dao); > - else if (dai) > - kfree(dai); > - > spin_lock_irqsave(&mgr->mgr_lock, flags); > daio_mgr_put_rsc(&mgr->mgr, desc->type); > spin_unlock_irqrestore(&mgr->mgr_lock, flags); > >