I actually partially implemented a patch to create seperate nodes for
each endpoint on device through devfs obviating the need for using
ioctl's like this. I only got control working, but if there's interest,
I'll finish it.

However, it's still not perfect. More importantly, I want to run it
through Thomas Sailer first since he created usbdevfs. He has stated
that there are locking/race issues which necessitated the creation of
the filesystem.

JE

On Sat, Apr 08, 2000, Pavel Machek <[EMAIL PROTECTED]> wrote:
> Hi!
> 
> This is from my talk with Alexander...
>                                                               Pavel
> 
> ----- Forwarded message from Alexander Viro <[EMAIL PROTECTED]> -----
> 
> X-Authentication-Warning: albert.math.psu.edu: viro owned process doing -bs
> To: Pavel Machek <[EMAIL PROTECTED]>
> cc: Richard Gooch <[EMAIL PROTECTED]>, Manuel Estrada <[EMAIL PROTECTED]>,
>         linux-kernel development list <[EMAIL PROTECTED]>
> Subject: Re: Suggested dual human/binary interface for proc/devfs
> 
> 
> 
> On Fri, 7 Apr 2000, Pavel Machek wrote:
> 
> > Hi!
> > 
> > > > Binary interfaces are the natural interface for programmes. ASCII
> > > > interfaces are the natural interface for humans. We need to support
> > > > both.
> > > 
> > >   OK, tell me when was the last time when you've used a lot of
> > > ioctl()s in your code. How often were they called? Examples,
> > > please. 
> > 
> > [You wanted example, here you are].
> > 
> > Take a look how usbdevfs is done. AFAICS, it is build on ioctls
> > [example from usbd/example]:
> 
> So we have a recently-added braindead interface. Wow.
> 
> > static int usb_control_msg(int fd, u_int8_t requesttype, u_int8_t
> > request, u_int16_t value,
> >                            u_int16_t index, unsigned int size, void
> > *data)
> > {
> >         struct usb_proc_ctrltransfer ctrl;
> > 
> >         ctrl.requesttype = requesttype;
> >         ctrl.request = request;
> >         ctrl.value = value;
> >         ctrl.index = index;
> >         ctrl.length = size;
> >         ctrl.data = data;
> >         return ioctl(fd, USB_PROC_CONTROL, &ctrl);
> > }
> > 
> > Communication with usb device will be mostly done with stuff like
> > that...
> 
> 
> Too bad - that's actually an example of people _not_ understanding UNIX.
> Heck, since they got a filesystem to play with, why not create file such
> that writing there would give the effect of monster above?
> 
> ----- End forwarded message -----
> 
> -- 
> I'm [EMAIL PROTECTED] "In my country we have almost anarchy and I don't care."
> Panos Katsaloulis describing me w.r.t. patents me at [EMAIL PROTECTED]
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to