# Re: \[PATCH net-next v5\] net: x25: Queue received packets in the drivers instead of per-CPU queues

- From: David Miller \<davem@davemloft.net\>
- Date: 2021-04-06 23:14:40 
- List: netdev
- Page: https://ratatoskr.run/netdev/2021/04/6328797
- Thread: https://ratatoskr.run/netdev/2021/04/6325113/t.md

```text
From: Xie He <redacted>
Date: Fri,  2 Apr 2021 02:30:00 -0700

> X.25 Layer 3 (the Packet Layer) expects layer 2 to provide a reliable
> datalink service such that no packets are reordered or dropped. And
> X.25 Layer 2 (the LAPB layer) is indeed designed to provide such service.
> 
> However, this reliability is not preserved when a driver calls "netif_rx"
> to deliver the received packets to layer 3, because "netif_rx" will put
> the packets into per-CPU queues before they are delivered to layer 3.
> If there are multiple CPUs, the order of the packets may not be preserved.
> The per-CPU queues may also drop packets if there are too many.
> 
> Therefore, we should not call "netif_rx" to let it queue the packets.
> Instead, we should use our own queue that won't reorder or drop packets.
> 
> This patch changes all X.25 drivers to use their own queues instead of
> calling "netif_rx". The patch also documents this requirement in the
> "x25-iface" documentation.
> 
> Cc: Martin Schiller <ms@dev.tdt.de>
> Signed-off-by: Xie He <redacted>


This no longe applies to net-next, please respin.

Thank you.
```
