Hi Paul, "Paul E. McKenney" <paulmck@xxxxxxxxxx> writes: > On Mon, Nov 14, 2022 at 04:35:06PM +0100, Sven Schnelle wrote: >> "Paul E. McKenney" <paulmck@xxxxxxxxxx> writes: >> >> > On Fri, Nov 11, 2022 at 01:51:24PM +0100, Sven Schnelle wrote: >> >> A CPU listed in the possible mask doesn't have to be present, in >> >> which case it would crash the kernel in torture_online_all(). >> >> To prevent this use a for_each_present() loop. >> >> >> >> Signed-off-by: Sven Schnelle <svens@xxxxxxxxxxxxx> >> > >> > Looks good to me! Any reason for no mailing list on CC? >> >> No, my fault. I setup get_maintainer.pl to be called from git >> send-email, but looks like i did it wrong :-) > > Been there, done that! ;-) > >> > Ah, and any synchronization required in case it is possible for a CPU >> > to leave the cpu_present_mask? Or can they only be added? >> >> Hmm... I think the main question is, whether it is ok for a cpu to be >> removed from the system when rcutorture is running? In both cases it >> would disappear from the cpu online mask, so i don't think the patch >> would change the behaviour. But i can check and send additional patches >> if there are other places that needs adjustment. > > Yes, rcutorture has lower-level checks for CPUs being hotplugged > behind its back. Which might be sufficient. But this patch is in > response to something bad happening if the CPU is also not present in > the cpu_present_mask. Would that same bad thing happen if rcutorture saw > the CPU in cpu_online_mask, but by the time it attempted to CPU-hotplug > it, that CPU was gone not just from cpu_online_mask, but also from > cpu_present_mask? > > Or are CPUs never removed from cpu_present_mask? In the current implementation CPUs can only be added to the cpu_present_mask, but never removed. This might change in the future when we get support from firmware for that, but the current s390 code doesn't do that. Regards Sven