There's something not very healthy with those patches. For example,
here's a bit clipped over from another window (so excuse the lack
of tabs etc.):
diff -u --recursive --new-file v2.0.30/linux/drivers/isdn/isdn_common.c linux/dr
ivers/isdn/isdn_common.c
[other parts snipped]
@@ -1694,37 +1659,40 @@
q->next = p->next;
else
dev->infochain = (infostruct *) (p->next
);
- return;
+ kfree(p);
+ return CLOSEVAL;
+ kfree(p);
}
q = p;
p = (infostruct *) (p->next);
}
+ return CLOSEVAL;
printk(KERN_WARNING "isdn: No private data while closing isdnctr
l\n");
- return;
}
Replacing a "return;" with "kfree();return();kfree();" doesn't seem like
very good coding practice, so I suspect something's gone horribly wrong
here. I believe this problem has been brought up on the isdn4linux mailing
list, so I suspect the ISDN folks will be getting in touch with you; I'd
thought I'd mention it anyway to be sure...
Paul Slootman
-- Murphy Software, Enschede, The Netherlands | UNIX is easy to use. email work: paul@wau.mis.ah.nl / paul@murphy.nl | UNIX is not necessarily email home: paul@wurtel.demon.nl | easy to learn. http://www.wurtel.demon.nl | Learn the difference.