Re: [PATCH 4/4] [RFC] staging/net: move AF_X25 into drivers/staging

Greg Kroah-Hartman
2019-12-09T15:41:07Z

On Mon, Dec 09, 2019 at 04:12:56PM +0100, Arnd Bergmann wrote:
> syzbot keeps finding issues in the X.25 implementation that nobody is
> interested in fixing. Given that all the x25 patches of the past years
> that are not global cleanups tend to fix user-triggered oopses, is it
> time to just retire the subsystem?
>
> I looked a bit closer and found:
>
> - we used to support x25 hardware in linux, but with WAN_ROUTER
> removed in linux-3.9 and isdn4linux removed in 5.3, there is only hdlc,
> ethernet and the N_X25 tty ldisc left. Out of these, only HDLC_X25 made
> it beyond the experimental stage, so this is probably what everyone
> uses if there are users at all.
>
> - The most common hdlc hardware that people seem to be using are
> the "farsync" PCIe and USB adapters. Linux only has drivers for the
> older PCI devices from that series, but no hardware that works on
> modern systems.
>
> - The manufacturer still updates their own kernel drivers and provides
> support, but ships that with a fork or rewrite of the subsystem
> code now. Kevin Curtis is also listed as maintainer, but appears to
> have given up in 2013 after [1].
>
> - The most popular software implementation appears to be X25 over TCP
> (XOT), which is supported by Farsite and other out-of-tree stacks but
> never had an implementation in mainline.
>
> - Most other supported HDLC hardware that we supoprt is for the ISA or
> PCI buses. There are newer PCIe or USB devices, but those all require
> a custom device driver and often a custom subsystem, none of which got
> submitted for mainline inclusion. This includes hardware from Microgate
> (SyncLink), Comtrol (RocketPort Express) and Sealevel (SeaMAC).
>
> - The X.25 subsystem is listed as "odd fixes", but the last reply on
> the netdev mailing list from the maintainer was also in 2013[2].
>
> - The HDLC subsystem itself is listed as maintained by Krzysztof Halasa,
> and there were new drivers merged for SoC based devices as late as
> 2016 by Zhao Qiang: Freescale/NXP QUICC Engine and Maxim ds26522.
> There has not been much work on HDLC or drivers/net/wan recently,
> but both developers are still responsive on the mailing list and
> work on other parts of the kernel.
>
> Based on the above, I would conclude that X.25 can probably get moved
> to staging as keeping it in the kernel seems to do more harm than good,
> but HDLC below it should probably stay as there it seems there are still
> users of a small subset of the mainline drivers.
>
> Move all of X.25 into drivers/staging for now, with a projected removal
> date set for Linux-5.8.
>
> Cc: Eric Biggers <ebiggers@kernel.org>
> Cc: Andrew Hendry <andrew.hendry@gmail.com>
> Cc: linux-x25@vger.kernel.org
> Cc: Kevin Curtis <kevin.curtis@farsite.com>
> Cc: "R.J.Dunlop" <bob.dunlop@farsite.com>
> Cc: Zhao Qiang <qiang.zhao@nxp.com>
> Cc: Krzysztof Halasa <khc@pm.waw.pl>
> Reported-by: syzbot+429c200ffc8772bfe070@syzkaller.appspotmail.com
> Reported-by: syzbot+eec0c87f31a7c3b66f7b@syzkaller.appspotmail.com
> Link: https://syzkaller.appspot.com/bug?id=5b0ecf0386f56be7fe7210a14d0f62df765c0c39
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ----
>
> If anyone has different views or additional information, let us know.
>
> If you agree with the above, please Ack.

ACK!

Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>