Hi,

please apply.

        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], 2002-04-13 10:15:30+02:00, [EMAIL PROTECTED]
  - memory allocation failures handled




diff -Nru a/drivers/usb/net/kaweth.c b/drivers/usb/net/kaweth.c
--- a/drivers/usb/net/kaweth.c  Sat Apr 13 10:17:53 2002
+++ b/drivers/usb/net/kaweth.c  Sat Apr 13 10:17:53 2002
@@ -101,7 +101,7 @@
 #define KAWETH_SOFS_TO_WAIT                    0x05
 
 
-MODULE_AUTHOR("Michael Zappe <[EMAIL PROTECTED]>, Stephane Alnet 
<[EMAIL PROTECTED]> and Brad Hards <[EMAIL PROTECTED]>");
+MODULE_AUTHOR("Michael Zappe <[EMAIL PROTECTED]>, Stephane Alnet 
<[EMAIL PROTECTED]>, Brad Hards <[EMAIL PROTECTED]> and Oliver 
Neukum <[EMAIL PROTECTED]>");
 MODULE_DESCRIPTION("KL5USB101 USB Ethernet driver");
 MODULE_LICENSE("GPL");
 
@@ -203,6 +203,7 @@
        __u32 status;
        int end;
        int removed;
+       int suspend_lowmem;
 
        struct usb_device *dev;
        struct net_device *net;
@@ -210,6 +211,7 @@
 
        struct urb *rx_urb;
        struct urb *tx_urb;
+       struct urb *irq_urb;
 
        __u8 firmware_buf[KAWETH_FIRMWARE_BUF_SIZE];
        __u8 tx_buf[KAWETH_BUF_SIZE];
@@ -468,7 +470,11 @@
                      kaweth);
 
        if((result = usb_submit_urb(kaweth->rx_urb, mem_flags))) {
+               if (result == -ENOMEM)
+                       kaweth->suspend_lowmem = 1;
                kaweth_err("resubmitting rx_urb %d failed", result);
+       } else {
+               kaweth->suspend_lowmem = 0;
        }
 }
 
@@ -896,7 +902,14 @@
        kaweth_dbg("Initializing net device.");
 
        kaweth->tx_urb = usb_alloc_urb(0, GFP_KERNEL);
+       if (!kaweth->tx_urb)
+               goto err_no_urb;
        kaweth->rx_urb = usb_alloc_urb(0, GFP_KERNEL);
+       if (!kaweth->rx_urb)
+               goto err_only_tx;
+       kaweth->irq_urb = usb_alloc_urb(0, GFP_KERNEL);
+       if (!kaweth->irq_urb)
+               goto err_tx_and_rx;
 
        kaweth->net = init_etherdev(0, 0);
        if (!kaweth->net) {
@@ -929,6 +942,14 @@
        kaweth_dbg("Kaweth probe returning.");
 
        return kaweth;
+
+err_tx_and_rx:
+       usb_free_urb(kaweth->rx_urb);
+err_only_tx:
+       usb_free_urb(kaweth->tx_urb);
+err_no_urb:
+       kfree(kaweth);
+       return NULL;
 }
 
 /****************************************************************

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


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


begin 664 bkpatch3973
M'XL(`+'IMSP``ZU5;6_;-A#^;/Z*6_LE76N9E&15<F+#:>,U09TX<.<OPP"#
MDBA;T`M5BIJ=UOOO.\I>4G=)L;43!$B\>WCW'.\YZ3DL:J$&'9FG?PA%GL.E
MK#4N12E+8:UE(?*T;+:65"MTSJ5$9\^8>_L=O3#K:B5$W=M(E1'$W'(=K0%=
M]:##+.?>HN\J,>C,)^\6T_,Y(<,AO%WS<B4^"`W#(0FS<=R(W,J4Y&N3;G?O
MWMF4,L;L/G7Z'NOO;-]QW!WS:!CC:VR_#I+0"T@E=,;+<<%KG6;<RLOMQHID
M<1S'IBYS**,^]7>NBT')!3#+[?M`[1YU>\P!1@>L/W#H2VH/*(5]G>/'3@1>
M,NA2\@9^G/Q;$D$7"E%(=0<\SV7$=2I+2'B:-TK4@/'B7,3D/2!M&I#;A^,C
MW?]X$4(Y):-':,?*%%OWFCKL97PC]-J*'BIP:6#3G6/[S-EYGA<SZO(PXJP?
M>_ZWSNDH;"GT4>A]1WSFNL'.MCW&6FT\M>-QJ7P_;?(CM"GS'&SKSO4\%K1"
MLMFQCMR!&_P;'=DV=-G_**0DW4*E9"A`RJKF89JG^@Y03U(6+6"E9%/&9F8A
MD0JXED4:025E#K&H<F'$UP(C61>XBB!JB=0HP'V79M!5F_9&0=T^V;#O$.<%
M-@@8N=H_KF<7B^ED>;[X]7(V/WEVG2(1D<-OO*H$G'WB58%#GY9:J)R7%J8>
MO8(/6E1(5\!YC@8XJP_K<=.MTHBK.!56HA#X1O$8+M%0PUFX-L]QF*XJ6<8F
MDL6;$>#<P:SM'=R()FL*.#NTLFR7IDNC9R].R95-^\BW@UR@;NI*E/$REQN<
M:>-CMO'56C61AD:%\'.J/B[Q!9WN:PHVZ732!$YPUIO<?!&A.[F974^N7Z"C
MLS_-[N@X+@R!M=N9V?XGB+P6\)E\`TX1[@>^@9MD/_T-U%M#Q:1:22U!*+4L
MY8&='P30_PJO_HF797ZWU-M3<I_]4""F15$LVX^:69_05_#NE]OE^\G\9C+%
M@SL.?=AU%!OI81N6"J-?!0X#G_Q.CNP#TC$Y$OP3M2F^XGE*OF#X%%9_B=U7
JC]#,X`X8PU4)W:@2;A;3Z>G#[RY:BRBKFV+(DR3!^4C(7RLK%KE9!P``
`
end

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to