lkml.org 
[lkml]   [2007]   [Apr]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] pnpbios: Conert to use the kthread API.
    Date
    From: Eric W. Biederman <ebiederm@xmission.com>

    This patches modifies the pnpbios kernel thread to start
    with ktrhead_run not kernel_thread and deamonize. Doing
    this makes the code a little simpler and easier to maintain.

    Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
    ---
    drivers/pnp/pnpbios/core.c | 16 +++++++---------
    1 files changed, 7 insertions(+), 9 deletions(-)

    diff --git a/drivers/pnp/pnpbios/core.c b/drivers/pnp/pnpbios/core.c
    index c2ed53f..3a201b7 100644
    --- a/drivers/pnp/pnpbios/core.c
    +++ b/drivers/pnp/pnpbios/core.c
    @@ -62,6 +62,7 @@
    #include <linux/delay.h>
    #include <linux/acpi.h>
    #include <linux/freezer.h>
    +#include <linux/kthread.h>

    #include <asm/page.h>
    #include <asm/desc.h>
    @@ -159,9 +160,7 @@ static int pnp_dock_thread(void * unused)
    {
    static struct pnp_docking_station_info now;
    int docked = -1, d = 0;
    - daemonize("kpnpbiosd");
    - allow_signal(SIGKILL);
    - while(!unloading && !signal_pending(current))
    + while (!unloading)
    {
    int status;

    @@ -170,11 +169,8 @@ static int pnp_dock_thread(void * unused)
    */
    msleep_interruptible(2000);

    - if(signal_pending(current)) {
    - if (try_to_freeze())
    - continue;
    - break;
    - }
    + if (try_to_freeze())
    + continue;

    status = pnp_bios_dock_station_info(&now);

    @@ -582,6 +578,7 @@ subsys_initcall(pnpbios_init);

    static int __init pnpbios_thread_init(void)
    {
    + struct task_struct *task;
    #if defined(CONFIG_PPC_MERGE)
    if (check_legacy_ioport(PNPBIOS_BASE))
    return 0;
    @@ -590,7 +587,8 @@ static int __init pnpbios_thread_init(void)
    return 0;
    #ifdef CONFIG_HOTPLUG
    init_completion(&unload_sem);
    - if (kernel_thread(pnp_dock_thread, NULL, CLONE_KERNEL) > 0)
    + task = kthread_run(pnp_dock_thread, NULL, "kpnpbiosd");
    + if (!IS_ERR(task))
    unloading = 0;
    #endif
    return 0;
    --
    1.5.0.g53756
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-04-19 10:07    [W:2.261 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site