diff mbox series

[v1,1/2] package/batman-adv: fix compile with BR2_PACKAGE_BATMAN_ADV_BATMAN_V disabled

Message ID 20210314223207.13460-1-ps.report@gmx.net
State Accepted
Headers show
Series [v1,1/2] package/batman-adv: fix compile with BR2_PACKAGE_BATMAN_ADV_BATMAN_V disabled | expand

Commit Message

Peter Seiderer March 14, 2021, 10:32 p.m. UTC
The given 'CONFIG_BATMAN_ADV_BATMAN_V=' is enough to trigger the wrong
code compile path in net/batman-adv/bat_v.h missing the static inline
dummy implementations.

Fixes:

  ERROR: modpost: "batadv_v_mesh_free" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
  ERROR: modpost: "batadv_v_mesh_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
  ERROR: modpost: "batadv_v_hardif_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
  ERROR: modpost: "batadv_v_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!

Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
 package/batman-adv/batman-adv.mk | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Yann E. MORIN March 15, 2021, 7:53 p.m. UTC | #1
Peter, All,

On 2021-03-14 23:32 +0100, Peter Seiderer spake thusly:
> The given 'CONFIG_BATMAN_ADV_BATMAN_V=' is enough to trigger the wrong
> code compile path in net/batman-adv/bat_v.h missing the static inline
> dummy implementations.
> 
> Fixes:
> 
>   ERROR: modpost: "batadv_v_mesh_free" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
>   ERROR: modpost: "batadv_v_mesh_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
>   ERROR: modpost: "batadv_v_hardif_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
>   ERROR: modpost: "batadv_v_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
> 
> Signed-off-by: Peter Seiderer <ps.report@gmx.net>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  package/batman-adv/batman-adv.mk | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/package/batman-adv/batman-adv.mk b/package/batman-adv/batman-adv.mk
> index bd648b5a6c..0b9fcaefc0 100644
> --- a/package/batman-adv/batman-adv.mk
> +++ b/package/batman-adv/batman-adv.mk
> @@ -20,12 +20,12 @@ BATMAN_ADV_MODULE_MAKE_OPTS = \
>  	INSTALL_MOD_DIR=updates/net/batman-adv \
>  	NOSTDINC_FLAGS="$(BATMAN_ADV_CFLAGS)" \
>  	CONFIG_BATMAN_ADV=m \
> -	CONFIG_BATMAN_ADV_BATMAN_V=$(BR2_PACKAGE_BATMAN_ADV_BATMAN_V) \
> +	$(if $(BR2_PACKAGE_BATMAN_ADV_BATMAN_V), CONFIG_BATMAN_ADV_BATMAN_V=y) \
>  	CONFIG_BATMAN_ADV_BLA=y \
>  	CONFIG_BATMAN_ADV_DAT=y \
> -	CONFIG_BATMAN_ADV_DEBUG=$(BR2_PACKAGE_BATMAN_ADV_DEBUG) \
> +	$(if $(BR2_PACKAGE_BATMAN_ADV_DEBUG), CONFIG_BATMAN_ADV_DEBUG=y) \
>  	CONFIG_BATMAN_ADV_MCAST=y \
> -	CONFIG_BATMAN_ADV_NC=$(BR2_PACKAGE_BATMAN_ADV_NC)
> +	$(if $(BR2_PACKAGE_BATMAN_ADV_NC), CONFIG_BATMAN_ADV_NC=y)
>  BATMAN_ADV_MODULE_SUBDIRS = net/batman-adv
>  
>  define BATMAN_ADV_CONFIGURE_CMDS
> -- 
> 2.30.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Christian Stewart March 15, 2021, 9 p.m. UTC | #2
Peter, all,

On Sun, Mar 14, 2021 at 3:32 PM Peter Seiderer <ps.report@gmx.net> wrote:
>
> The given 'CONFIG_BATMAN_ADV_BATMAN_V=' is enough to trigger the wrong
> code compile path in net/batman-adv/bat_v.h missing the static inline
> dummy implementations.
>
> Fixes:

Unfortunately after applying this commit it still breaks.

I confirmed that the CONFIG_BATMAN_ADV_BATMAN_V is not being set now.


CONFIG_BATMAN_ADV=m
CONFIG_BATMAN_ADV_BLA=y
CONFIG_BATMAN_ADV_DAT=y
CONFIG_BATMAN_ADV_MCAST=y
M=build/batman-adv-2021.0/net/batman-adv
make modules

[snip]

  MODPOST /build/batman-adv-2021.0/net/batman-adv/Module.symvers
ERROR: modpost: "batadv_v_mesh_free" undefined!
ERROR: modpost: "batadv_v_mesh_init" undefined!
ERROR: modpost: "batadv_v_hardif_init" undefined!
ERROR: modpost: "batadv_v_init" undefined!

Thanks,
Christian Stewart
Peter Seiderer March 15, 2021, 9:50 p.m. UTC | #3
Hello Christian,

