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

Andrew Morton akpm at osdl.org
Wed Aug 30 09:49:43 PDT 2006


On Wed, 30 Aug 2006 18:30:27 +0200
Cedric Le Goater <clg at fr.ibm.com> wrote:

> Andrew Morton wrote:
> > On Tue, 29 Aug 2006 14:15:55 -0700
> > Sukadev Bhattiprolu <sukadev at us.ibm.com> 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() ?
> 

I hope so.  However I have a bad feeling that the driver wants to accept
signals from userspace.  Hopefully Mauro & co will be able to clue us in.
_______________________________________________
Containers mailing list
Containers at lists.osdl.org
https://lists.osdl.org/mailman/listinfo/containers




More information about the Devel mailing list