Re: [PATCH v5 1/2] Renesas Ethernet AVB driver proper

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




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

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux