From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
To: David Miller <davem@davemloft.net>
Cc: robh+dt@kernel.org, pawel.moll@arm.com, mark.rutland@arm.com,
ijc+devicetree@hellion.org.uk, devicetree@vger.kernel.org,
galak@codeaurora.org, netdev@vger.kernel.org,
richardcochran@gmail.com, linux-sh@vger.kernel.org,
mitsuhiro.kimura.kc@renesas.com
Subject: Re: [PATCH v5 1/2] Renesas Ethernet AVB driver proper
Date: Mon, 08 Jun 2015 21:44:16 +0000 [thread overview]
Message-ID: <55760CB0.1020503@cogentembedded.com> (raw)
In-Reply-To: <20150603.201204.761049104805679684.davem@davemloft.net>
Hello.
On 06/04/2015 06:12 AM, David Miller wrote:
>> + /* Received network control queue */
>> + if (ris0 & RIS0_FRF1) {
>> + ravb_write(ndev, ~RIS0_FRF1, RIS0);
>> + /* Timestamp of network control packets that is based
>> + * on IEEE802.1AS, is used time synchronization of PTP.
>> + * It should not be handled by NAPI scheduling, because
>> + * it needs to be received as soon as possible.
>> + */
>> + ravb_rx(ndev, NULL, RAVB_NC);
>> + result = IRQ_HANDLED;
>> + }
> Nobody else makes this distinction, all packets should be processed
> via your NAPI path.
I see.
> When I see people conditionally invoking netif_rx()
> vs. netif_receive_skb() in their packet receive routine, like
> conditional locking, it's a big red flag.
> Furthermore, you should pass the NAPI context into ravb_rx() and use
I guess I should have one NAPI context per RX queue?
> it so that you can invoke napi_gro_receive() on all of the packets and
> therefore support GRO.
Hmm, I don't think I have a hardware support for generic RX offload...
I'm still unsure what it is anyway -- is it used for IP packet defragmentation?
WBR, Sergei
WARNING: multiple messages have this Message-ID (diff)
From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
To: David Miller <davem@davemloft.net>
Cc: robh+dt@kernel.org, pawel.moll@arm.com, mark.rutland@arm.com,
ijc+devicetree@hellion.org.uk, devicetree@vger.kernel.org,
galak@codeaurora.org, netdev@vger.kernel.org,
richardcochran@gmail.com, linux-sh@vger.kernel.org,
mitsuhiro.kimura.kc@renesas.com
Subject: Re: [PATCH v5 1/2] Renesas Ethernet AVB driver proper
Date: Tue, 09 Jun 2015 00:44:16 +0300 [thread overview]
Message-ID: <55760CB0.1020503@cogentembedded.com> (raw)
In-Reply-To: <20150603.201204.761049104805679684.davem@davemloft.net>
Hello.
On 06/04/2015 06:12 AM, David Miller wrote:
>> + /* Received network control queue */
>> + if (ris0 & RIS0_FRF1) {
>> + ravb_write(ndev, ~RIS0_FRF1, RIS0);
>> + /* Timestamp of network control packets that is based
>> + * on IEEE802.1AS, is used time synchronization of PTP.
>> + * It should not be handled by NAPI scheduling, because
>> + * it needs to be received as soon as possible.
>> + */
>> + ravb_rx(ndev, NULL, RAVB_NC);
>> + result = IRQ_HANDLED;
>> + }
> Nobody else makes this distinction, all packets should be processed
> via your NAPI path.
I see.
> When I see people conditionally invoking netif_rx()
> vs. netif_receive_skb() in their packet receive routine, like
> conditional locking, it's a big red flag.
> Furthermore, you should pass the NAPI context into ravb_rx() and use
I guess I should have one NAPI context per RX queue?
> it so that you can invoke napi_gro_receive() on all of the packets and
> therefore support GRO.
Hmm, I don't think I have a hardware support for generic RX offload...
I'm still unsure what it is anyway -- is it used for IP packet defragmentation?
WBR, Sergei
next prev parent reply other threads:[~2015-06-08 21:44 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-02 20:44 [PATCH v5 1/2] Renesas Ethernet AVB driver proper Sergei Shtylyov
2015-06-02 20:44 ` Sergei Shtylyov
2015-06-04 3:12 ` David Miller
2015-06-04 3:12 ` David Miller
2015-06-08 21:44 ` Sergei Shtylyov [this message]
2015-06-08 21:44 ` Sergei Shtylyov
2015-06-08 22:19 ` David Miller
2015-06-08 22:19 ` David Miller
2015-06-08 22:41 ` Sergei Shtylyov
2015-06-08 22:41 ` Sergei Shtylyov
2015-06-08 22:43 ` David Miller
2015-06-08 22:43 ` David Miller
2015-06-09 0:12 ` Eric Dumazet
2015-06-09 0:12 ` 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=55760CB0.1020503@cogentembedded.com \
--to=sergei.shtylyov@cogentembedded.com \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=galak@codeaurora.org \
--cc=ijc+devicetree@hellion.org.uk \
--cc=linux-sh@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mitsuhiro.kimura.kc@renesas.com \
--cc=netdev@vger.kernel.org \
--cc=pawel.moll@arm.com \
--cc=richardcochran@gmail.com \
--cc=robh+dt@kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.