Re: [PATCH] kthread: saa7134-tvaudio.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Andrew Morton wrote:
> On Tue, 29 Aug 2006 14:15:55 -0700
> Sukadev Bhattiprolu <[email protected]> wrote:
> 
>> Replace kernel_thread() with kthread_run() since kernel_thread()
>> is deprecated in drivers/modules. 
>>
>> Note that this driver, like a few others, allows SIGTERM. Not
>> sure if that is affected by conversion to kthread. Appreciate
>> any comments on that.
>>
> 
> hm, I think this driver needs more help.
> 
> - It shouldn't be using signals at all, really.  Signals are for
>   userspace IPC.  The kernel internally has better/richer/faster/tighter
>   ways of inter-thread communication.
> 
> - saa7134_tvaudio_fini()-versus-tvaudio_sleep() looks racy:
> 
> 	if (dev->thread.scan1 == dev->thread.scan2 && !dev->thread.shutdown) {
> 		if (timeout < 0) {
> 			set_current_state(TASK_INTERRUPTIBLE);
> 			schedule();
> 
>   If the wakeup happens after the test of dev->thread.shutdown, that sleep will
>   be permanent.
> 
> 
> So in general, yes, the driver should be converted to the kthread API -
> this is a requirement for virtualisation, but I forget why, and that's the
> "standard" way of doing it.
> 
> - The signal stuff should go away if at all possible.

The thread of this driver allows SIGTERM for some obscure reason. Not sure
why, I didn't find anything relying on it.

could we just remove the allow_signal() ?

C.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux