Project Home
Project Home
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - Native ethernet driver(8572xx) issues(system hang): (5 Items)
   
Native ethernet driver(8572xx) issues(system hang)  
Hi,

I am using native Ethernet driver(8572xx) devnp-mpc85xx.so and need some input on below issues.

Problem-1: Is there a way to change the interfaces convention from tsec's to en(i.e tsec0 to en0, tsec2 to en2) in 
native driver.
-------------------------------------------------------------------------------------------------------------------
Problem-2: I am observing in-correct reading of mac-address for vlan0 having parent set to tsec2. ifconfig shows "00:1f:
aa:00:0d:02" but it returns some address starting 47:48:xx:xx:xx:xx which is not assigned to any interface.

vlan0: flags=88c3<UP,BROADCAST,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1496
        vlan: 512 parent: tsec2
        address: 00:1f:aa:00:0d:02
        inet 172.16.10.65 netmask 0xffffff00 broadcast 172.16.10.255

Code Snippet:
ifdcp->ifdc_cmd = DRVCOM_CONFIG;
ifdcp->ifdc_len = sizeof(*confp);
ret = devctl(devname, SIOCGDRVCOM, ifdcp,sizeof(struct drvcom_config), 0);

However, It returns correct mac address if we specify devname to 'tsec2' instead 'vlan0', Is there any limitation to get
 mac wrt. vlan's.
------------------------------------------------------------------------------------------------------------

Problem-3: I am observing hard hang in the system after loading this native ethernet driver after few hours of data 
transfer or even if the system is idle for long duration.
In one instance i have observed following receive error followed by system hang.
"mpc85xx_receive: status RXBD_ERR 0x1D44". Is there any workaround to resolve this issue.

I appreciate if somebody analyze or suggest on how to handle above issues.

Thanx and regards,
Tarun 

RE: Native ethernet driver(8572xx) issues(system hang)  
> devnp-mpc85xx.so 
>
> change the interfaces convention from tsec's 
> to en(i.e tsec0 to en0, tsec2 to en2) 

You don't need to - try typing

  # ifconfig en0

and the stack maps it to tsec0.  I think there's
also an option to the (6.4.1) stack to override
the name, too, if the above isn't good enough

I'll let Patrik answer the vlan question :)

> after few hours of data transfer or even if the 
> system is idle for long duration.

This is a new problem AFAIK.

> "mpc85xx_receive: status RXBD_ERR 0x1D44".

What does the data sheet say about those bits?

What does the nicinfo/sloginfo output say?

Also, run the driver with the verbose option
to increase it's diagnostic output

--
aboyd
Re: Native ethernet driver(8572xx) issues(system hang)  
On Wed, Oct 07, 2009 at 09:24:18AM -0400, Andrew Boyd wrote:
> 
> > devnp-mpc85xx.so 
> >
> > change the interfaces convention from tsec's 
> > to en(i.e tsec0 to en0, tsec2 to en2) 
> 
> You don't need to - try typing
> 
>   # ifconfig en0
> 
> and the stack maps it to tsec0.  I think there's
> also an option to the (6.4.1) stack to override
> the name, too, if the above isn't good enough
> 

# io-pkt -dmpc85xx name=en

-seanb
Re: RE: Native ethernet driver(8572xx) issues(system hang)  
Hi aboyd,

Thanks for the reply, When the system hang happens i do not have console access to get the system nicinfo/sloginfo. 

I have enabled the debug by putting verbose=10, Is there any other information which we can enabled to throw it on 
console.

However, i have hitted one crash in io-pkt while pumping a traffic on tsec2 interface and here is the below backtrace of
 the top frame i could retrieve.

#0  0x480865c8 in in_ifinit (ifp=0xfe391ab4, ia=0x4811bb0c, sin=0xfe38f6f0,
    scrub=1209120680)
    at  Networking/trunk/sys/netinet/in.c:913

It looks the crash has happened while inserting an interface list address with new null pointer. 
"LIST_INSERT_HEAD(&IN_IFADDR_HASH(ia->ia_addr.sin_addr.s_addr), ia, ia_hash);"

Here is the below data retrieved from the dump.

$9 = {ia_ifa = {ifa_addr = 0x1faa00, ifa_dstaddr = 0x33060000,
    ifa_netmask = 0x6, ifa_ifp = 0x5, ifa_list = {tqe_next = 0xd,
      tqe_prev = 0x0}, ifa_data = {ifad_inbytes = 4294967296000001,
      ifad_outbytes = 0}, ifa_rtrequest = 0, ifa_flags = 1, ifa_refcnt = 0,
    ifa_metric = 0, ifa_getifa = 0x1, ifa_seqno = 0x0, ifa_preference = 0},
  ia_net = 0, ia_netmask = 0, ia_subnet = 3758247936, ia_subnetmask = 0,
  ia_netbroadcast = {s_addr = 0}, ia_hash = {le_next = 0x0, le_prev = 0x0},
  ia_list = {tqe_next = 0x0, tqe_prev = 0x0}, ia_addr = {sin_len = 0 '\0',
    sin_family = 0 '\0', sin_port = 0, sin_addr = {s_addr = 0},
    sin_zero = "\000\000\000\000\000\000\000"}, ia_dstaddr = {
    sin_len = 0 '\0', sin_family = 0 '\0', sin_port = 0, sin_addr = {
      s_addr = 0}, sin_zero = "\000\000\000\000\000\000\000"}, ia_sockmask = {
    sin_len = 0 '\0', sin_family = 0 '\0', sin_port = 0, sin_addr = {
      s_addr = 4096}, sin_zero = "\000\000\000\000\000\000\000"},
  ia_multiaddrs = {lh_first = 0x0}, ia_allhosts = 0x0}


Could you please analyze and let me know if we have a workaround or a fix for this crash.

Thanx and regards,
Tarun


RE: RE: Native ethernet driver(8572xx) issues(system hang)  
> i have hitted one crash in io-pkt

Shot in the dark:  try running non-SMP (single core).

--
aboyd   www.pittspecials.com/images/L39_form.jpg