Skip site navigation (1)Skip section navigation (2)
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>