Re: BUG: soft lockup detected on CPU#0! (2.6.18.2 plus hacks)
From: Jarek Poplawski <hidden>
Date: 2007-01-11 08:28:05
From: Jarek Poplawski <hidden>
Date: 2007-01-11 08:28:05
On Wed, Jan 10, 2007 at 11:40:35PM -0800, David Miller wrote:
From: Jarek Poplawski <redacted> Date: Thu, 11 Jan 2007 08:24:28 +0100quoted
Yesterday I did what I should do earlier - checked this simple way, with printk, and now I have no doubts it's a bug: if you add or remove vlan devices with vconfig, register_vlan_device and unregister_vlan_dev are called by ioctl and they use and change rcu procetded data without preemption disabled so vlan rcu hash lists could become corrupted or find results could be wrong.Those two operations do their modifications and changes under the RTNL semaphore, via rtnl_lock() and rtnl_unlock() which guarentees that no other modifications can occur.
Sure, but is this even legal to be preempted during reading or modifying rcu list? Doesn't this disturb rcu cycle and make possible memory release problems? Jarek P.