From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
To: Alison Chaiken <alison@peloton-tech.com>
Cc: Steven Rostedt <rostedt@goodmis.org>,
LKML <linux-kernel@vger.kernel.org>,
linux-rt-users <linux-rt-users@vger.kernel.org>,
netdev <netdev@vger.kernel.org>,
Thomas Gleixner <tglx@linutronix.de>,
Peter Zijlstra <peterz@infradead.org>,
Clark Williams <williams@redhat.com>,
Eric Dumazet <eric.dumazet@gmail.com>,
David Miller <davem@davemloft.net>
Subject: Re: [PATCH][RT] netpoll: Always take poll_lock when doing polling
Date: Thu, 9 Jun 2016 14:37:33 +0200 [thread overview]
Message-ID: <20160609123733.GB6305@linutronix.de> (raw)
In-Reply-To: <CAOuSAjeUX_tvzr9K8B4T-TdXUDcYqFxbtYTa=ke-ePhMJo5NVQ@mail.gmail.com>
* Alison Chaiken | 2016-06-07 17:19:43 [-0700]:
>Sorry to be obscure; I had applied that patch to v4.1.6-rt5.
Using the latest is often not a bad choice compared to the random tree
you have here.
>> What I remember from testing the two patches on am335x was that before a
>> ping flood on gbit froze the serial console but with them it the ping
>> flood was not noticed.
>
>I compiled a kernel from upstream d060a36 "Merge branch
>'ti-linux-4.1.y' of git.ti.com:ti-linux-kernel/ti-linux-kernel into
>ti-rt-linux-4.1.y" which is unpatched except for using a
>board-appropriate device-tree. The serial console is responsive
>with all our RT userspace applications running alongside a rapid
>external ping. However, our main event loop misses frequently as
>soon as ping faster than 'ping -i 0.0002' is run. mpstat shows that
>the sum of the hard IRQ rates in a second is equal precisely to the
>NET_RX rate, which is ~3400/s. Does the fact that 3400 < (1/0.0002)
>already mean that some packets are dropped? ftrace shows that
Not necessarily. The ping command reports how many packets were
received. It is possible that the sender was not able to send that many
packates _or_ the received was able to process more packets during a
single interrupt.
>cpsw_rx_poll() is called even when there is essentially no network
>traffic, so I'm not sure how to tell if NAPI is working as intended.
You should see an invocation of __raise_softirq_irqoff_ksoft() and then
cpsw's poll function should run in "ksoftirqd/" context instead in the
context of the task it runs now.
>I tried running the wakeup_rt tracer, but it loads the system too
>much. With ftrace capturing IRQ, scheduler and net events, we're
>writing out markers into the trace buffer when the event loop makes
>its deadline and then when it misses so that we can compare the normal
>and long-latency intervals, but there doesn't appear to be a smoking
>gun in the difference between the two.
You would need to figure out what adds the latency. My understanding is
that your RT application is doing CAN traffic and is not meeting the
deadline. So you drop CAN packets in the end?
>Thanks for all your help,
>Alison
Sebastian
next prev parent reply other threads:[~2016-06-09 12:37 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-26 23:56 [PATCH][RT] netpoll: Always take poll_lock when doing polling Steven Rostedt
2016-06-02 16:12 ` Sebastian Andrzej Siewior
2016-06-04 11:11 ` Steven Rostedt
2016-06-05 15:16 ` Alison Chaiken
2016-06-06 12:03 ` Clark Williams
2016-06-06 23:25 ` Alison Chaiken
2016-06-07 9:46 ` Sebastian Andrzej Siewior
2016-06-08 0:19 ` Alison Chaiken
2016-06-09 12:37 ` Sebastian Andrzej Siewior [this message]
2016-09-03 23:40 ` Alison Chaiken
2016-06-10 15:57 ` Sebastian Andrzej Siewior
2016-06-10 16:11 ` Steven Rostedt
2016-06-10 16:20 ` Sebastian Andrzej Siewior
2016-06-10 16:45 ` Steven Rostedt
2016-06-10 15:30 ` Sebastian Andrzej Siewior
2016-06-10 16:28 ` Eric Dumazet
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160609123733.GB6305@linutronix.de \
--to=bigeasy@linutronix.de \
--cc=alison@peloton-tech.com \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rt-users@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=williams@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).