On Mon, 15 Mar 2021 14:00:38 -0700, Christian Stewart <christian@paral.in> wrote:

> Peter, all,
>
> On Sun, Mar 14, 2021 at 3:32 PM Peter Seiderer <ps.report@gmx.net> wrote:
> >
> > The given 'CONFIG_BATMAN_ADV_BATMAN_V=' is enough to trigger the wrong
> > code compile path in net/batman-adv/bat_v.h missing the static inline
> > dummy implementations.
> >
> > Fixes:
>
> Unfortunately after applying this commit it still breaks.
>
> I confirmed that the CONFIG_BATMAN_ADV_BATMAN_V is not being set now.
>
>
> CONFIG_BATMAN_ADV=m
> CONFIG_BATMAN_ADV_BLA=y
> CONFIG_BATMAN_ADV_DAT=y
> CONFIG_BATMAN_ADV_MCAST=y
> M=build/batman-adv-2021.0/net/batman-adv
> make modules
>
> [snip]
>
>   MODPOST /build/batman-adv-2021.0/net/batman-adv/Module.symvers
> ERROR: modpost: "batadv_v_mesh_free" undefined!
> ERROR: modpost: "batadv_v_mesh_init" undefined!
> ERROR: modpost: "batadv_v_hardif_init" undefined!
> ERROR: modpost: "batadv_v_init" undefined!

Mind to share your defconfig (which cross-compiler)?

Did you do a complete re-build of the batman-adv-2021.0
package (rm -rf build/batman-adv-2021.0 && make batman-adv)?

Regards,
Peter

>
> Thanks,
> Christian Stewart
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Christian Stewart March 16, 2021, 1:45 a.m. UTC | #4
Hi Peter,

On Mon, Mar 15, 2021 at 2:50 PM Peter Seiderer <ps.report@gmx.net> wrote:
> On Mon, 15 Mar 2021 14:00:38 -0700, Christian Stewart <christian@paral.in> wrote:
> > On Sun, Mar 14, 2021 at 3:32 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > >
> > > The given 'CONFIG_BATMAN_ADV_BATMAN_V=' is enough to trigger the wrong
> > > code compile path in net/batman-adv/bat_v.h missing the static inline
> > > dummy implementations.
> > >
> > > Fixes:
> >
> > Unfortunately after applying this commit it still breaks.
> >
> > I confirmed that the CONFIG_BATMAN_ADV_BATMAN_V is not being set now.
> >
> >
> > CONFIG_BATMAN_ADV=m
> > CONFIG_BATMAN_ADV_BLA=y
> > CONFIG_BATMAN_ADV_DAT=y
> > CONFIG_BATMAN_ADV_MCAST=y
> > M=build/batman-adv-2021.0/net/batman-adv
> > make modules
> >
> > [snip]
> >
> >   MODPOST /build/batman-adv-2021.0/net/batman-adv/Module.symvers
> > ERROR: modpost: "batadv_v_mesh_free" undefined!
> > ERROR: modpost: "batadv_v_mesh_init" undefined!
> > ERROR: modpost: "batadv_v_hardif_init" undefined!
> > ERROR: modpost: "batadv_v_init" undefined!
>
> Mind to share your defconfig (which cross-compiler)?
>
> Did you do a complete re-build of the batman-adv-2021.0
> package (rm -rf build/batman-adv-2021.0 && make batman-adv)?

Buildroot toolchain,

BR2_x86_64=y
BR2_TOOLCHAIN=y
BR2_TOOLCHAIN_USES_GLIBC=y
BR2_TOOLCHAIN_BUILDROOT=y
BR2_BINUTILS_VERSION_2_35_X=y
BR2_GCC_VERSION_10_X=y
BR2_PACKAGE_BATMAN_ADV=y

Yes, deleted the build/batman-adv* dir and fully re-built, and
confirmed that it was not setting the BATMAN_ADV_V flag anymore.

Thanks,
Christian
Peter Seiderer March 16, 2021, 6:19 p.m. UTC | #5
Hello Christian,

On Mon, 15 Mar 2021 18:45:20 -0700, Christian Stewart <christian@paral.in> wrote:

