On Monday 28 August 2006 1:27 pm, Sam Bishop wrote:
> On Thu, Aug 24, 2006 at 03:04:33PM -0700, David Brownell wrote:
> > Just revert to the previous language ... if you want, emphasize that
> > the scanning is to figure out precisely what changed.
> 
> How's this?  (I've made a few other small changes too.)
> 
> 
> 
> A little more detail on how and when to poll() /proc/bus/usb/devices.
> 
> Signed-off-by: Sam Bishop <[EMAIL PROTECTED]>
> 
> ---
> 
> --- linux-2.6.17.9/Documentation/DocBook/usb.tmpl.orig        2006-08-24 
> 13:32:07.602622546 -0600
> +++ linux-2.6.17.9/Documentation/DocBook/usb.tmpl     2006-08-28 
> 14:19:40.719391520 -0600
> @@ -463,14 +463,25 @@
>           file in your Linux kernel sources.
>           </para>
>  
> -         <para>Otherwise the main use for this file from programs
> -         is to poll() it to get notifications of usb devices
> -         as they're plugged or unplugged.
> -         To see what changed, you'd need to read the file and
> -         compare "before" and "after" contents, scan the filesystem,
> -         or see its hotplug event.
> +         <para>This file, in combination with the poll() system call, can
> +         also be used to detect when devices are added or removed:
> +<programlisting>int fd;
> +struct pollfd pfd;
> +
> +fd = open("/proc/bus/usb/devices", O_RDONLY);
> +pfd = { fd, POLLIN, 0 };
> +for (;;) {
> +     /* The first time through, this call will return immediately. */
> +     poll(&amp;pfd, 1, -1);
> +
> +     /* To see what's changed, compare the file's previous and current
> +        contents or scan the filesystem.  (Scanning is more precise.) */

Rather than "more precise", "less error prone" ... there are nasty error
paths in the "compare" case.  Better yet, don't mention that.


> +}</programlisting>
> +         Note that this behavior is intended to be used for informational
> +         and debug purposes.  It would be more appropriate to use programs
> +         such as udev or HAL to initialize a device or start a user-mode
> +         helper program, for instance.
>           </para>
> -
>       </sect1>
>  
>       <sect1>
> 
> -------------------------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> _______________________________________________
> linux-usb-devel@lists.sourceforge.net
> To unsubscribe, use the last form field at:
> https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
> 

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
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