Messages in this thread Patch in this message | | | From | Michal Ostrowski <> | Date | Mon, 14 May 2001 16:24:03 -0400 | Subject | Re: Scheduling in interrupt BUG. [Patch] |
| |
Marcell Gal writes: > Hi, > > This patch solved the problem. Should be ready for inclusion in 2.4. > No more 'Scheduling in interrupt' under those conditions. > Thanx for the thoughts, solution and the amazing speed. > You guys are doing a really great job! >
Alexey pointed out a much nicer/correct/elegant/efficient solution to this problem and I think that that's the way to go.
New patch below.
Michal Ostrowski mostrows@speakeasy.net
--- drivers/net/pppoe.c~ Tue Mar 6 22:44:35 2001 +++ drivers/net/pppoe.c Mon May 14 14:10:49 2001 @@ -5,7 +5,7 @@ * PPPoE --- PPP over Ethernet (RFC 2516) * * - * Version: 0.6.5 + * Version: 0.6.6 * * 030700 : Fixed connect logic to allow for disconnect. * 270700 : Fixed potential SMP problems; we must protect against @@ -19,6 +19,7 @@ * 051000 : Initialization cleanup. * 111100 : Fix recvmsg. * 050101 : Fix PADT procesing. + * 140501 : Use pppoe_rcv_core to handle all backlog. (Alexey) * * Author: Michal Ostrowski <mostrows@styx.uwaterloo.ca> * Contributors: @@ -376,22 +377,6 @@ return ret; } - -/************************************************************************ - * - * Receive wrapper called in process context. - * - ***********************************************************************/ -int pppoe_backlog_rcv(struct sock *sk, struct sk_buff *skb) -{ - lock_sock(sk); - pppoe_rcv_core(sk, skb); - release_sock(sk); - return 0; -} - - - /************************************************************************ * * Receive a PPPoE Discovery frame. @@ -481,7 +466,7 @@ sk->protocol = PX_PROTO_OE; sk->family = PF_PPPOX; - sk->backlog_rcv = pppoe_backlog_rcv; + sk->backlog_rcv = pppoe_rcv_core; sk->next = NULL; sk->pprev = NULL; sk->state = PPPOX_NONE; - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |