Date: Tue, 26 Nov 2013 13:38:28 -0800 From: Adrian Chadd <adrian@freebsd.org> To: Bret Ketchum <bcketchum@gmail.com> Cc: "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>, Alexander Motin <mav@freebsd.org> Subject: Re: 9.1 callout behavior Message-ID: <CAJ-VmokPuW1qnOvz5CCei4nO4y3y97m7xGx6E9TcEW%2B8KxFOuw@mail.gmail.com> In-Reply-To: <CAGm6yaSkKufjp6xp-OB4nSuqPFVEFA0J3oG8eMT3n%2BySYJEmyQ@mail.gmail.com> References: <CAGm6yaTEFECTYVb94A13TaXMPSLtKLpTbw4iNdgd8SuNF1QDaA@mail.gmail.com> <CAJ-Vmokrchy4pXLvZ21sCV09fQUdYKeUYCEH1U1NdfDBxhyJQg@mail.gmail.com> <CAGm6yaSkKufjp6xp-OB4nSuqPFVEFA0J3oG8eMT3n%2BySYJEmyQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Yup! -a On 26 November 2013 04:10, Bret Ketchum <bcketchum@gmail.com> wrote: > > Would there be any benefit in producing an example kernel module which > exhibits this behavior? > > > On Thu, Nov 21, 2013 at 2:19 PM, Adrian Chadd <adrian@freebsd.org> wrote: >> >> Hi, >> >> It sounds like you may have found an interesting test case. >> >> Mav, any ideas? >> >> >> >> -adrian >> >> >> On 21 November 2013 05:20, Bret Ketchum <bcketchum@gmail.com> wrote: >> > I've a callout which runs every 100ms and does a bit of accounting >> > using the global ticks variable. This one-shot callout was called fairly >> > consistently in 8.1, every 100ms give or take a few thousand clocks. >> > I've >> > recently upgraded to 9.1 and for the most part the period is consistent. >> > However, periodically the callout function is executed anywhere between >> > 5ms >> > to 20ms after the callout was reset and the function returned while >> > global >> > ticks has increased 8x. The hardware has not changed (using the same >> > timecounter configuration): >> > >> > CPU: Intel(R) Xeon(R) CPU E5-2640 0 @ 2.50GHz (2500.05-MHz K8-class CPU) >> > >> > kern.timecounter.hardware: TSC-low >> > kern.timecounter.tick: 1 >> > kern.timecounter.invariant_tsc: 1 >> > kern.timecounter.smp_tsc: 1 >> > >> > And default eventtimer configuration: >> > >> > kern.eventtimer.singlemul: 2 >> > kern.eventtimer.idletick: 0 >> > kern.eventtimer.activetick: 1 >> > kern.eventtimer.timer: LAPIC >> > kern.eventtimer.periodic: 0 >> > >> > If tickless mode is disabled the inconsistency goes away. Is the >> > premature expiration of the callout expected? Is the jump in global >> > ticks >> > typical (say from 100 ticks to 800 ticks in 1.5ms)? >> > >> > Bret >> > _______________________________________________ >> > freebsd-hackers@freebsd.org mailing list >> > http://lists.freebsd.org/mailman/listinfo/freebsd-hackers >> > To unsubscribe, send any mail to >> > "freebsd-hackers-unsubscribe@freebsd.org" > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-VmokPuW1qnOvz5CCei4nO4y3y97m7xGx6E9TcEW%2B8KxFOuw>