Am Mittwoch, 16. Januar 2008 16:26:03 schrieb Alan Stern:
> On Tue, 15 Jan 2008, Oliver Neukum wrote:
> 
> > > > > Do all ioctls filter through this routine?  It looks like requests 
> > > > > coming through block/scsi_ioctl.c will bypass this code.  Have you 
> > > > > decided to ignore those requests for now?
> > > > 
> > > > I found no way to deal with them without pushing the autosuspend code
> > > > into the generic code.
> > > 
> > > I thought up something.  It's a bit hackish, so people probably won't
> > > like it...  You could define a new SCSI_IOCTL_AUTORESUME code, for
> > > internal use only, and pass it down to the driver from within the block
> > > layer.
> > 
> > Argh. There's a limit to depth I'll sink. If you can't do better, please put
> > autoresume/autosuspend into the driver core.
> 
> This entire issue needs more thought.  There must be plenty of ioctl 
> calls which shouldn't force a device to remain resumed.
Sure. The question is whether it is worth a lot of effort to filter them.
Are ioctl()s on block devices common?

> Also, your implementation in terms of a single bit will work only for
> single-open devices.  If multiple-open is allowed then something would
> have to be stored in the file structure.  More generic code...

Why? I don't think you can assume that a user intends an ioctl() to be
"valid" only for the duration of that particular file. I intentionally put the
put into release which is called for the last close().

        Regards
                Oliver
-
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to