On Tue, 27 Sep 2005, Sergey Vlasov wrote:
> 
> The initial patch added get_task_struct()/put_task_struct() calls to
> fix this - are they forbidden too?

They are sure as hell not something that a _driver_ is supposed to use.

> It at least has sigio_perm(), which prevents exploiting it to send
> signals to tasks you don't have access to.

And the point is, you can do that _too_.

Do it right. Don't cache pointers to threads. Use the pid.

Your security arguments are _pointless_. As proven by the fact that SIGIO 
happily uses a pid, and gets it right. Try to use _that_ infrastructure 
instead, since that's what it's _meant_ for.

The fact is, having drivers much around with thread locking is not
acceptable. Drivers _will_ get it wrong, and even if they didn't, it's
kernel internal data structures that drivers have no business in touching.

                        Linus


-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to