[alsa-devel] [PATCH 2/4] ALSA: info: Minor optimization
Takashi Iwai
tiwai at suse.de
Tue Feb 5 20:27:12 CET 2019
On Tue, 05 Feb 2019 18:55:50 +0100,
Jaroslav Kysela wrote:
>
> Dne 5.2.2019 v 17:07 Takashi Iwai napsal(a):
> > Just a minor code optimization to reduce the source code size
> > slightly. No functional changes.
> >
> > Signed-off-by: Takashi Iwai <tiwai at suse.de>
> > ---
> > sound/core/info.c | 23 ++++++++---------------
> > 1 file changed, 8 insertions(+), 15 deletions(-)
> >
> > diff --git a/sound/core/info.c b/sound/core/info.c
> > index 76800326ac56..12b80e6d9ee4 100644
> > --- a/sound/core/info.c
> > +++ b/sound/core/info.c
> > @@ -463,11 +463,12 @@ static struct snd_info_entry *create_subdir(struct module *mod,
> > }
> >
> > static struct snd_info_entry *
> > -snd_info_create_entry(const char *name, struct snd_info_entry *parent);
> > +snd_info_create_entry(const char *name, struct snd_info_entry *parent,
> > + struct module *module);
> >
> > int __init snd_info_init(void)
> > {
> > - snd_proc_root = snd_info_create_entry("asound", NULL);
> > + snd_proc_root = snd_info_create_entry("asound", NULL, THIS_MODULE);
> > if (!snd_proc_root)
> > return -ENOMEM;
> > snd_proc_root->mode = S_IFDIR | 0555;
> > @@ -684,7 +685,8 @@ EXPORT_SYMBOL(snd_info_get_str);
> > * Return: The pointer of the new instance, or %NULL on failure.
> > */
> > static struct snd_info_entry *
> > -snd_info_create_entry(const char *name, struct snd_info_entry *parent)
> > +snd_info_create_entry(const char *name, struct snd_info_entry *parent,
> > + struct module *module)
> > {
> > struct snd_info_entry *entry;
> > entry = kzalloc(sizeof(*entry), GFP_KERNEL);
> > @@ -701,6 +703,7 @@ snd_info_create_entry(const char *name, struct snd_info_entry *parent)
> > INIT_LIST_HEAD(&entry->children);
> > INIT_LIST_HEAD(&entry->list);
> > entry->parent = parent;
> > + entry->module = module;
> > if (parent)
> > list_add_tail(&entry->list, &parent->children);
> > return entry;
> > @@ -720,14 +723,9 @@ struct snd_info_entry *snd_info_create_module_entry(struct module * module,
> > const char *name,
> > struct snd_info_entry *parent)
> > {
> > - struct snd_info_entry *entry;
> > -
> > if (!parent)
> > parent = snd_proc_root;
> > - entry = snd_info_create_entry(name, parent);
> > - if (entry)
> > - entry->module = module;
> > - return entry;
> > + return snd_info_create_entry(name, parent, module);
> > }
> > EXPORT_SYMBOL(snd_info_create_module_entry);
> >
> > @@ -745,14 +743,9 @@ struct snd_info_entry *snd_info_create_card_entry(struct snd_card *card,
> > const char *name,
> > struct snd_info_entry * parent)
> > {
> > - struct snd_info_entry *entry;
> > -
> > if (!parent)
> > parent = card->proc_root;
> > - entry = snd_info_create_entry(name, parent);
> > - if (entry)
> > - entry->module = card->module;
> > - return entry;
> > + return snd_info_create_entry(name, parent, card->module);
> > }
> > EXPORT_SYMBOL(snd_info_create_card_entry);
>
> Won't be better to define those two above functions as inline now?
That's possible, but then we'd need to export snd_proc_root. Also
snd_info_create_entry() is a local function right now, so we'll need
to export this one, too. Overall, there won't be any big gain, I
guess.
thanks,
Takashi
>
> For rest: Reviewed-by: Jaroslav Kysela <perex at perex.cz>
>
> Thanks,
> Jaroslav
>
> --
> Jaroslav Kysela <perex at perex.cz>
> Linux Sound Maintainer; ALSA Project; Red Hat, Inc.
>
More information about the Alsa-devel
mailing list