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
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel