From: ppisa Date: Sun, 2 Nov 2008 12:35:20 +0000 (+0000) Subject: Use send_sig() instead of kill_proc() in emulated kthread support. X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lincan.git/commitdiff_plain/7c1986e7d366ac059716effeac68e5e081a081c9?hp=c1a3209a7cdb41a4a78caf3a5e0d3435deb4e43d Use send_sig() instead of kill_proc() in emulated kthread support. This allows to compile driver on latest 2.6.27+ kernels, but is incorrect anyway. The local code for kernel thread support is not more needed for recent 2.6 kernels and code should be modified to emulate same interface for older ones. --- diff --git a/lincan/src/kthread.c b/lincan/src/kthread.c index ae43c30..a1563ce 100644 --- a/lincan/src/kthread.c +++ b/lincan/src/kthread.c @@ -118,7 +118,13 @@ void stop_kthread(kthread_t *kthread) the flags are visible on all CPUs. */ mb(); +#warning The local code for kernel thread support is not more needed for recent 2.6 kernels +#warning and code should be modified to emulate same interface for older kernels +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) kill_proc(kthread->thread->pid, SIGKILL, 1); +#else /* >= 2,6,20 */ + send_sig(SIGKILL, kthread->thread, 1); +#endif /* >= 2,6,20 */ /* block till thread terminated */ down(&kthread->startstop_sem); @@ -129,7 +135,9 @@ void stop_kthread(kthread_t *kthread) /* now we are sure the thread is in zombie state. We notify keventd to clean the process up. */ +#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20)) kill_proc(2, SIGCHLD, 1); +#endif /* >= 2,6,20 */ }