Messages in this thread | | | From | "Liu, Chuansheng" <> | Subject | RE: [PATCH] Fix the race between smp_call_function and CPU booting | Date | Fri, 23 Mar 2012 11:32:43 +0000 |
| |
In fact, I started two scripts running: 1/ One script: echo 0 > /sys/devices/system/cpuX/online echo 1 > /sys/devices/system/cpuX/online Rerunning the above commands in loop
2/Another script: echo 1 > /debug/smp_call_test usleep 50000 Rerunning the above command in loop
This race issue can be easy to be reproduced in several minutes; For simplify your test as mine(just two CPUs), you can set other non-booting CPUs as offline at first and just leave one non-booting CPU.
> -----Original Message----- > From: Peter Zijlstra [mailto:peterz@infradead.org] > Sent: Friday, March 23, 2012 6:26 PM > To: Liu, Chuansheng > Cc: linux-kernel@vger.kernel.org; Yanmin Zhang; tglx@linutronix.de; Srivatsa S. > Bhat > Subject: RE: [PATCH] Fix the race between smp_call_function and CPU booting > > On Thu, 2012-03-22 at 00:59 +0000, Liu, Chuansheng wrote: > > Below is the complete test patch. Just run the simpl_loop_onoffline.sh > > and simpl_loop_smpcalling.sh concurrently to reproduce the race. > > > What I did was: > > for i in {2..23} ; do echo 0 > /sys/devices/system/cpu/cpu${i}/online ; done while > usleep 50000 ; do echo 1 > /debug/smp_call_test ; done & while :; do echo $i > > /sys/devices/system/cpu/cpu1/online ; let i^=1 ; done > > and this has been running for well over 30 minutes.. is there anything else one > needs to do? >
| |