ALSA: ctxfi: Neaten get_daio_rsc
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 <joe@perches.com> Noticed-by: Markus Elfring <elfring@users.sourceforge.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
103884a351
commit
5395103dcc
1 changed files with 15 additions and 19 deletions
|
@ -528,8 +528,6 @@ static int get_daio_rsc(struct daio_mgr *mgr,
|
||||||
struct daio **rdaio)
|
struct daio **rdaio)
|
||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
struct dai *dai = NULL;
|
|
||||||
struct dao *dao = NULL;
|
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
*rdaio = NULL;
|
*rdaio = NULL;
|
||||||
|
@ -544,27 +542,30 @@ static int get_daio_rsc(struct daio_mgr *mgr,
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
err = -ENOMEM;
|
||||||
/* Allocate mem for daio resource */
|
/* Allocate mem for daio resource */
|
||||||
if (desc->type <= DAIO_OUT_MAX) {
|
if (desc->type <= DAIO_OUT_MAX) {
|
||||||
dao = kzalloc(sizeof(*dao), GFP_KERNEL);
|
struct dao *dao = kzalloc(sizeof(*dao), GFP_KERNEL);
|
||||||
if (!dao) {
|
if (!dao)
|
||||||
err = -ENOMEM;
|
goto error;
|
||||||
|
|
||||||
|
err = dao_rsc_init(dao, desc, mgr);
|
||||||
|
if (err) {
|
||||||
|
kfree(dao);
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
err = dao_rsc_init(dao, desc, mgr);
|
|
||||||
if (err)
|
|
||||||
goto error;
|
|
||||||
|
|
||||||
*rdaio = &dao->daio;
|
*rdaio = &dao->daio;
|
||||||
} else {
|
} else {
|
||||||
dai = kzalloc(sizeof(*dai), GFP_KERNEL);
|
struct dai *dai = kzalloc(sizeof(*dai), GFP_KERNEL);
|
||||||
if (!dai) {
|
if (!dai)
|
||||||
err = -ENOMEM;
|
goto error;
|
||||||
|
|
||||||
|
err = dai_rsc_init(dai, desc, mgr);
|
||||||
|
if (err) {
|
||||||
|
kfree(dai);
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
err = dai_rsc_init(dai, desc, mgr);
|
|
||||||
if (err)
|
|
||||||
goto error;
|
|
||||||
|
|
||||||
*rdaio = &dai->daio;
|
*rdaio = &dai->daio;
|
||||||
}
|
}
|
||||||
|
@ -575,11 +576,6 @@ static int get_daio_rsc(struct daio_mgr *mgr,
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (dao)
|
|
||||||
kfree(dao);
|
|
||||||
else if (dai)
|
|
||||||
kfree(dai);
|
|
||||||
|
|
||||||
spin_lock_irqsave(&mgr->mgr_lock, flags);
|
spin_lock_irqsave(&mgr->mgr_lock, flags);
|
||||||
daio_mgr_put_rsc(&mgr->mgr, desc->type);
|
daio_mgr_put_rsc(&mgr->mgr, desc->type);
|
||||||
spin_unlock_irqrestore(&mgr->mgr_lock, flags);
|
spin_unlock_irqrestore(&mgr->mgr_lock, flags);
|
||||||
|
|
Loading…
Reference in a new issue