Date: Fri, 6 Nov 2015 00:08:59 +0000 From: Rasool Al-Saadi <ralsaadi@swin.edu.au> To: Hans Petter Selasky <hps@selasky.org>, "freebsd-net@freebsd.org" <freebsd-net@freebsd.org> Subject: RE: Timing issue with Dummynet on high kernel timer interrupt Message-ID: <6545444AE21C2749939E637E56594CEA3C0E0BD9@gsp-ex02.ds.swin.edu.au> In-Reply-To: <563B2703.5080402@selasky.org> References: <6545444AE21C2749939E637E56594CEA3C0DCCC4@gsp-ex02.ds.swin.edu.au> <5638B7B5.3030802@selasky.org> <6545444AE21C2749939E637E56594CEA3C0DE7FF@gsp-ex02.ds.swin.edu.au> <563B2703.5080402@selasky.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday, 5 November 2015 8:53 PM, Hans Petter Selasky wrote: >=20 > On 11/05/15 00:44, Rasool Al-Saadi wrote: > > > > On Wednesday, 4 November 2015 12:34 AM, Hans Petter Selasky wrote: > >> On 11/03/15 14:14, Rasool Al-Saadi wrote: > >>> Does anyone have thoughts on what we can test next to narrow down > >>> the > >> root-cause of these unusual timing jumps? > >> > >> You might also want to test the "projects/hps_head" branch, which > >> uses a bit different callout implementation. > > > > Thanks Hans for your suggestion. > > I have tried "projects/hps_head" branch and the result is better (numbe= r > of spikes is less than in the master branch). However, the problem still = exists > on the same timer interrupt frequencies (>3000 in my case). You can see i= n > this graph https://goo.gl/photos/C2Mqx4xhMQuzxWnz6 the RTT spikes still > there. > > > > Do you have any further suggestions? > > >=20 > Hi, >=20 > If the jitter is in the xx milliseconds range, like your graph shows, my = guess is > that td_owepreemt is not set when we return from the dummynet() > callback. See attached patch. The patch doesn't solve the problem. I tried it on the master and hps branc= hes. > Else you might want to try to remove the C_HARDCLOCK flag from > callout_reset_sbt() in ip_dummynet.c. Removing C_HARDCLOCK reduces the problem but doesn't solve it completely. = However, removing C_DIRECT_EXEC instead solves the problem (but occasiona= lly very small spike(s) appears in high hz values). =20 I mentioned in my first email that removing these flags makes the issue to = disappear. But what the effects of removing these flags? If it cause timing= issue to Dummynet, why we should use them? Regards, Rasool > --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6545444AE21C2749939E637E56594CEA3C0E0BD9>