Re: [BUGS] 2.5.69 syncppp

From: Andrew Morton (akpm@digeo.com)
Date: Fri May 23 2003 - 16:31:38 EST


Paul Fulghum <paulkf@microgate.com> wrote:
>
> 1. When syncppp tries to send a control protocol packet,
> I see the following kernel messages:
>
> Badness in local_bh_enable at kernel/softirq.c:105

sppp_lcp_open() is called from other places without that lock held, so it
is probably not totally stupid to drop it in the timer handler too.

It's good (and surprising) that someone is actually using that stuff.
Please beat on it for a while.

diff -puN drivers/net/wan/syncppp.c~syncppp-locking-fix drivers/net/wan/syncppp.c
--- 25/drivers/net/wan/syncppp.c~syncppp-locking-fix Fri May 23 14:28:50 2003
+++ 25-akpm/drivers/net/wan/syncppp.c Fri May 23 14:29:24 2003
@@ -1297,6 +1297,7 @@ static void sppp_cp_timeout (unsigned lo
                 spin_unlock_irqrestore(&spppq_lock, flags);
                 return;
         }
+ spin_unlock_irqrestore(&spppq_lock, flags);
         switch (sp->lcp.state) {
         case LCP_STATE_CLOSED:
                 /* No ACK for Configure-Request, retry. */
@@ -1333,7 +1334,6 @@ static void sppp_cp_timeout (unsigned lo
                 }
                 break;
         }
- spin_unlock_irqrestore(&spppq_lock, flags);
 }
 
 static char *sppp_lcp_type_name (u8 type)

_

-
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/



This archive was generated by hypermail 2b29 : Fri May 23 2003 - 22:00:57 EST