Re: kernel BUG at sched.c:564! (2.4.20, 2.4.21-pre5-ac3)

From: Patrick McHardy (kaber@trash.net)
Date: Thu Mar 27 2003 - 07:35:27 EST


The ISDN bug is fixed, i sent a patch to LKML and the Maintainer last week.
I've attached the fix again, the one in isdn_ppp.c is responsible for
the BUG()s.

Patrick

Stephan von Krawczynski wrote:

>Hello all,
>
>I just wanted to hint that this very same BUG message appears on channel
>bundling of ISDN, too. Greg, can you give a short description for this race
>please, as I would like to find it in the ISDN-code, maybe your ideas help...
>
>Thanks,
>Stephan
>
>
>
>
>


# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.1055 -> 1.1056
# drivers/isdn/isdn_net.c 1.15 -> 1.16
# drivers/isdn/isdn_ppp.c 1.20 -> 1.21
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/03/27 kaber@trash.net 1.1056
# [ISDN]: locking fixes
# --------------------------------------------
#
diff -Nru a/drivers/isdn/isdn_net.c b/drivers/isdn/isdn_net.c
--- a/drivers/isdn/isdn_net.c Thu Mar 27 02:00:21 2003
+++ b/drivers/isdn/isdn_net.c Thu Mar 27 02:00:21 2003
@@ -2831,6 +2831,7 @@
 
                         /* If binding is exclusive, try to grab the channel */
                         save_flags(flags);
+ cli();
                         if ((i = isdn_get_free_channel(ISDN_USAGE_NET,
                                 lp->l2_proto, lp->l3_proto, drvidx,
                                 chidx, lp->msn)) < 0) {
diff -Nru a/drivers/isdn/isdn_ppp.c b/drivers/isdn/isdn_ppp.c
--- a/drivers/isdn/isdn_ppp.c Thu Mar 27 02:00:21 2003
+++ b/drivers/isdn/isdn_ppp.c Thu Mar 27 02:00:21 2003
@@ -1176,7 +1176,7 @@
         if (!lp) {
                 printk(KERN_WARNING "%s: all channels busy - requeuing!\n", netdev->name);
                 retval = 1;
- goto unlock;
+ goto out;
         }
         /* we have our lp locked from now on */
 

-
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 : Mon Mar 31 2003 - 22:00:27 EST