On Mon, 28 Jun 2004 09:38:46 -0700 Stephen Hemminger <shemminger@xxxxxxxx> wrote: > > I get > > br0: port 1(eth0) entering learning state > > br0: port 1(eth0) entering forwarding state > > br0: topology change detected, propagating > > > > Now brctl is sleeping, forever... > Any brctl or which command? The usual way of debugging > this is > to enable SysRq in kernel and hit SysRq-t to see what is > happening. > Also SysRq-p to show processes. The process is locked(slept) by bridge module. I've found a reason, the reason is in "LAPB over Ethernet driver (CONFIG_LAPBETHER)" conflict. I think it is in register_netdevice_notifier's handlers lock between lapbether & bridge modules. I've made a modification for hdlc_cisco.c, now it can report cisco-hdlc device as Ethernet (with cisco-compatible bridge encapsulation). But I have one problem: hdlc_cisco must add 4-byte header in hard_start_xmit (as long as no one call hard_header. But I have no space, as long as bridge's interface have hard_header_len = 0.... So' I have to make a COPY os skbuff, instead of cloning if I'm the only user.... When I add hard_header_len = 4, it stopped work even on Ethernet. Is it hard to make bridge working with hard_header_len != 0 (It's necessary for Ethernet in (cisco-hdlc, frame-relay, ppp) encapsulation) ? -- Regards Pavel web: http://parabel.inc.ru/ mail: pavel[AT]parabel.inc.ru phone: +7 (3832) 13-87-07 --------------------------------------------------------- http://relax.ngs.ru - ÷ÓÅ Ï ÄÏÓÕÇÅ É ÒÁÚ×ÌÅÞÅÎÉÑÈ × îÏ×ÏÓÉÂÉÒÓËÅ!