Hi,

the driver is registering the device too early, so that open may
see a partially initialised device.

        Regards
                Oliver


You can import this changeset into BK by piping this whole message to:
'| bk receive [path to repository]' or apply the patch as usual.

===================================================================


[EMAIL PROTECTED], 2003-07-16 20:54:53+02:00, [EMAIL PROTECTED]
  - make sure only fully initialised devices are registered


 dabusb.c |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)


diff -Nru a/drivers/usb/media/dabusb.c b/drivers/usb/media/dabusb.c
--- a/drivers/usb/media/dabusb.c        Wed Jul 16 20:55:43 2003
+++ b/drivers/usb/media/dabusb.c        Wed Jul 16 20:55:43 2003
@@ -721,7 +721,7 @@
 
 
 /* --------------------------------------------------------------------- */
-static int dabusb_probe (struct usb_interface *intf, 
+static int dabusb_probe (struct usb_interface *intf,
                         const struct usb_device_id *id)
 {
        struct usb_device *usbdev = interface_to_usbdev(intf);
@@ -738,9 +738,7 @@
        if (intf->altsetting->desc.bInterfaceNumber != _DABUSB_IF && 
usbdev->descriptor.idProduct == 0x9999)
                return -ENODEV;
 
-       retval = usb_register_dev(intf, &dabusb_class);
-       if (retval)
-               return -ENOMEM;
+
 
        s = &dabusb[intf->minor];
 
@@ -766,8 +764,15 @@
                }
        }
        dbg("bound to interface: %d", ifnum);
-       up (&s->mutex);
        usb_set_intfdata (intf, s);
+       up (&s->mutex);
+
+       retval = usb_register_dev(intf, &dabusb_class);
+       if (retval) {
+               usb_set_intfdata (intf, NULL);
+               return -ENOMEM;
+       }
+
        return 0;
 
       reject:

===================================================================


This BitKeeper patch contains the following changesets:
1.2139
## Wrapped with gzip_uu ##


begin 664 bkpatch30459
M'XL(`*^?%3\``\V4;6_3,!#'7\>?XJ1)4\=(8\?.(^HTV"I`[$F#O4.:W.32
M1DV:RG8&$^&[XS1CT\0V8+PABF+'=_>[\_DO;\&%1I4Z355>H2);\*[1)G7L
MO&YS7(U7V"[;>MRHN;6=-XVU>8NF1F\(\#XI1.TMUJV>^0&Q/F?29`NP)ITZ
M;,QO5\SU&E/G?/KVXNCU.2&3"1PLY&J.']'`9$)FR_V\Q6J\5(U<].FZ6W/G
M4\H8\P/[EMAIL PROTECTED])<4L3,A0T/X#E=]'<1JQD,5<^%&/"@4Y
M!#;V&4^`<H]&'@[EMAIL PROTECTED]'PRX#EY(W\._U'Y`,7*CE$D&W"J%9
M5==0M)7]EJO2E+(J->:0XU69H09I713.2VU084X^@)^$`25G=VTE[E\^A%!)
MR=X#>\E5WP#MV5/V<CFSPSB[VY:@"0L[&O)8=%D<%J+`(BFDS)G(GNC=/6J-
M>2GOL6_.*1`![0*1^'PCFL=C'E;1\RLG<]O>_8&4-?5OJPTM*^(1B[J`)33:
MJ$KXOVB*_HFF*+C!?R&JH?&GX*HOF]>*Y.R),WB&Y`XC7P`C[X=!&VG*S-9F
M8&!>KE4S0QAIH]K,0+]BC:@*F2&\L-/BI44(!MPB!+>(S_8_3#;(B$),G'8-
MHVWM[M6MP:\[KZR#H]!<R0HF&][/#5_:+HPV1-B^29Y54FL;XI0%C(:@'?A&
M'*<W:C1]+44NC82;P).+HZ/>O\_0JA6XTY/3X^FQ7?EN\]Y>AMD"LZ5NZTF"
[EMAIL PROTECTED],?KM>[EMAIL PROTECTED]
`
end



-------------------------------------------------------
This SF.net email is sponsored by: VM Ware
With VMware you can run multiple operating systems on a single machine.
WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the
same time. Free trial click here: http://www.vmware.com/wl/offer/345/0
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to