Wind River Support Network

HomeDefectsLIN6-11961
Fixed

LIN6-11961 : Missing lock mechanism when calling bond_miimon_commit() generates "BUG scheduling while atomic..."

Created: Nov 16, 2016    Updated: Dec 3, 2018
Resolved Date: Nov 27, 2016
Found In Version: 6.0.0.31
Fix Version: 6.0.0.32
Severity: Standard
Applicable for: Wind River Linux 6
Component/s: Kernel

Description

After updating to RCPL31, we are seeing the 'BUG' message in the kernel stack trace when manipulating bond interface. (complete trace has been attached)

This has been reproduced with Ethernet controller: Intel Corporation I350 Gigabit Network Connection  + driver IGB 5.0.5  only so far
This issue only happens when omitting to modprobe bonding module.
 
---
[ 3310.352203] BUG: workqueue leaked lock or atomic: kworker/u64:0/0x00000001/6
last function: edac_mc_workq_function
...
[ 3310.352253] BUG: scheduling while atomic: kworker/u64:0/6/0x00000002
...
[ 3310.376200] BUG: workqueue leaked lock or atomic: kworker/u64:0/0x00000001/6
last function: edac_mc_workq_function 
...
---

Workaround

Either include bonding kernel config (not as module)
or
make sure to invoke modprobe bonding before
modprobe bonding
ifconfig bond0 up

Steps to Reproduce

1. configure a wrlinux platform project :
configure --enable-board=intel-x86-64 --enable-kernel=standard --enable-rootfs=glibc_std --enable-reconfig --with-template=feature/package-management --enable-buildhist=yes --with-rcpl-version=0031

2. verify bonding config is set as module 
make -C build linux-windriver.menuconfig

3. Build the project 

4. boot the target (i used x86-64 MATXM target) with the kernel + rootfs built in 3.

5. Add the following to /etc/network/interfaces
---
auto bond0
iface bond0 inet static
 address 172.16.33.32     
 netmask 255.255.255.0
 network 172.16.33.0
 up ifenslave bond0 eth0    
 down ifenslave -d bond0 eth0

#note#
#adapt the ip address, network,...
# you can reproduce with eth0 only, you can also add eth1
---

6. create  /etc/modprobe.d/bonding.conf  and add :

alias netdev-bond0 bonding
options netdev-bond0 miimon=100 mode=1

7. reboot the target 

--> you should get the BUG message continuously displaying on the screen!

Other Downloads


Live chat
Online