Re: [PATCH v2 net-next 1/9] sunvnet: make sunvnet common code dynamically loadable

From: David Miller
Date: Wed Feb 08 2017 - 14:36:38 EST


From: Shannon Nelson <shannon.nelson@xxxxxxxxxx>
Date: Tue, 7 Feb 2017 14:12:54 -0800

> +static int __init sunvnet_common_init(void)
> +{
> + pr_info("%s\n", version);
> + return 0;
> +}
> +module_init(sunvnet_common_init);
> +
> +static void __exit sunvnet_common_exit(void)
> +{
> + /* Empty function, just here to fill the exit function pointer
> + * slot. In some combinations of older gcc and newer kernel,
> + * leaving this undefined results in the kernel marking it as a
> + * permanent module; it will show up in lsmod output as [permanent]
> + * and not be unloadable.
> + */
> +}
> +module_exit(sunvnet_common_exit);
> +

This module is just providing infrastructure for other modules.

So skip the init function, and that way you don't need the exit
function either.

The kernel log message when the real sunvnet driver loads is
sufficient, you don't need one here.