Two network interfaces

Thomas Doerfler (nt) Thomas.Doerfler at imd-systems.de
Tue Mar 11 19:15:46 UTC 2008


Leon Pollak schrieb:
> Hello, all.
> 
> I have the following situation with 2 network interfaces been initialized.
> 
> The first interface is fully functional in HW and SW, but the second 
> controller which is connected to the PHY via MII has no physical connection 
> to the network and PHY therefore does not have link.
> 
> When I initialize the only first IF and give the application to run - 
> everything is OK: I can ping the box without any problem.
> 
> If I only add the second interface to the chain, the first stops functioning - 
> no replies to ping and arp and I see the "Still waiting for mbuf cluster" 
> message printed periodically.

Leon, this behaviour is NOT normal. Maybe the second driver really 
consumes all the remaining mbufs? Remember, each driver will pull in a 
certain bunch of mbufs to equip the rx buffer queue, no matter whether 
the PHY has a link or not. So when you have two interfaces, you will 
need twice as many mbufs ready than with one interface.

Maybe you can increase the global mbuf/cluster count in the network 
configuration?

By the way: Could you fix the networking problem you had some weeks ago?

wkr,
Thomas.


> 
> I am not able to have the second interface physically connected in some 2-3 
> weeks. But I should be ready to work with it when it will be connected.
> 
> Therefore I just wanted to know: if such a behavior may be caused by the 
> second "faulty" interface or I need to work hard searching for a bug in the 
> driver?
> 
> Many thanks ahead.
> --
> Leon
> 
> 
> P.S. May be this is helpfull - rtems_bsdnet_ifconfig structures are filled as:
> ------------------------------
> (gdb) p netdriver_config[0]
> p netdriver_config[0]
> $3 = {name = 0xd5e14 "eth0", attach = 0x56380 <rtems_enet_driver_attach>, 
> 	next = 0xf76d8, 
> 	ip_address = 0xd5e1c "192.168.50.134", 
> 	ip_netmask = 0xd5e6c "255.255.255.0", 
> 	hardware_address = 0xd5e7c "00:80:7f:22:61:77", 	
> 	ignore_broadcast = 0, mtu = 0, rbuf_count = 0, xbuf_count = 0, 
> 	port = 0, irno = 0, bpar = 0, drv_ctrl = 0x0}
> 
> (gdb) p netdriver_config[1]
> p netdriver_config[1]
> $4 = {name = 0xd5e40 "eth1", attach = 0x56380 <rtems_enet_driver_attach>, 
> 	next = 0xf7710, 
> 	ip_address = 0xd5e48 "192.168.1.10", 
> 	ip_netmask = 0xd5e6c "255.255.255.0", 
> 	hardware_address = 0xd5e84 "00:80:7f:22:61:78", 
> 	ignore_broadcast = 0, mtu = 0, rbuf_count = 0, xbuf_count = 0, 
> 	port = 0, irno = 0, bpar = 0, drv_ctrl = 0x0}
> _______________________________________________
> rtems-users mailing list
> rtems-users at rtems.com
> http://rtems.rtems.org/mailman/listinfo/rtems-users


-- 
--------------------------------------------
IMD Ingenieurbuero fuer Microcomputertechnik
Thomas Doerfler           Herbststrasse 8
D-82178 Puchheim          Germany
email:    Thomas.Doerfler at imd-systems.de
PGP public key available at:
      http://www.imd-systems.de/pgpkey_en.html



More information about the users mailing list