On Wed, 01 Sep 2010 13:44:26 +0300 Alexander Motin <mav_at_FreeBSD.org> wrote: > Alexander Motin wrote: > > Gary Jennejohn wrote: > >> On Mon, 30 Aug 2010 12:11:48 +0200 > >> OK, this is purely anecdotal, but I'll report it anyway. > >> > >> I was running pretty much all day with the patched kernel and things > >> seemed to be working quite well. > >> > >> Then, after about 7 hours, everything just stopped. > >> > >> I had gkrellm running and noticed that it updated only when I moved the > >> mouse. > >> > >> This behavior leads me to suspect that the timer interrupts had stopped > >> working and the mouse interrupts were causing processes to get scheduled. > >> > >> Unfortunately, I wasn't able to get a dump and had to hit reset to > >> recover. > >> > >> As I wrote above, this is only anecdotal, but I've never seen anything > >> like this before applying the patches. > > > > One-shot timers have one weak side: if for some reason timer interrupt > > getting lost -- there will be nobody to reload the timer. Such cases > > probably will require special attention. Same funny situation with > > mouse-driven scheduler happens also if LAPIC timer dies when pre-Core-iX > > CPU goes to C3 state. > > I have reproduced the problem locally. It happens more often when ticks > are not stopped on idle, like in your original case (or if explicitly > enabled by kern.eventtimer.idletick sysctl). > > I've made some changes to HPET driver, which, I hope, should fix > interrupt losses there. > > Updated patch: http://people.freebsd.org/~mav/timers_oneshot6.patch > > Patch also includes some optimizations to reduce lock contention. > > Thanks for testing. > OK, I'll give it a try, althought your previous patch seems to be working quite well. BTW I've also been using tm6292_idle.patch. Do I really need it? -- Gary JennejohnReceived on Wed Sep 01 2010 - 10:15:45 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:06 UTC