On Sun, 3 Oct 2004, Brian Fundakowski Feldman wrote: > On Sat, Oct 02, 2004 at 02:02:01AM -0400, Brian Fundakowski Feldman wrote: >> Okay, I just got another one of these, exactly the same as that one but >> for the fact that the softclock() interrupt was specifically locking >> Giant instead of the interrupt thread loop. So the other CPU owned >> Giant at the time and the scheduling CPU is trying to acquire it and >> interrupted by needing to run the statclock(). >> >> This is way too coincidental to ignore. >> >> SCHED_ULE is far too complex for me to understand much of right now; >> what prevents sched_clock() from calling kseq_assign() multiple times >> per CPU? Are we _absolutely_100%_certain_ that functionality works >> correctly? > > Ping... adding Jeff... I really wish I understood SCHED_ULE, because it > seems entirely plausible it's trying to send two IPIs, the first of > which would get blocked waiting for the held sched_lock, and the second > of which would never have its interrupt serviced because the first one > blocked on sched_lock would have interrupts disabled and would remain > unable to respond to an IPI... I can confirm that 5.3-BETA7 with SCHED_4BSD is rock solid, but with SCHED_ULE a panic is easily triggered (by make -j4 buildworld). -andyfReceived on Tue Oct 05 2004 - 19:34:00 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:15 UTC