I just did the modify as you said and patch VMware as well.
And that scanner works fine now.

Will you take this patch?

Thanks

Chris

===== devio.c 1.9 vs edited =====
--- 1.9/drivers/usb/devio.c     Thu Apr 18 05:34:31 2002
+++ edited/devio.c      Tue Feb  4 09:39:15 2003
@@ -800,7 +800,7 @@
                                return -EINVAL;
                }
                /* min 8 byte setup packet, max arbitrary */
-               if (uurb.buffer_length < 8 || uurb.buffer_length > PAGE_SIZE)
+               if (uurb.buffer_length < 8 || uurb.buffer_length > 16*PAGE_SIZE)       
+                 return -EINVAL;
                if (!(dr = kmalloc(sizeof(devrequest), GFP_KERNEL)))
                        return -ENOMEM;


On Wed, Feb 05, 2003 at 01:31:21AM +0100, Oliver Neukum wrote:
> Am Mittwoch, 5. Februar 2003 00:49 schrieb Christopher Li:
> > I have  a question about the buffer size limit in the setup URB.
> > This limit is in the usbdevfs, the usb core seems doesn't  care:
> >
> > in devio.c, function proc_submiturb:
> >
> >             /* min 8 byte setup packet, max arbitrary */
> >             if (uurb.buffer_length < 8 || uurb.buffer_length >
> > PAGE_SIZE)
> >                     return -EINVAL;
> >
> > So usbdevfs will refuse to serve the setup packet bigger than one page.
> >
> > Is there a reason why is that? I am asking because some user get some
> 
> It would seem to me that the limit the code could support is 64K.
> IMHO there's nothing wrong with using that as an upper limit. It makes
> kmalloc likely to fail, but the function would fail anyway.
> 
>       Regards
>               Oliver
> 




-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to