[prev in list] [next in list] [prev in thread] [next in thread]
List: busybox
Subject: Re: [PATCH v1] modprobe: Add support for modprobe.blacklist=module1, module2, ...
From: Denys Vlasenko <vda.linux () googlemail ! com>
Date: 2020-12-21 20:19:07
Message-ID: CAK1hOcNE2Mv-pPrNJ5x8eGeRoKyj+cQdrnRTJYfW-5B4e0F5=g () mail ! gmail ! com
[Download RAW message or body]
On Tue, Nov 3, 2020 at 4:31 PM Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:
>
> Add support for modprobe.blacklist=module1,module2,...
>
> On x86_64 (Debian Unstable) it gives +79 bytes.
>
> function old new delta
> parse_and_add_kcmdline_module_options - 212 +212
> modprobe_main 816 932 +116
> do_modprobe 743 494 -249
> ------------------------------------------------------------------------------
> (add/remove: 1/0 grow/shrink: 1/1 up/down: 328/-249) Total: 79 bytes
>
> On i586 with uClibc (Buildroot 2020.05.3) it gives +68 bytes
> add/remove: 1/0 grow/shrink: 1/1 up/down: 262/-194 (68)
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
> modutils/modprobe.c | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/modutils/modprobe.c b/modutils/modprobe.c
> index eeeff7609b36..18a501a151df 100644
> --- a/modutils/modprobe.c
> +++ b/modutils/modprobe.c
> @@ -663,6 +663,25 @@ int modprobe_main(int argc UNUSED_PARAM, char **argv)
> load_modules_dep();
> }
>
> + /* Handle modprobe.blacklist=module1,module2,... */
> + if (ENABLE_FEATURE_MODPROBE_BLACKLIST) {
> + char *fn, *options, *substr;
> +
> + options = parse_and_add_kcmdline_module_options(NULL, "modprobe");
> + while ((substr = strsep(&options, " ")) != NULL) {
> + fn = is_prefixed_with(substr, "blacklist=");
> + if (fn == NULL)
> + continue;
> +
> + while ((substr = strsep(&fn, ",")) != NULL) {
> + /* blacklist <modulename> */
> + get_or_add_modentry(substr)->flags |= MODULE_FLAG_BLACKLISTED;
> + DBG("blacklist: %s", substr);
> + }
> + }
> + free(options);
Bug. "options" is NULL (strsep does that).
> + }
> +
> rc = 0;
> while ((me = llist_pop(&G.probes)) != NULL) {
> if (me->realnames == NULL) {
Applied. Thank you.
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic