Re: [PATCH net-next] net: x25_asy: Delete the x25_asy driver

From: Arnd Bergmann
Date: Thu Nov 05 2020 - 10:07:14 EST


On Thu, Nov 5, 2020 at 8:34 AM Xie He <xie.he.0141@xxxxxxxxx> wrote:
>
> This driver transports LAPB (X.25 link layer) frames over TTY links.
>
> I can safely say that this driver has no actual user because it was
> not working at all until:
> commit 8fdcabeac398 ("drivers/net/wan/x25_asy: Fix to make it work")
>
> The code in its current state still has problems:
>
> 1.
> The uses of "struct x25_asy" in x25_asy_unesc (when receiving) and in
> x25_asy_write_wakeup (when sending) are not protected by locks against
> x25_asy_change_mtu's changing of the transmitting/receiving buffers.
> Also, all "netif_running" checks in this driver are not protected by
> locks against the ndo_stop function.
>
> 2.
> The driver stops all TTY read/write when the netif is down.
> I think this is not right because this may cause the last outgoing frame
> before the netif goes down to be incompletely transmitted, and the first
> incoming frame after the netif goes up to be incompletely received.
>
> And there may also be other problems.
>
> I was planning to fix these problems but after recent discussions about
> deleting other old networking code, I think we may just delete this
> driver, too.
>
> Signed-off-by: Xie He <xie.he.0141@xxxxxxxxx>
> ---
> Documentation/process/magic-number.rst | 1 -
> .../it_IT/process/magic-number.rst | 1 -
> .../zh_CN/process/magic-number.rst | 1 -
> arch/mips/configs/gpr_defconfig | 1 -
> arch/mips/configs/mtx1_defconfig | 1 -
> drivers/net/wan/Kconfig | 15 -
> drivers/net/wan/Makefile | 1 -
> drivers/net/wan/x25_asy.c | 836 ------------------
> drivers/net/wan/x25_asy.h | 46 -
> 9 files changed, 903 deletions(-)
> delete mode 100644 drivers/net/wan/x25_asy.c
> delete mode 100644 drivers/net/wan/x25_asy.h

Adding Martin Schiller and Andrew Hendry, plus the linux-x25 mailing
list to Cc. When I last looked at the wan drivers, I think I concluded
that this should still be kept around, but I do not remember why.
OTOH if it was broken for a long time, that is a clear indication that
it was in fact unused.

Since you did the bugfix mentioned above, do you have an idea
when it could have last worked? I see it was originally merged in
linux-2.3.21, and Stephen Hemminger did a cleanup for
linux-2.6.0-rc3 that he apparently tested but also said "Not sure
if anyone ever uses this.".

Hopefully Martin or Andrew can provide a definite Ack or Nack on this.

Arnd