[Nut-upsuser] tracing a problem with newhidups

Rodrigo Ventura yoda at isr.ist.utl.pt
Thu Jul 13 13:03:55 UTC 2006


On Friday 07 July 2006 20:42, Arnaud Quette wrote:
> > Assuming that MxPS means max packet size, it seems to be 8, which is
> > lower than 20, and therefore it looks like the EINVAL error comes from
> > there. Am I going in the right direction this time?
>
> your guess seems right.
> The best to validate your guess is to modify the 20 to 8 in get_interrupt()
> and to recompile nut.
>
> Let me know the result, and I'll fix that for 2.0.4-pre2 next week.

I did the following patch:

--- libhid.c.orig       Sat Jul  8 00:31:34 2006
+++ libhid.c    Sat Jul  8 00:34:38 2006
@@ -645,7 +645,7 @@
        upsdebugx(2, "Waiting for notifications...");

        /* needs libusb-0.1.8 to work => use ifdef and autoconf */
-       if ((size = libusb_get_interrupt(udev, &buf[0], 20, 5000)) > -1)
+       if ((size = libusb_get_interrupt(udev, &buf[0], 8, 5000)) > -1)
        {
                dump_hex ("Notification", buf, size);


but I can't interpret the result: instead of -22 error, I got
usbdevfs: usb_submit_urb returned -6

so I gave up and switched to a brand new gentoo server with kernel 2.6. All 
seems to be working fine now. No dmesg stuff. Therefore, it definitely looks 
like a kernel 2.4 problem (and/or uhci driver).

Anyway, in case you need further testing with the 2.4, please let me know what 
you need me to do.

Cheers,

Rodrigo

-- 

*** Rodrigo Martins de Matos Ventura <yoda at isr.ist.utl.pt>
***  Web page: http://www.isr.ist.utl.pt/~yoda
***   Teaching Assistant and PhD Student at ISR:
***    Instituto de Sistemas e Robotica, Polo de Lisboa
***     Instituto Superior Tecnico, Lisboa, PORTUGAL
*** PGP fingerprint = 0119 AD13 9EEE 264A 3F10  31D3 89B3 C6C4 60C6 4585



More information about the Nut-upsuser mailing list