Re: [PATCH] mux-core: make it explicitly non-modular

From: Peter Rosin
Date: Wed Mar 08 2017 - 04:56:22 EST

On 2017-03-07 23:41, Paul Gortmaker wrote:
> The Kconfig currently controlling compilation of this code is:
> drivers/mux/Kconfig:menuconfig MULTIPLEXER
> drivers/mux/Kconfig: bool "Multiplexer subsystem"
> ...meaning that it currently is not being built as a module by anyone.
> Lets remove the couple traces of modular infrastructure use, so that
> when reading the driver there is no doubt it is builtin-only.
> Hence we delete the MODULE_LICENSE tag etc. since all that information
> is already contained at the top of the file in the comments.

Hi Paul,

Yup, it is confirmed, I don't really know what I'm doing. In particular
when in comes to modules... I did wonder about this when I wrote the
code and one specific thing I wondered about was how module loading is

I can imagine that calling a function that happens to be exported from
a module triggers its loading and that failure to load the module leads
to an oops. But I don't know if that is even remotely correct? Is it?

Is there a short answer? Or what should I read for a longer one?

Anyway, I'll add this to the queue, and fold it if I happen to rebase.


> Cc: Peter Rosin <peda@xxxxxxxxxx>
> Cc: Jonathan Cameron <jic23@xxxxxxxxxx>
> Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
> ---
> [feel free to fold this change into the original addition commit if
> you happen to be rebasing for some other reason... ]
> drivers/mux/mux-core.c | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
> diff --git a/drivers/mux/mux-core.c b/drivers/mux/mux-core.c
> index 46088a0f9677..7b4af6370e37 100644
> --- a/drivers/mux/mux-core.c
> +++ b/drivers/mux/mux-core.c
> @@ -15,7 +15,7 @@
> #include <linux/device.h>
> #include <linux/err.h>
> #include <linux/idr.h>
> -#include <linux/module.h>
> +#include <linux/init.h>
> #include <linux/mux.h>
> #include <linux/of.h>
> #include <linux/of_platform.h>
> @@ -408,7 +408,3 @@ void devm_mux_control_put(struct device *dev, struct mux_control *mux)
> EXPORT_SYMBOL_GPL(devm_mux_control_put);
> subsys_initcall(mux_init);
> -
> -MODULE_DESCRIPTION("Multiplexer subsystem");
> -MODULE_AUTHOR("Peter Rosin <peda@xxxxxxxxxx");