From: Sasha Levin Date: Mon, 18 May 2020 20:26:37 +0000 (-0400) Subject: Drop net-make-ptp-specific-drivers-depend-on-ptp_1588_clo.patch X-Git-Tag: v4.4.224~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6583174002cb3f95319a324dcaace073c67af14e;p=thirdparty%2Fkernel%2Fstable-queue.git Drop net-make-ptp-specific-drivers-depend-on-ptp_1588_clo.patch Signed-off-by: Sasha Levin --- diff --git a/queue-5.6/net-make-ptp-specific-drivers-depend-on-ptp_1588_clo.patch b/queue-5.6/net-make-ptp-specific-drivers-depend-on-ptp_1588_clo.patch deleted file mode 100644 index 43d136d6ce3..00000000000 --- a/queue-5.6/net-make-ptp-specific-drivers-depend-on-ptp_1588_clo.patch +++ /dev/null @@ -1,148 +0,0 @@ -From de35f6f92b03c5b9586bb7fd63b906045e12ee81 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Wed, 29 Apr 2020 00:59:00 -0700 -Subject: net: Make PTP-specific drivers depend on PTP_1588_CLOCK - -From: Clay McClure - -[ Upstream commit b6d49cab44b567b3e0a5544b3d61e516a7355fad ] - -Commit d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") changed -all PTP-capable Ethernet drivers from `select PTP_1588_CLOCK` to `imply -PTP_1588_CLOCK`, "in order to break the hard dependency between the PTP -clock subsystem and ethernet drivers capable of being clock providers." -As a result it is possible to build PTP-capable Ethernet drivers without -the PTP subsystem by deselecting PTP_1588_CLOCK. Drivers are required to -handle the missing dependency gracefully. - -Some PTP-capable Ethernet drivers (e.g., TI_CPSW) factor their PTP code -out into separate drivers (e.g., TI_CPTS_MOD). The above commit also -changed these PTP-specific drivers to `imply PTP_1588_CLOCK`, making it -possible to build them without the PTP subsystem. But as Grygorii -Strashko noted in [1]: - -On Wed, Apr 22, 2020 at 02:16:11PM +0300, Grygorii Strashko wrote: - -> Another question is that CPTS completely nonfunctional in this case and -> it was never expected that somebody will even try to use/run such -> configuration (except for random build purposes). - -In my view, enabling a PTP-specific driver without the PTP subsystem is -a configuration error made possible by the above commit. Kconfig should -not allow users to create a configuration with missing dependencies that -results in "completely nonfunctional" drivers. - -I audited all network drivers that call ptp_clock_register() but merely -`imply PTP_1588_CLOCK` and found five PTP-specific drivers that are -likely nonfunctional without PTP_1588_CLOCK: - - NET_DSA_MV88E6XXX_PTP - NET_DSA_SJA1105_PTP - MACB_USE_HWSTAMP - CAVIUM_PTP - TI_CPTS_MOD - -Note how these symbols all reference PTP or timestamping in their name; -this is a clue that they depend on PTP_1588_CLOCK. - -Change them from `imply PTP_1588_CLOCK` [2] to `depends on PTP_1588_CLOCK`. -I'm not using `select PTP_1588_CLOCK` here because PTP_1588_CLOCK has -its own dependencies, which `select` would not transitively apply. - -Additionally, remove the `select NET_PTP_CLASSIFY` from CPTS_TI_MOD; -PTP_1588_CLOCK already selects that. - -[1]: https://lore.kernel.org/lkml/c04458ed-29ee-1797-3a11-7f3f560553e6@ti.com/ - -[2]: NET_DSA_SJA1105_PTP had never declared any type of dependency on -PTP_1588_CLOCK (`imply` or otherwise); adding a `depends on PTP_1588_CLOCK` -here seems appropriate. - -Cc: Arnd Bergmann -Cc: Richard Cochran -Cc: Nicolas Pitre -Cc: Grygorii Strashko -Cc: Geert Uytterhoeven -Fixes: d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") -Signed-off-by: Clay McClure -Signed-off-by: David S. Miller -Signed-off-by: Sasha Levin ---- - drivers/net/dsa/mv88e6xxx/Kconfig | 2 +- - drivers/net/dsa/sja1105/Kconfig | 1 + - drivers/net/ethernet/cadence/Kconfig | 2 +- - drivers/net/ethernet/cavium/Kconfig | 2 +- - drivers/net/ethernet/ti/Kconfig | 3 +-- - 5 files changed, 5 insertions(+), 5 deletions(-) - -diff --git a/drivers/net/dsa/mv88e6xxx/Kconfig b/drivers/net/dsa/mv88e6xxx/Kconfig -index 6435020d690dd..51185e4d7d15e 100644 ---- a/drivers/net/dsa/mv88e6xxx/Kconfig -+++ b/drivers/net/dsa/mv88e6xxx/Kconfig -@@ -24,8 +24,8 @@ config NET_DSA_MV88E6XXX_PTP - bool "PTP support for Marvell 88E6xxx" - default n - depends on NET_DSA_MV88E6XXX_GLOBAL2 -+ depends on PTP_1588_CLOCK - imply NETWORK_PHY_TIMESTAMPING -- imply PTP_1588_CLOCK - help - Say Y to enable PTP hardware timestamping on Marvell 88E6xxx switch - chips that support it. -diff --git a/drivers/net/dsa/sja1105/Kconfig b/drivers/net/dsa/sja1105/Kconfig -index 0fe1ae173aa1a..68c3086af9af8 100644 ---- a/drivers/net/dsa/sja1105/Kconfig -+++ b/drivers/net/dsa/sja1105/Kconfig -@@ -20,6 +20,7 @@ tristate "NXP SJA1105 Ethernet switch family support" - config NET_DSA_SJA1105_PTP - bool "Support for the PTP clock on the NXP SJA1105 Ethernet switch" - depends on NET_DSA_SJA1105 -+ depends on PTP_1588_CLOCK - help - This enables support for timestamping and PTP clock manipulations in - the SJA1105 DSA driver. -diff --git a/drivers/net/ethernet/cadence/Kconfig b/drivers/net/ethernet/cadence/Kconfig -index 53b50c24d9c95..2c4c12b03502d 100644 ---- a/drivers/net/ethernet/cadence/Kconfig -+++ b/drivers/net/ethernet/cadence/Kconfig -@@ -35,8 +35,8 @@ config MACB - config MACB_USE_HWSTAMP - bool "Use IEEE 1588 hwstamp" - depends on MACB -+ depends on PTP_1588_CLOCK - default y -- imply PTP_1588_CLOCK - ---help--- - Enable IEEE 1588 Precision Time Protocol (PTP) support for MACB. - -diff --git a/drivers/net/ethernet/cavium/Kconfig b/drivers/net/ethernet/cavium/Kconfig -index 6a700d34019e3..4520e7ee00fe1 100644 ---- a/drivers/net/ethernet/cavium/Kconfig -+++ b/drivers/net/ethernet/cavium/Kconfig -@@ -54,7 +54,7 @@ config THUNDER_NIC_RGX - config CAVIUM_PTP - tristate "Cavium PTP coprocessor as PTP clock" - depends on 64BIT && PCI -- imply PTP_1588_CLOCK -+ depends on PTP_1588_CLOCK - ---help--- - This driver adds support for the Precision Time Protocol Clocks and - Timestamping coprocessor (PTP) found on Cavium processors. -diff --git a/drivers/net/ethernet/ti/Kconfig b/drivers/net/ethernet/ti/Kconfig -index bf98e0fa7d8be..cd6eda83e1f8c 100644 ---- a/drivers/net/ethernet/ti/Kconfig -+++ b/drivers/net/ethernet/ti/Kconfig -@@ -89,9 +89,8 @@ config TI_CPTS - config TI_CPTS_MOD - tristate - depends on TI_CPTS -+ depends on PTP_1588_CLOCK - default y if TI_CPSW=y || TI_KEYSTONE_NETCP=y || TI_CPSW_SWITCHDEV=y -- select NET_PTP_CLASSIFY -- imply PTP_1588_CLOCK - default m - - config TI_KEYSTONE_NETCP --- -2.20.1 - diff --git a/queue-5.6/series b/queue-5.6/series index 94f5e365b25..b2689c977b7 100644 --- a/queue-5.6/series +++ b/queue-5.6/series @@ -16,7 +16,6 @@ net-sonic-fix-a-resource-leak-in-an-error-handling-p.patch net-moxa-fix-a-potential-double-free_irq.patch ftrace-selftests-workaround-cgroup-rt-scheduling-iss.patch hv_netvsc-fix-netvsc_start_xmit-s-return-type.patch -net-make-ptp-specific-drivers-depend-on-ptp_1588_clo.patch drop_monitor-work-around-gcc-10-stringop-overflow-wa.patch virtio-blk-handle-block_device_operations-callbacks-.patch sun6i-dsi-fix-gcc-4.8.patch