[PATCH] [SRU] [T/master] armhf: cpsw: do not register cpts twice

Paolo Pisati paolo.pisati at canonical.com
Fri May 8 13:06:50 UTC 2015


BugLink: http://bugs.launchpad.net/bugs/1452620

commit f280e89a (drivers: net: cpsw: fix for cpsw crash when build as modules)
moved cpts_register()/cpts_unregister() to  ndo_open()/ndo_stop(), but failed
to remove cpts_register in cpsw_probe() which leads to a double registration
and the following debug object splat.

[   18.991902] ODEBUG: init active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x2c
[   19.082249] [<c0059e80>] (init_timer_key) from [<c04965d4>] (cpts_register+0x1f0/0x2c4)
[   19.090642] [<c04965d4>] (cpts_register) from [<c04931dc>] (cpsw_ndo_open+0x780/0x81c)
[   19.098948] [<c04931dc>] (cpsw_ndo_open) from [<c0599c2c>] (__dev_open+0xb4/0x118)

Since we don't compile our kernel with CONFIG_DEBUG_OBJECTS, we never hit the
above error but, as a side effect, this patch fixes another BUGON() that i was
seeing on boot due to the reinitialization of timer->base in init_timer_key() -
see the lp bug for the complete stack trace.

The commit is already upstream and it's a clean cherry-pick (except for some
mechanical changes in the context around the actual patched code).
Proposing for Trusty.

Benedikt Spranger (1):
  net: cpsw: do not register cpts twice

 drivers/net/ethernet/ti/cpsw.c | 4 ----
 1 file changed, 4 deletions(-)

-- 
2.1.0





More information about the kernel-team mailing list