On Wed, Jun 01, 2005 at 12:12:58AM +0200, Harald Welte wrote:

> > > Wouldn't it help to associate the URB with the file (instaed of the
> > > task), and then send the signal to any task that still has opened the
> > > file?  I'm willing to hack up a patch, if this is considered a sane fix.
> > 
> > Sounds reasonable, except that not all such tasks will want the signal.
> > Though I guess the infrastructure to filter the signal out already exists,
> > so the main missing piece is that urb-to-file binding.
> 
> Ok, I'll get something coded shortly.

Unfortunately this approach is not feasible, since there is no 'reverse
mapping' from a file to a process.  So for every URB delivery, we would
have to walk that task_list and check which tasks have opened this file.

So what do we do now?

A reimplementation of async URB handling (probably use the AIO code)
from userspace is a significant amount of work.

Meanwhile, this bug allows any regular non-root userspace program with
access to a single USB device to oops the kernel, so a short-term fix is
definitely required for security reasons.

-- 
- Harald Welte <[EMAIL PROTECTED]>                      http://gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
                                                  (ETSI EN 300 175-7 Ch. A6)

Attachment: pgpCgdcQePmVa.pgp
Description: PGP signature

Reply via email to