[firefly] [PATCH] Bring 'Hello World' kernel modules to the modern era.

Daniel Baluta daniel.baluta at gmail.com
Sun Sep 9 23:39:58 EEST 2012


We should add a prefix to each commit subject. In our case I would prefer
the subject to be:
misc-modules: bring 'Hello World' kernel modules to the modern era

On Sun, Sep 9, 2012 at 4:57 PM, Silviu-Mihai Popescu
<silviupopescu1990 at gmail.com> wrote:
> Updated the modules described in Chapter 2 of LDD3 to use pr_fmt()
> and place initialization and cleanup routines in special code
> sections.
>
> Signed-off-by: Silviu-Mihai Popescu <silviupopescu1990 at gmail.com>
> ---
>  misc-modules/hello.c  |   12 ++++++++----
>  misc-modules/hellop.c |   12 ++++++++----
>  2 files changed, 16 insertions(+), 8 deletions(-)
>
> diff --git a/misc-modules/hello.c b/misc-modules/hello.c
> index 85cd6d0..5e4b961 100644
> --- a/misc-modules/hello.c
> +++ b/misc-modules/hello.c
> @@ -3,17 +3,21 @@
>   */
>  #include <linux/init.h>
>  #include <linux/module.h>
> +#include <linux/kernel.h>
> +
>  MODULE_LICENSE("Dual BSD/GPL");
> +MODULE_AUTHOR("LDD3, Silviu-Mihai Popescu");
> +MODULE_DESCRIPTION("'Hello World' module in LDD3, with modern practices.");
>
> -static int hello_init(void)
> +static int __init hello_init(void)
>  {
> -       printk(KERN_ALERT "Hello, world\n");
> +       pr_alert("Hello, world\n");
>         return 0;
>  }
>
> -static void hello_exit(void)
> +static void __exit hello_exit(void)
>  {
> -       printk(KERN_ALERT "Goodbye, cruel world\n");
> +       pr_alert("Goodbye, cruel world\n");
>  }
>
>  module_init(hello_init);
> diff --git a/misc-modules/hellop.c b/misc-modules/hellop.c
> index 88eaa67..526d7ab 100644
> --- a/misc-modules/hellop.c
> +++ b/misc-modules/hellop.c
> @@ -4,8 +4,12 @@
>  #include <linux/init.h>
>  #include <linux/module.h>
>  #include <linux/moduleparam.h>
> +#include <linux/kernel.h>
>
>  MODULE_LICENSE("Dual BSD/GPL");
> +MODULE_AUTHOR("LDD3, Silviu-Mihai Popescu");
> +MODULE_DESCRIPTION("'Hello World with params' module in LDD3.\
> +                       with modern practices.");
>
>  /*
>   * These lines, although not shown in the book,
> @@ -23,17 +27,17 @@ static int howmany = 1;
>  module_param(howmany, int, S_IRUGO);
>  module_param(whom, charp, S_IRUGO);
>
> -static int hello_init(void)
> +static int __init hello_init(void)
>  {
>         int i;
>         for (i = 0; i < howmany; i++)
> -               printk(KERN_ALERT "(%d) Hello, %s\n", i, whom);
> +               pr_alert("(%d) Hello, %s\n", i, whom);
>         return 0;
>  }
>
> -static void hello_exit(void)
> +static void __exit hello_exit(void)
>  {
> -       printk(KERN_ALERT "Goodbye, cruel world\n");
> +       pr_alert("Goodbye, cruel world\n");
>  }
>
>  module_init(hello_init);
> --
> 1.7.2.5
>
Otherwise the patch looks great. Thanks Silviu!

Daniel.


More information about the firefly mailing list