* [Bridge] Re: hang on PPC
[not found] <web-127174921@intranet.ru>
@ 2004-06-28 16:38 ` Stephen Hemminger
2004-06-29 15:56 ` arkady-parabel
0 siblings, 1 reply; 4+ messages in thread
From: Stephen Hemminger @ 2004-06-28 16:38 UTC (permalink / raw)
To: arkady-parabel; +Cc: bridge
On Sun, 27 Jun 2004 15:43:30 +0700
<arkady-parabel@ngs.ru> wrote:
> Hi.
>
> I'm using a powerpc-based board (CPU - Motorolla 82855, 50
> Mhz) with 32 Mb of RAM, Big Endian.
> Linux kernel - 2.4.22, bridge - statically linked & as a
> module
> brctl - 0.9.6
> Ethernet - fec (arch/ppc/8xx_io/fec.c)
> All this was compiled with gcc version 3.2.2 20030217
> (Yellow Dog Linux 3.0 3.2.2-2a_1)) with math emulation
> enabled in gcc and in kernel.
>
> When I do
> # ifconfig eth0 0.0.0.0
> # brctl addbr br0
> # brctl addif br0 eth0
> eth0: Promiscuous mode enabled.
> device eth0 entered promiscuous mode
> # brctl show
> bridge name bridge id STP enabled
> interfaces
> br0 8000.ce3dfa010010 no eth0
> # ifconfig br0 up
>
> 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.
> On i386 with 2.4.24 I've tested the same - bridge works
> fine.
The 2.4 code hasn't changed much in a long time. It could be a PPC issue
You could rebuild a kernel with just an update of the the bridge code (net/bridge)
from 2.4.27.
> Can anybody advice me a solution ?
>
> I have enough experience in kernel development to fix it
> myself. The question is where ?
>
> Please, reply to pavel[AT]parabel.inc.ru
> OSDL rejected my mail with:
> Failed to deliver to 'shemminger@osdl.org'
> SMTP module(domain osdl.org) reports:
> message text rejected by smtp.osdl.org:
> 554 5.7.1 Your server (195.161.113.6) is not listed as an
> IP for the domain 'da.ru' -- please have your
> misconfiguration corrected
OSDL does anti-spam detection by doing a reverse DNS lookup of incoming
mail. Since most spammers use bogus addresses, it filters about 10% of spam.
> Thanks in advance.
>
> BTW: My final task is make a patch for kernel to make bridge
> working with cisco-hdlc devices (hdlc_cisco.c will have type
> = ARPHRD_ETHER, and do appropriate encapsulation). Maybe
> someone already made this, but I don't know ?
>
> Kernel boot log:
>
> Linux package found at 200000
> Kernel size 777k (compressed)
> Ramdisk size 2913k (compressed)
> Decompressing kernel...ok
> Linux version 2.4.22 (root@knight) (gcc version 3.2.2
> 20030217 (Yellow Dog Linux
> 3.0 3.2.2-2a_1)) #30 Sun Jun 27 13:31:17 NOVST 2004
> On node 0 totalpages: 8192
> zone(0): 8192 pages.
> zone(1): 0 pages.
> zone(2): 0 pages.
> Kernel command line: root=/dev/ram rw ramdisk_size=8000
> init=/sbin/fl
> Decrementer Frequency = 184320000/60
> Calibrating delay loop... 48.84 BogoMIPS
> Memory: 27560k available (1372k kernel code, 440k data, 84k
> init, 0k highmem)
> Dentry cache hash table entries: 4096 (order: 3, 32768
> bytes)
> Inode cache hash table entries: 2048 (order: 2, 16384 bytes)
> Mount cache hash table entries: 512 (order: 0, 4096 bytes)
> Buffer cache hash table entries: 1024 (order: 0, 4096 bytes)
> Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
> POSIX conformance testing by UNIFIX
> Linux NET4.0 for Linux 2.4
> Based upon Swansea University Computer Society NET3.039
> Initializing RT netlink socket
> Starting kswapd
> CPM UART driver version 0.03
> ttyS00 at 0x0280 is a SMC
> pty: 256 Unix98 ptys configured
> Generic RTC Driver v1.07
> DLCI driver v0.35, 4 Jan 1997, mike.mclagan@linux.org.
> eth0: FEC ENET Version 0.2, FEC irq 9, MII irq 10, addr
> ce:3d:fa:01:00:10
> RAMDISK driver initialized: 16 RAM disks of 8000K size 1024
> blocksize
> loop: loaded (max 8 devices)
> PPP generic driver version 2.4.2
> PPP Deflate Compression module registered
> Cronyx Ltd, Synchronous PPP and CISCO HDLC (c) 1994
> Linux port (c) 1998 Building Number Three Ltd & Jan "Yenya"
> Kasprzak.
> LAPB Ethernet driver version 0.01
> NET4: Linux TCP/IP 1.0 for NET4.0
> IP Protocols: ICMP, UDP, TCP, IGMP
> IP: routing cache hash table of 512 buckets, 4Kbytes
> TCP: Hash tables configured (established 2048 bind 4096)
> IPv4 over IPv4 tunneling driver
> ip_conntrack version 2.1 (256 buckets, 2048 max) - 292 bytes
> per conntrack
> ip_tables: (C) 2000-2002 Netfilter core team
> NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
> NET4: Ethernet Bridge 008 for NET4.0
> X.25 for Linux. Version 0.2 for Linux 2.1.15
> NET4: LAPB for Linux. Version 0.01 for NET4.0
> 802.1Q VLAN Support v1.8 Ben Greear
> <greearb@candelatech.com>
> All bugs added by David S. Miller <davem@redhat.com>
> RAMDISK: Compressed image found at block 0
> Freeing initrd memory: 2913k freed
> VFS: Mounted root (ext2 filesystem).
> Freeing unused kernel memory: 84k init
>
> --
> Regards
> Pavel
>
> ______ "______________"
> web: http://parabel.inc.ru/
> mail: pavel[AT]parabel.inc.ru
> phone: +7 (3832) 13-87-07
> ---------------------------------------------------------
> http://relax.ngs.ru - ______ __ ____________ __ ________________________ __ ________________________!
>
>
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bridge] Re: hang on PPC
2004-06-28 16:38 ` [Bridge] Re: hang on PPC Stephen Hemminger
@ 2004-06-29 15:56 ` arkady-parabel
0 siblings, 0 replies; 4+ messages in thread
From: arkady-parabel @ 2004-06-29 15:56 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: bridge
On Mon, 28 Jun 2004 09:38:46 -0700
Stephen Hemminger <shemminger@osdl.org> 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 - ÷ÓÅ Ï ÄÏÓÕÇÅ É ÒÁÚ×ÌÅÞÅÎÉÑÈ × îÏ×ÏÓÉÂÉÒÓËÅ!
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: [Bridge] Re: hang on PPC
@ 2004-06-29 16:57 Eble, Dan
0 siblings, 0 replies; 4+ messages in thread
From: Eble, Dan @ 2004-06-29 16:57 UTC (permalink / raw)
To: 'arkady-parabel@ngs.ru'; +Cc: bridge
Pavel, you may be interested in my work on Cisco HDLC bridging:
http://marc.theaimsgroup.com/?l=linux-netdev&m=108802311131855&w=2
I have used it with the bridge driver (in 2.4) without any problems (yet
;)), and I am sure Krzysztof Halasa, the HDLC maintainer, would be thrilled
if you managed to port it to a recent version of the kernel and make it a
compile-time option.
Oh, it also requires changes to sethdlc that are not in the post cited
above. There are also a few lines of modifications I've made to the kernel
parts since that post. Email me off-list if you are interested and I'll
send you what I have.
--
Dan Eble <dane@aiinet.com> _____ .
Software Engineer | _ |/|
Applied Innovation Inc. | |_| | |
http://www.aiinet.com/ |__/|_|_|
> -----Original Message-----
> From: bridge-bounces@lists.osdl.org
> [mailto:bridge-bounces@lists.osdl.org] On Behalf Of
> arkady-parabel@ngs.ru
> Sent: Tuesday, June 29, 2004 11:57 AM
> To: Stephen Hemminger
> Cc: bridge@osdl.org
> Subject: [Bridge] Re: hang on PPC
>
>
> On Mon, 28 Jun 2004 09:38:46 -0700
> Stephen Hemminger <shemminger@osdl.org> 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 - ÷ÓÅ Ï ÄÏÓÕÇÅ É ÒÁÚ×ÌÅÞÅÎÉÑÈ × îÏ×ÏÓÉÂÉÒÓËÅ!
>
>
>
>
>
> _______________________________________________
> Bridge mailing list
> Bridge@lists.osdl.org
> http://lists.osdl.org/mailman/listinfo/bridge
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: [Bridge] Re: hang on PPC
@ 2004-06-29 17:12 Eble, Dan
0 siblings, 0 replies; 4+ messages in thread
From: Eble, Dan @ 2004-06-29 17:12 UTC (permalink / raw)
To: Eble, Dan, 'arkady-parabel@ngs.ru'; +Cc: bridge
Scratch that last comment. The kernel code I have now is identical to what
I posted. Sorry for the misinformation.
> -----Original Message-----
> From: bridge-bounces@lists.osdl.org
> [mailto:bridge-bounces@lists.osdl.org] On Behalf Of Eble, Dan
> Sent: Tuesday, June 29, 2004 12:57 PM
> To: 'arkady-parabel@ngs.ru'
> Cc: bridge@osdl.org
> Subject: RE: [Bridge] Re: hang on PPC
>
>
> Pavel, you may be interested in my work on Cisco HDLC bridging:
> http://marc.theaimsgroup.com/?l=linux-netdev&m=108802311131855&w=2
>
> I have used it with the bridge driver (in 2.4) without any
> problems (yet
> ;)), and I am sure Krzysztof Halasa, the HDLC maintainer,
> would be thrilled
> if you managed to port it to a recent version of the kernel
> and make it a
> compile-time option.
>
> Oh, it also requires changes to sethdlc that are not in the post cited
> above. There are also a few lines of modifications I've made
> to the kernel
> parts since that post. Email me off-list if you are
> interested and I'll
> send you what I have.
>
> --
> Dan Eble <dane@aiinet.com> _____ .
> Software Engineer | _ |/|
> Applied Innovation Inc. | |_| | |
> http://www.aiinet.com/ |__/|_|_|
>
>
> > -----Original Message-----
> > From: bridge-bounces@lists.osdl.org
> > [mailto:bridge-bounces@lists.osdl.org] On Behalf Of
> > arkady-parabel@ngs.ru
> > Sent: Tuesday, June 29, 2004 11:57 AM
> > To: Stephen Hemminger
> > Cc: bridge@osdl.org
> > Subject: [Bridge] Re: hang on PPC
> >
> >
> > On Mon, 28 Jun 2004 09:38:46 -0700
> > Stephen Hemminger <shemminger@osdl.org> 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 - ÷ÓÅ Ï ÄÏÓÕÇÅ É ÒÁÚ×ÌÅÞÅÎÉÑÈ × îÏ×ÏÓÉÂÉÒÓËÅ!
> >
> >
> >
> >
> >
> > _______________________________________________
> > Bridge mailing list
> > Bridge@lists.osdl.org
> > http://lists.osdl.org/mailman/listinfo/bridge
> >
>
> _______________________________________________
> Bridge mailing list
> Bridge@lists.osdl.org
> http://lists.osdl.org/mailman/listinfo/bridge
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2004-06-29 17:12 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <web-127174921@intranet.ru>
2004-06-28 16:38 ` [Bridge] Re: hang on PPC Stephen Hemminger
2004-06-29 15:56 ` arkady-parabel
2004-06-29 16:57 Eble, Dan
-- strict thread matches above, loose matches on Subject: below --
2004-06-29 17:12 Eble, Dan
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.