> Hi Peter,
>
> On Mon, Mar 15, 2021 at 2:50 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > On Mon, 15 Mar 2021 14:00:38 -0700, Christian Stewart <christian@paral.in> wrote:
> > > On Sun, Mar 14, 2021 at 3:32 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > > >
> > > > The given 'CONFIG_BATMAN_ADV_BATMAN_V=' is enough to trigger the wrong
> > > > code compile path in net/batman-adv/bat_v.h missing the static inline
> > > > dummy implementations.
> > > >
> > > > Fixes:
> > >
> > > Unfortunately after applying this commit it still breaks.
> > >
> > > I confirmed that the CONFIG_BATMAN_ADV_BATMAN_V is not being set now.
> > >
> > >
> > > CONFIG_BATMAN_ADV=m
> > > CONFIG_BATMAN_ADV_BLA=y
> > > CONFIG_BATMAN_ADV_DAT=y
> > > CONFIG_BATMAN_ADV_MCAST=y
> > > M=build/batman-adv-2021.0/net/batman-adv
> > > make modules
> > >
> > > [snip]
> > >
> > >   MODPOST /build/batman-adv-2021.0/net/batman-adv/Module.symvers
> > > ERROR: modpost: "batadv_v_mesh_free" undefined!
> > > ERROR: modpost: "batadv_v_mesh_init" undefined!
> > > ERROR: modpost: "batadv_v_hardif_init" undefined!
> > > ERROR: modpost: "batadv_v_init" undefined!
> >
> > Mind to share your defconfig (which cross-compiler)?
> >
> > Did you do a complete re-build of the batman-adv-2021.0
> > package (rm -rf build/batman-adv-2021.0 && make batman-adv)?
>
> Buildroot toolchain,
>
> BR2_x86_64=y
> BR2_TOOLCHAIN=y
> BR2_TOOLCHAIN_USES_GLIBC=y
> BR2_TOOLCHAIN_BUILDROOT=y
> BR2_BINUTILS_VERSION_2_35_X=y
> BR2_GCC_VERSION_10_X=y
> BR2_PACKAGE_BATMAN_ADV=y
>
> Yes, deleted the build/batman-adv* dir and fully re-built, and
> confirmed that it was not setting the BATMAN_ADV_V flag anymore.

O.k, using the following defconfig I get the same failure:

BR2_x86_64=y
BR2_GCC_VERSION_10_X=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_PACKAGE_BATMAN_ADV=y

My RPi4 test case had an RPi4 linux kernel already enabling the build-in
batman-adv module inclusive batman-v...

Hopefully fixed this time for real with

https://patchwork.ozlabs.org/project/buildroot/patch/20210316181429.30804-1-ps.report@gmx.net/
https://patchwork.ozlabs.org/project/buildroot/patch/20210316181429.30804-2-ps.report@gmx.net/

and a note about the linux mainline kernel module added with

https://patchwork.ozlabs.org/project/buildroot/patch/20210316181429.30804-3-ps.report@gmx.net/

Regards,
Peter

>
> Thanks,
> Christian
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Peter Korsgaard March 23, 2021, 5:26 p.m. UTC | #6
>>>>> "Peter" == Peter Seiderer <ps.report@gmx.net> writes:

 > The given 'CONFIG_BATMAN_ADV_BATMAN_V=' is enough to trigger the wrong
 > code compile path in net/batman-adv/bat_v.h missing the static inline
 > dummy implementations.

 > Fixes:

 >   ERROR: modpost: "batadv_v_mesh_free" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
 >   ERROR: modpost: "batadv_v_mesh_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
 >   ERROR: modpost: "batadv_v_hardif_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!
 >   ERROR: modpost: "batadv_v_init" [.../build/batman-adv-2021.0/net/batman-adv/batman-adv.ko] undefined!

 > Signed-off-by: Peter Seiderer <ps.report@gmx.net>

Committed to 2020.02.x, 2020.11.x and 2021.02.x, thanks.
diff mbox series

Patch

diff --git a/package/batman-adv/batman-adv.mk b/package/batman-adv/batman-adv.mk
index bd648b5a6c..0b9fcaefc0 100644
--- a/package/batman-adv/batman-adv.mk
+++ b/package/batman-adv/batman-adv.mk
@@ -20,12 +20,12 @@  BATMAN_ADV_MODULE_MAKE_OPTS = \
 	INSTALL_MOD_DIR=updates/net/batman-adv \
 	NOSTDINC_FLAGS="$(BATMAN_ADV_CFLAGS)" \
 	CONFIG_BATMAN_ADV=m \
-	CONFIG_BATMAN_ADV_BATMAN_V=$(BR2_PACKAGE_BATMAN_ADV_BATMAN_V) \
+	$(if $(BR2_PACKAGE_BATMAN_ADV_BATMAN_V), CONFIG_BATMAN_ADV_BATMAN_V=y) \
 	CONFIG_BATMAN_ADV_BLA=y \
 	CONFIG_BATMAN_ADV_DAT=y \
-	CONFIG_BATMAN_ADV_DEBUG=$(BR2_PACKAGE_BATMAN_ADV_DEBUG) \
+	$(if $(BR2_PACKAGE_BATMAN_ADV_DEBUG), CONFIG_BATMAN_ADV_DEBUG=y) \
 	CONFIG_BATMAN_ADV_MCAST=y \
-	CONFIG_BATMAN_ADV_NC=$(BR2_PACKAGE_BATMAN_ADV_NC)
+	$(if $(BR2_PACKAGE_BATMAN_ADV_NC), CONFIG_BATMAN_ADV_NC=y)
 BATMAN_ADV_MODULE_SUBDIRS = net/batman-adv
 
 define BATMAN_ADV_CONFIGURE_CMDS