Message ID | 20210128163338.22665-1-kurt@linutronix.de (mailing list archive) |
---|---|
State | Accepted |
Commit | 6c13d75beee5313a38adab7e14365724e301886f |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net-next] net: dsa: hellcreek: Add missing TAPRIO dependency | expand |
Context | Check | Description |
---|---|---|
netdev/cover_letter | success | Link |
netdev/fixes_present | success | Link |
netdev/patch_count | success | Link |
netdev/tree_selection | success | Clearly marked for net-next |
netdev/subject_prefix | success | Link |
netdev/cc_maintainers | success | CCed 8 of 8 maintainers |
netdev/source_inline | success | Was 0 now: 0 |
netdev/verify_signedoff | success | Link |
netdev/module_param | success | Was 0 now: 0 |
netdev/build_32bit | success | Errors and warnings before: 0 this patch: 0 |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/verify_fixes | success | Link |
netdev/checkpatch | success | total: 0 errors, 0 warnings, 0 checks, 7 lines checked |
netdev/build_allmodconfig_warn | success | Errors and warnings before: 0 this patch: 0 |
netdev/header_inline | success | Link |
netdev/stable | success | Stable not CCed |
On Thu, Jan 28, 2021 at 05:33:38PM +0100, Kurt Kanzenbach wrote: > Add missing dependency to TAPRIO to avoid build failures such as: > > |ERROR: modpost: "taprio_offload_get" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! > |ERROR: modpost: "taprio_offload_free" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! > > Fixes: 24dfc6eb39b2 ("net: dsa: hellcreek: Add TAPRIO offloading support") > Reported-by: Randy Dunlap <rdunlap@infradead.org> > Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> > --- > drivers/net/dsa/hirschmann/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > Note: It's not against net, because the fixed commit is not in net tree, yet. > > diff --git a/drivers/net/dsa/hirschmann/Kconfig b/drivers/net/dsa/hirschmann/Kconfig > index e01191107a4b..9ea2c643f8f8 100644 > --- a/drivers/net/dsa/hirschmann/Kconfig > +++ b/drivers/net/dsa/hirschmann/Kconfig > @@ -5,6 +5,7 @@ config NET_DSA_HIRSCHMANN_HELLCREEK > depends on NET_DSA > depends on PTP_1588_CLOCK > depends on LEDS_CLASS > + depends on NET_SCH_TAPRIO > select NET_DSA_TAG_HELLCREEK > help > This driver adds support for Hirschmann Hellcreek TSN switches. > -- > 2.20.1 > Note that for sja1105, Arnd solved it this way. I am still not sure why. commit 5d294fc483405de9c0913ab744a31e6fa7cb0f40 Author: Arnd Bergmann <arnd@arndb.de> Date: Fri Oct 25 09:26:35 2019 +0200 net: dsa: sja1105: improve NET_DSA_SJA1105_TAS dependency An earlier bugfix introduced a dependency on CONFIG_NET_SCH_TAPRIO, but this missed the case of NET_SCH_TAPRIO=m and NET_DSA_SJA1105=y, which still causes a link error: drivers/net/dsa/sja1105/sja1105_tas.o: In function `sja1105_setup_tc_taprio': sja1105_tas.c:(.text+0x5c): undefined reference to `taprio_offload_free' sja1105_tas.c:(.text+0x3b4): undefined reference to `taprio_offload_get' drivers/net/dsa/sja1105/sja1105_tas.o: In function `sja1105_tas_teardown': sja1105_tas.c:(.text+0x6ec): undefined reference to `taprio_offload_free' Change the dependency to only allow selecting the TAS code when it can link against the taprio code. Fixes: a8d570de0cc6 ("net: dsa: sja1105: Add dependency for NET_DSA_SJA1105_TAS") Fixes: 317ab5b86c8e ("net: dsa: sja1105: Configure the Time-Aware Scheduler via tc-taprio offload") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David S. Miller <davem@davemloft.net> diff --git a/drivers/net/dsa/sja1105/Kconfig b/drivers/net/dsa/sja1105/Kconfig index f40b248f0b23..ffac0ea4e8d5 100644 --- a/drivers/net/dsa/sja1105/Kconfig +++ b/drivers/net/dsa/sja1105/Kconfig @@ -26,8 +26,8 @@ config NET_DSA_SJA1105_PTP config NET_DSA_SJA1105_TAS bool "Support for the Time-Aware Scheduler on NXP SJA1105" - depends on NET_DSA_SJA1105 - depends on NET_SCH_TAPRIO + depends on NET_DSA_SJA1105 && NET_SCH_TAPRIO + depends on NET_SCH_TAPRIO=y || NET_DSA_SJA1105=m help This enables support for the TTEthernet-based egress scheduling engine in the SJA1105 DSA driver, which is controlled using a
On Thu, Jan 28, 2021 at 5:37 PM Vladimir Oltean <olteanv@gmail.com> wrote: > > On Thu, Jan 28, 2021 at 05:33:38PM +0100, Kurt Kanzenbach wrote: > > Add missing dependency to TAPRIO to avoid build failures such as: > > > > |ERROR: modpost: "taprio_offload_get" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! > > |ERROR: modpost: "taprio_offload_free" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! > > > > Fixes: 24dfc6eb39b2 ("net: dsa: hellcreek: Add TAPRIO offloading support") > > Reported-by: Randy Dunlap <rdunlap@infradead.org> > > Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de> > Note that for sja1105, Arnd solved it this way. I am still not sure why. > > commit 5d294fc483405de9c0913ab744a31e6fa7cb0f40 > Author: Arnd Bergmann <arnd@arndb.de> > Date: Fri Oct 25 09:26:35 2019 +0200 > > net: dsa: sja1105: improve NET_DSA_SJA1105_TAS dependency > > An earlier bugfix introduced a dependency on CONFIG_NET_SCH_TAPRIO, > but this missed the case of NET_SCH_TAPRIO=m and NET_DSA_SJA1105=y, > which still causes a link error: > As I described in this commit, the problem here was that NET_DSA_SJA1105_TAS is a 'bool' symbol with a dependency on a 'tristate', so you have to prevent the option from getting enabled when it's part of a driver that gets built into the kernel but the dependnecy is in a loadable module. NET_DSA_HIRSCHMANN_HELLCREEK on the other hand is a 'tristate' symbol itself, so the dependency takes care of it: you cannot set it to =y when its dependency is =m. Arnd
On 1/28/21 8:33 AM, Kurt Kanzenbach wrote: > Add missing dependency to TAPRIO to avoid build failures such as: > > |ERROR: modpost: "taprio_offload_get" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! > |ERROR: modpost: "taprio_offload_free" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! > > Fixes: 24dfc6eb39b2 ("net: dsa: hellcreek: Add TAPRIO offloading support") > Reported-by: Randy Dunlap <rdunlap@infradead.org> > Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> > --- > drivers/net/dsa/hirschmann/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > Note: It's not against net, because the fixed commit is not in net tree, yet. > > diff --git a/drivers/net/dsa/hirschmann/Kconfig b/drivers/net/dsa/hirschmann/Kconfig > index e01191107a4b..9ea2c643f8f8 100644 > --- a/drivers/net/dsa/hirschmann/Kconfig > +++ b/drivers/net/dsa/hirschmann/Kconfig > @@ -5,6 +5,7 @@ config NET_DSA_HIRSCHMANN_HELLCREEK > depends on NET_DSA > depends on PTP_1588_CLOCK > depends on LEDS_CLASS > + depends on NET_SCH_TAPRIO > select NET_DSA_TAG_HELLCREEK > help > This driver adds support for Hirschmann Hellcreek TSN switches. > Thanks. This fixes the build errors. Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested However, I do see this in the build output when NET_DSA_HIRSCHMANN_HELLCREEK is disabled: AR drivers/net/dsa/hirschmann/built-in.a That is an empty archive file (8 bytes), which is caused by drivers/net/dsa/Makefile: obj-y += hirschmann/ Is there some reason that it's not done like this? This passes my y/m/n testing. --- From: Randy Dunlap <rdunlap@infradead.org> This prevents descending into the net/dsa/hirschmann/ subdirectory and building an empty archive file: AR drivers/net/dsa/hirschmann/built-in.a Signed-off-by: Randy Dunlap <rdunlap@infradead.org> --- drivers/net/dsa/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- linux-next-20210128.orig/drivers/net/dsa/Makefile +++ linux-next-20210128/drivers/net/dsa/Makefile @@ -18,7 +18,7 @@ obj-$(CONFIG_NET_DSA_VITESSE_VSC73XX) += obj-$(CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM) += vitesse-vsc73xx-platform.o obj-$(CONFIG_NET_DSA_VITESSE_VSC73XX_SPI) += vitesse-vsc73xx-spi.o obj-y += b53/ -obj-y += hirschmann/ +obj-$(CONFIG_NET_DSA_HIRSCHMANN_HELLCREEK) += hirschmann/ obj-y += microchip/ obj-y += mv88e6xxx/ obj-y += ocelot/
On 1/29/21 6:26 AM, Kurt Kanzenbach wrote: > On Thu Jan 28 2021, Randy Dunlap wrote: >> On 1/28/21 8:33 AM, Kurt Kanzenbach wrote: >>> Add missing dependency to TAPRIO to avoid build failures such as: >>> >>> |ERROR: modpost: "taprio_offload_get" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! >>> |ERROR: modpost: "taprio_offload_free" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! >>> >>> Fixes: 24dfc6eb39b2 ("net: dsa: hellcreek: Add TAPRIO offloading support") >>> Reported-by: Randy Dunlap <rdunlap@infradead.org> >>> Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> >>> --- >>> drivers/net/dsa/hirschmann/Kconfig | 1 + >>> 1 file changed, 1 insertion(+) >>> >>> Note: It's not against net, because the fixed commit is not in net tree, yet. >>> >>> diff --git a/drivers/net/dsa/hirschmann/Kconfig b/drivers/net/dsa/hirschmann/Kconfig >>> index e01191107a4b..9ea2c643f8f8 100644 >>> --- a/drivers/net/dsa/hirschmann/Kconfig >>> +++ b/drivers/net/dsa/hirschmann/Kconfig >>> @@ -5,6 +5,7 @@ config NET_DSA_HIRSCHMANN_HELLCREEK >>> depends on NET_DSA >>> depends on PTP_1588_CLOCK >>> depends on LEDS_CLASS >>> + depends on NET_SCH_TAPRIO >>> select NET_DSA_TAG_HELLCREEK >>> help >>> This driver adds support for Hirschmann Hellcreek TSN switches. >>> >> >> Thanks. This fixes the build errors. >> Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested >> >> >> However, I do see this in the build output when >> NET_DSA_HIRSCHMANN_HELLCREEK is disabled: >> >> AR drivers/net/dsa/hirschmann/built-in.a >> >> That is an empty archive file (8 bytes), which is caused by >> drivers/net/dsa/Makefile: >> >> obj-y += hirschmann/ >> >> >> Is there some reason that it's not done like this? >> This passes my y/m/n testing. > > Actually I cannot reproduce this. I've disabled > NET_DSA_HIRSCHMANN_HELLCREEK and nothing shows up in the build log. Hmph, I don't see it on a clean build either. Sorry for the noise.
On Thu, 28 Jan 2021 12:00:38 -0800 Randy Dunlap wrote:
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
nit: careful with the tags in replies to patches, patchwork will add
them onto the patch you're replying to
Hello: This patch was applied to netdev/net-next.git (refs/heads/master): On Thu, 28 Jan 2021 17:33:38 +0100 you wrote: > Add missing dependency to TAPRIO to avoid build failures such as: > > |ERROR: modpost: "taprio_offload_get" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! > |ERROR: modpost: "taprio_offload_free" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! > > Fixes: 24dfc6eb39b2 ("net: dsa: hellcreek: Add TAPRIO offloading support") > Reported-by: Randy Dunlap <rdunlap@infradead.org> > Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> > > [...] Here is the summary with links: - [net-next] net: dsa: hellcreek: Add missing TAPRIO dependency https://git.kernel.org/netdev/net-next/c/6c13d75beee5 You are awesome, thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html
diff --git a/drivers/net/dsa/hirschmann/Kconfig b/drivers/net/dsa/hirschmann/Kconfig index e01191107a4b..9ea2c643f8f8 100644 --- a/drivers/net/dsa/hirschmann/Kconfig +++ b/drivers/net/dsa/hirschmann/Kconfig @@ -5,6 +5,7 @@ config NET_DSA_HIRSCHMANN_HELLCREEK depends on NET_DSA depends on PTP_1588_CLOCK depends on LEDS_CLASS + depends on NET_SCH_TAPRIO select NET_DSA_TAG_HELLCREEK help This driver adds support for Hirschmann Hellcreek TSN switches.
Add missing dependency to TAPRIO to avoid build failures such as: |ERROR: modpost: "taprio_offload_get" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! |ERROR: modpost: "taprio_offload_free" [drivers/net/dsa/hirschmann/hellcreek_sw.ko] undefined! Fixes: 24dfc6eb39b2 ("net: dsa: hellcreek: Add TAPRIO offloading support") Reported-by: Randy Dunlap <rdunlap@infradead.org> Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> --- drivers/net/dsa/hirschmann/Kconfig | 1 + 1 file changed, 1 insertion(+) Note: It's not against net, because the fixed commit is not in net tree, yet.