| From | "Eric W. Biederman" <> | Subject | [PATCH] macintosh/mediabay: Convert to kthread API. | Date | Thu, 19 Apr 2007 01:58:50 -0600 |
| |
From: Eric W. Biederman <ebiederm@xmission.com>
This patch modifies the startup of the media_bay_task to use kthread_run and not a combination of kernel_thread, deamonize and sigfillset.
In addition since we now always want to ignore signals the MB_IGNORE_SIGNALS define is removed along with the test for signal_pending.
The result is slightly simpler code that is more maintainable.
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> --- drivers/macintosh/mediabay.c | 11 ++--------- 1 files changed, 2 insertions(+), 9 deletions(-)
diff --git a/drivers/macintosh/mediabay.c b/drivers/macintosh/mediabay.c index c803d2b..90c853e 100644 --- a/drivers/macintosh/mediabay.c +++ b/drivers/macintosh/mediabay.c @@ -20,6 +20,7 @@ #include <linux/stddef.h> #include <linux/init.h> #include <linux/ide.h> +#include <linux/kthread.h> #include <asm/prom.h> #include <asm/pgtable.h> #include <asm/io.h> @@ -35,7 +36,6 @@ #define MB_DEBUG -#define MB_IGNORE_SIGNALS #ifdef MB_DEBUG #define MBDBG(fmt, arg...) printk(KERN_INFO fmt , ## arg) @@ -622,11 +622,6 @@ static int media_bay_task(void *x) { int i; - strcpy(current->comm, "media-bay"); -#ifdef MB_IGNORE_SIGNALS - sigfillset(¤t->blocked); -#endif - for (;;) { for (i = 0; i < media_bay_count; ++i) { down(&media_bays[i].lock); @@ -636,8 +631,6 @@ static int media_bay_task(void *x) } msleep_interruptible(MB_POLL_DELAY); - if (signal_pending(current)) - return 0; } } @@ -699,7 +692,7 @@ static int __devinit media_bay_attach(struct macio_dev *mdev, const struct of_de /* Startup kernel thread */ if (i == 0) - kernel_thread(media_bay_task, NULL, CLONE_KERNEL); + kthread_run(media_bay_task, NULL, "media-bay"); 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/
|