From patchwork Sat May 15 22:13:07 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 439451 Delivered-To: patch@linaro.org Received: by 2002:a02:b78d:0:0:0:0:0 with SMTP id f13csp1437290jam; Sat, 15 May 2021 15:14:46 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwI0spKP7VRl/Q630OwYScLxgd5hN39PckcWJz5CGyHkguoC9Sv2xpt4tHdNSfE6p0tCnlc X-Received: by 2002:a92:c8d2:: with SMTP id c18mr3557339ilq.54.1621116886706; Sat, 15 May 2021 15:14:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621116886; cv=none; d=google.com; s=arc-20160816; b=lVuYmW+sbBdYlYngjhCkmauHMq2GNmrp/3JT68CGVI351TmDY9rG3xswSUd67stSIV cjAYD0PYHjOk5Iuy+PJk4R3YzFdLE9s+gyZ8ZfKoowN9zNw/QZ6aN9La3r81zDcTpOBr tgHmVoolER7SMZU1pqt8i0wuW81CqGVPa/TQI3bJwm/+2wAyz4hU14eJQWie8qtCItkh Pq58qKsqkISx1M5+ubTlnw9aP2n8QbCKdoHJX+8fwuCUzaQ6IDkFcrn3QBa+ze6PetGK iG2XPtsfvgnsvTgFixEcOaQ1FxQWBIgadjJix/kSqagiUlVHtl1gn3HHW90ibrQTQ4PY cKZQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=mj1cx6YJKKDd3y89W6ceYmrXQELhoZ2yU/xQmw55a38=; b=Pi8w2GSTMLrgtD8WroNSYUXNHDnCKeA0T300OiPd4npIE+a/n/sZrsFHhVyui4W4n0 1aOoZkH7HlZIRFUDGT5yXN1/0AER//zHVXpkEo01y24V3UrYBLoYvNZk3PVCtpt0gK9e BRRszfyOfG+hPd6gfs1FS/X72w7WlbZAGVaxrgb2CctxDOg7+4mLxqoJlKmkedQ6j2ZQ yFyToNNlrtaLnbxRXZAozp7Dk8xFU3+opDbMJDgpbu3l7e/F8HWK0fWjHjNZ5NqzEiCy /fn6JOJ3ozbuWz++TLV1eYRwNQsOLHQytaw7O8Utvc7e66X6KyY0ES4B3D+6iin/oHaH XfpA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=PFwwy1bO; spf=pass (google.com: domain of netdev-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=netdev-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n6si13185172jal.41.2021.05.15.15.14.44; Sat, 15 May 2021 15:14:46 -0700 (PDT) Received-SPF: pass (google.com: domain of netdev-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=PFwwy1bO; spf=pass (google.com: domain of netdev-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=netdev-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235189AbhEOWPo (ORCPT + 8 others); Sat, 15 May 2021 18:15:44 -0400 Received: from mail.kernel.org ([198.145.29.99]:46684 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229989AbhEOWPl (ORCPT ); Sat, 15 May 2021 18:15:41 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id A1E5260C3F; Sat, 15 May 2021 22:14:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1621116868; bh=+oo6MXkH4s3EnhdaaD6r8S7Ts2xF18eX//Y1vcCqOfM=; h=From:To:Cc:Subject:Date:From; b=PFwwy1bO7qp2WdUqg2r5OCWQtI/oT3+TuEWsAngkiu0BwPZhqqCxWkzhVnBlXwN4/ qRU5OnPQ28C5tyXcQu44SjUQscZT2q1gsZ+iqEf+2/dnhgER/6v/+f1jykSWaAzTEW c4brNb0fObVKhhfk9IaRG8WpOG+0Xyih3KjRXGrcT0O074bwFg5DQgEvMd6jxf+F6q xY2LSPij6H6jMlLUhjZt691ZdJ7ufAv0xQqZ/T3JPFgQ3o2kE6BWzEvQ+DAAhG0RWA ThF+7onqNO4zQ1b9R8X/bPuie0tQy5rjYO19Np37QzAkTOZhpQ3T8m5dFr9OZo5Eoq C8FqANNUl4Rfg== From: Arnd Bergmann To: netdev@vger.kernel.org Cc: Arnd Bergmann , Paul Gortmaker , "Maciej W. Rozycki" , "David S. Miller" , Jakub Kicinski , Doug Berger , Florian Fainelli , Sam Creasey , Geert Uytterhoeven , Finn Thain , Christophe JAILLET , Andrew Lunn , Alexei Starovoitov , Eric Dumazet , Andrii Nakryiko , Bartosz Golaszewski , linux-kernel@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com Subject: [RFC 00/13] [net-next] drivers/net/Space.c cleanup Date: Sun, 16 May 2021 00:13:07 +0200 Message-Id: <20210515221320.1255291-1-arnd@kernel.org> X-Mailer: git-send-email 2.29.2 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Arnd Bergmann I discovered that there are still a couple of drivers that rely on beiong statically initialized from drivers/net/Space.c the way we did in the last century. As it turns out, there are a couple of simplifications that can be made here, as well as some minor bugfixes. There are four classes of drivers that use this: - most 10mbit ISA bus ethernet drivers (and one 100mbit one) - both ISA localtalk drivers - several m68k ethernet drivers - one obsolete WAN driver I found that the drivers using in arch/m68k/ don't actually benefit from being probed this way as they do not rely on the netdev= command line arguments, they have simply never been changed to work like a modern driver. I had previously sent a patch to remove the sbni/granch driver, and there were no objections to this patch but forgot to resend it after some discussion about another patch in the same series. For the ISA drivers, there is usually no way to probe multiple devices at boot time other than the netdev= arguments, so all that logic is left in place for the moment, but centralized in a single file that only gets included in the kernel build if one or more of the drivers are built-in. I'm also changing the old-style init_module() functions in these drivers to static functions with a module_init() annotation, to more closely resemble modern drivers. There are only a few users of the init_module() interface remaining, and removing that would likely allow some cleanups in the module loader code. There are a couple of possible follow-ups: * Most of ISA drivers could be trivially converted to use the module_init() entry point, which would slightly change the command line syntax and still support a single device of that type, but not more than one. We could decide that this is fine, as few users remain that have any of these devices, let alone more than one. * Alternatively, the fact that the ISA drivers have never been cleaned up can be seen as an indication that there isn't really much remaining interest in them. We could move them to drivers/staging along with the consolidated contents of drivers/net/Space.c and see if anyone still uses them and eventually remove the ones that nobody has. I can see that Paul Gortmaker removed a number of less common ISA ethernet drivers in 2013, but at the time left these because they were possibly still relevant. * If we end up moving the cops localtalk driver to staging, support for localtalk devices (though probably not appletalk over ethernet) can arguably meet the same fate. If someone wants to work on those follow-ups or thinks they are a good idea, let me know, otherwise I'd leave it at this cleanup. Arnd Arnd Bergmann (13): [net-next] bcmgenet: remove call to netdev_boot_setup_check [net-next] natsemi: sonic: stop calling netdev_boot_setup_check [net-next] appletalk: ltpc: remove static probing [net-next] 3c509: stop calling netdev_boot_setup_check [net-next] cs89x0: rework driver configuration [net-next] m68k: remove legacy probing [net-next] move netdev_boot_setup into Space.c [net-next] make legacy ISA probe optional [net-next] wan: remove stale Kconfig entries [net-next] wan: remove sbni/granch driver [net-next] wan: hostess_sv11: use module_init/module_exit helpers [net-next] ethernet: isa: convert to module_init/module_exit [net-next] 8390: xsurf100: avoid including lib8390.c .../admin-guide/kernel-parameters.txt | 2 - drivers/net/Kconfig | 7 + drivers/net/Makefile | 3 +- drivers/net/Space.c | 178 +- drivers/net/appletalk/Kconfig | 4 +- drivers/net/appletalk/ltpc.c | 7 +- drivers/net/ethernet/3com/3c509.c | 3 - drivers/net/ethernet/3com/3c515.c | 3 +- drivers/net/ethernet/3com/Kconfig | 1 + drivers/net/ethernet/8390/Kconfig | 3 + drivers/net/ethernet/8390/Makefile | 2 +- drivers/net/ethernet/8390/apne.c | 11 +- drivers/net/ethernet/8390/ne.c | 5 +- drivers/net/ethernet/8390/smc-ultra.c | 9 +- drivers/net/ethernet/8390/wd.c | 7 +- drivers/net/ethernet/8390/xsurf100.c | 7 +- drivers/net/ethernet/amd/Kconfig | 2 + drivers/net/ethernet/amd/atarilance.c | 11 +- drivers/net/ethernet/amd/lance.c | 6 +- drivers/net/ethernet/amd/mvme147.c | 16 +- drivers/net/ethernet/amd/ni65.c | 6 +- drivers/net/ethernet/amd/sun3lance.c | 19 +- .../net/ethernet/broadcom/genet/bcmgenet.c | 2 - drivers/net/ethernet/cirrus/Kconfig | 27 +- drivers/net/ethernet/cirrus/cs89x0.c | 31 +- drivers/net/ethernet/i825xx/82596.c | 24 +- drivers/net/ethernet/i825xx/sun3_82586.c | 17 +- drivers/net/ethernet/natsemi/jazzsonic.c | 2 - drivers/net/ethernet/natsemi/xtsonic.c | 1 - drivers/net/ethernet/smsc/Kconfig | 1 + drivers/net/ethernet/smsc/smc9194.c | 6 +- drivers/net/wan/Kconfig | 51 - drivers/net/wan/Makefile | 1 - drivers/net/wan/hostess_sv11.c | 6 +- drivers/net/wan/sbni.c | 1638 ----------------- drivers/net/wan/sbni.h | 147 -- include/linux/netdevice.h | 13 - include/net/Space.h | 10 - net/core/dev.c | 125 -- net/ethernet/eth.c | 2 - 40 files changed, 259 insertions(+), 2157 deletions(-) delete mode 100644 drivers/net/wan/sbni.c delete mode 100644 drivers/net/wan/sbni.h -- 2.29.2 Cc: Paul Gortmaker Cc: "Maciej W. Rozycki" Cc: "David S. Miller" Cc: Jakub Kicinski Cc: Doug Berger Cc: Florian Fainelli Cc: Sam Creasey Cc: Geert Uytterhoeven Cc: Finn Thain Cc: Christophe JAILLET Cc: Andrew Lunn Cc: Alexei Starovoitov Cc: Eric Dumazet Cc: Andrii Nakryiko Cc: Bartosz Golaszewski Cc: netdev@vger.kernel.org Cc: linux-kernel@vger.kernel.org Cc: bcm-kernel-feedback-list@broadcom.com