|
|
Re: suspicious RCU usage warnings in 3.3.0 |
> sparc64: Eliminate obsolete __handle_softirq() function > > The invocation of softirq is now handled by irq_exit(), so there is no > need for sparc64 to invoke it on the trap-return path. In fact, doing so > is a bug because if the trap occurred in the idle loop, this invocation > can result in lockdep-RCU failures. The problem is that RCU ignores idle > CPUs, and the sparc64 trap-return path to the softirq handlers fails to > tell RCU that the CPU must be considered non-idle while those handlers > are executing. This means that RCU is ignoring any RCU read-side critical > sections in those handlers, which in turn means that RCU-protected data > can be yanked out from under those read-side critical sections. > > The shiny new lockdep-RCU ability to detect RCU read-side critical sections > that RCU is ignoring located this problem. > > The fix is straightforward: Make sparc64 stop manually invoking the > softirq handlers. > > Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx> It works for me on Sun Fire V100 - no more RCU warnings under ping flood. Tested-by: Meelis Roos <mroos@xxxxxxxx> -- Meelis Roos (mroos@xxxxxxxx) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
[Linux Kernel Discussion] [Ethernet Bridging] [Linux Wireless Networking] [Linux Bluetooth Networking] [Linux Networking Users] [VLAN] [Git] [IETF Annouce] [Linux Assembly] [Security] [Bugtraq] [Photo] [Singles Social Networking] [Yosemite Information] [MIPS Linux] [ARM Linux Kernel] [ARM Linux] [Linux Virtualization] [Linux Security] [Linux IDE] [Linux RAID] [Linux SCSI] [Free Dating]
![]() |
![]() |