ioctl on 870 FEC causes "badness in local_bh_enable at kernel/softirq.c"

Andy Fleming afleming at freescale.com
Tue Jun 12 04:47:59 EST 2007


>
> This is because drivers/net/fs_enet/fs_enet-main.c:fs_ioctl
> disables the interrupts with spin_lock_irqsave after which it calls
> phy_mii_ioctl. This leads to drivers/net/phy/phy.c:phy_read
> being called which does spin_lock_bh/spin_unlock_bh.
> Obviously the spin_unlock_bh enables softirqs and it is correctly
> complaining irqs are disabled.

That's a programming error.  The PHY Layer's functions must not be  
called with interrupts disabled.


Andy



More information about the Linuxppc-embedded mailing list