Message ID | 1426349237-7501-1-git-send-email-jeff.layton@primarydata.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Kalle Valo |
Headers | show |
On 03/14/2015 11:07 AM, Jeff Layton wrote: > I've been getting this error when building mainline kernels using > Fedora's config files: > > drivers/net/wireless/rtlwifi/rtl8188ee/hw.c: In function ‘_rtl88ee_init_mac’: > drivers/net/wireless/rtlwifi/rtl8188ee/hw.c:853:2: error: implicit declaration of function ‘rtl_hal_pwrseqcmdparsing’ [-Werror=implicit-function-declaration] > if (!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, > ^ > cc1: some warnings being treated as errors > scripts/Makefile.build:258: recipe for target 'drivers/net/wireless/rtlwifi/rtl8188ee/hw.o' failed > > I'm not sure if this is the correct fix, but it does seem to allow the > build to complete. I suspect that this was broken by commit 34ed780a6afc > (rtlwifi: Fix problems with building an allyesconfig). Most of the files > that removed the include of pwrseqcmd.h, added one for ../pwrseqcmd.h. > The rtl8188ee driver had it removed it but didn't add the include of the > file in the parent directory. > > Signed-off-by: Jeff Layton <jeff.layton@primarydata.com> > --- > drivers/net/wireless/rtlwifi/rtl8188ee/hw.c | 1 + > 1 file changed, 1 insertion(+) Acked-by: Larry Finger <Larry.Finger@lwfinger.net> This fix is certainly OK. What I do not understand is why neither I nor the build testing computers see the problem. Does this show for all architectures? I have only built this driver for x86_64. Thanks, Larry > > diff --git a/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c b/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c > index f2b9713c456e..e6fae1b5c211 100644 > --- a/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c > +++ b/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c > @@ -30,6 +30,7 @@ > #include "../cam.h" > #include "../ps.h" > #include "../pci.h" > +#include "../pwrseqcmd.h" > #include "reg.h" > #include "def.h" > #include "phy.h" > -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, 14 Mar 2015 11:29:00 -0500 Larry Finger <Larry.Finger@lwfinger.net> wrote: > On 03/14/2015 11:07 AM, Jeff Layton wrote: > > I've been getting this error when building mainline kernels using > > Fedora's config files: > > > > drivers/net/wireless/rtlwifi/rtl8188ee/hw.c: In function ‘_rtl88ee_init_mac’: > > drivers/net/wireless/rtlwifi/rtl8188ee/hw.c:853:2: error: implicit declaration of function ‘rtl_hal_pwrseqcmdparsing’ [-Werror=implicit-function-declaration] > > if (!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, > > ^ > > cc1: some warnings being treated as errors > > scripts/Makefile.build:258: recipe for target 'drivers/net/wireless/rtlwifi/rtl8188ee/hw.o' failed > > > > I'm not sure if this is the correct fix, but it does seem to allow the > > build to complete. I suspect that this was broken by commit 34ed780a6afc > > (rtlwifi: Fix problems with building an allyesconfig). Most of the files > > that removed the include of pwrseqcmd.h, added one for ../pwrseqcmd.h. > > The rtl8188ee driver had it removed it but didn't add the include of the > > file in the parent directory. > > > > Signed-off-by: Jeff Layton <jeff.layton@primarydata.com> > > --- > > drivers/net/wireless/rtlwifi/rtl8188ee/hw.c | 1 + > > 1 file changed, 1 insertion(+) > > Acked-by: Larry Finger <Larry.Finger@lwfinger.net> > > This fix is certainly OK. What I do not understand is why neither I nor the > build testing computers see the problem. Does this show for all architectures? I > have only built this driver for x86_64. > > Thanks, > > Larry > > > > > diff --git a/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c b/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c > > index f2b9713c456e..e6fae1b5c211 100644 > > --- a/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c > > +++ b/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c > > @@ -30,6 +30,7 @@ > > #include "../cam.h" > > #include "../ps.h" > > #include "../pci.h" > > +#include "../pwrseqcmd.h" > > #include "reg.h" > > #include "def.h" > > #include "phy.h" > > > I'm a little baffled too as to why it's failing for me. At first I had assumed that it was temporary breakage, but I've been seeing this fail to build for a while now (at least a few months). I'm also building on x86_64 (Fedora 21, fwiw). Here's a verbose build output of that file without this patch. Maybe you can spot some difference? It's possible I have something configured wrong, but everything else seems to build just fine... [jlayton@tlielax linux]$ make M=drivers/net/wireless/rtlwifi/rtl8188ee -j4 V=1 test -e include/generated/autoconf.h -a -e include/config/auto.conf || ( \ echo >&2; \ echo >&2 " ERROR: Kernel configuration is invalid."; \ echo >&2 " include/generated/autoconf.h or include/config/auto.conf are missing.";\ echo >&2 " Run 'make oldconfig && make prepare' on kernel src to fix it."; \ echo >&2 ; \ /bin/false) mkdir -p drivers/net/wireless/rtlwifi/rtl8188ee/.tmp_versions ; rm -f drivers/net/wireless/rtlwifi/rtl8188ee/.tmp_versions/* make -f ./scripts/Makefile.build obj=drivers/net/wireless/rtlwifi/rtl8188ee gcc -Wp,-MD,drivers/net/wireless/rtlwifi/rtl8188ee/.hw.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-redhat-linux/4.9.2/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -m64 -mno-80387 -mno-fp-ret-in-387 -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fno-delete-null-pointer-checks -O2 --param=allow-store-data-r aces=0 -Wframe-larger-than=2048 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -g -pg -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO -Idrivers/net/wireless/rtlwifi -D__CHECK_ENDIAN__ -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(hw)" -D"KBUILD_MODNAME=KBUILD_STR(rtl8188ee)" -c -o drivers/net/wireless/rtlwifi/rtl8188ee/hw.o drivers/net/wireless/rtlwifi/rtl8188ee/hw.c (cat /dev/null; echo kernel/drivers/net/wireless/rtlwifi/rtl8188ee/rtl8188ee.ko;) > drivers/net/wireless/rtlwifi/rtl8188ee/modules.order drivers/net/wireless/rtlwifi/rtl8188ee/hw.c: In function ‘_rtl88ee_init_mac’: drivers/net/wireless/rtlwifi/rtl8188ee/hw.c:853:2: error: implicit declaration of function ‘rtl_hal_pwrseqcmdparsing’ [-Werror=implicit-function-declaration] if (!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, ^ cc1: some warnings being treated as errors scripts/Makefile.build:258: recipe for target 'drivers/net/wireless/rtlwifi/rtl8188ee/hw.o' failed make[1]: *** [drivers/net/wireless/rtlwifi/rtl8188ee/hw.o] Error 1 Makefile:1390: recipe for target '_module_drivers/net/wireless/rtlwifi/rtl8188ee' failed make: *** [_module_drivers/net/wireless/rtlwifi/rtl8188ee] Error 2
On 03/14/2015 11:35 AM, Jeff Layton wrote: > On Sat, 14 Mar 2015 11:29:00 -0500 > Larry Finger <Larry.Finger@lwfinger.net> wrote: > >> On 03/14/2015 11:07 AM, Jeff Layton wrote: >>> I've been getting this error when building mainline kernels using >>> Fedora's config files: >>> >>> drivers/net/wireless/rtlwifi/rtl8188ee/hw.c: In function ‘_rtl88ee_init_mac’: >>> drivers/net/wireless/rtlwifi/rtl8188ee/hw.c:853:2: error: implicit declaration of function ‘rtl_hal_pwrseqcmdparsing’ [-Werror=implicit-function-declaration] >>> if (!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, >>> ^ >>> cc1: some warnings being treated as errors >>> scripts/Makefile.build:258: recipe for target 'drivers/net/wireless/rtlwifi/rtl8188ee/hw.o' failed >>> >>> I'm not sure if this is the correct fix, but it does seem to allow the >>> build to complete. I suspect that this was broken by commit 34ed780a6afc >>> (rtlwifi: Fix problems with building an allyesconfig). Most of the files >>> that removed the include of pwrseqcmd.h, added one for ../pwrseqcmd.h. >>> The rtl8188ee driver had it removed it but didn't add the include of the >>> file in the parent directory. >>> >>> Signed-off-by: Jeff Layton <jeff.layton@primarydata.com> >>> --- >>> drivers/net/wireless/rtlwifi/rtl8188ee/hw.c | 1 + >>> 1 file changed, 1 insertion(+) >> >> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> >> >> This fix is certainly OK. What I do not understand is why neither I nor the >> build testing computers see the problem. Does this show for all architectures? I >> have only built this driver for x86_64. >> >> Thanks, >> >> Larry >> >>> >>> diff --git a/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c b/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c >>> index f2b9713c456e..e6fae1b5c211 100644 >>> --- a/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c >>> +++ b/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c >>> @@ -30,6 +30,7 @@ >>> #include "../cam.h" >>> #include "../ps.h" >>> #include "../pci.h" >>> +#include "../pwrseqcmd.h" >>> #include "reg.h" >>> #include "def.h" >>> #include "phy.h" >>> >> > > I'm a little baffled too as to why it's failing for me. At first I had > assumed that it was temporary breakage, but I've been seeing this fail > to build for a while now (at least a few months). I'm also building on > x86_64 (Fedora 21, fwiw). > > Here's a verbose build output of that file without this patch. Maybe > you can spot some difference? It's possible I have something configured > wrong, but everything else seems to build just fine... > > [jlayton@tlielax linux]$ make M=drivers/net/wireless/rtlwifi/rtl8188ee -j4 V=1 > test -e include/generated/autoconf.h -a -e include/config/auto.conf || ( \ > echo >&2; \ > echo >&2 " ERROR: Kernel configuration is invalid."; \ > echo >&2 " include/generated/autoconf.h or include/config/auto.conf are missing.";\ > echo >&2 " Run 'make oldconfig && make prepare' on kernel src to fix it."; \ > echo >&2 ; \ > /bin/false) > mkdir -p drivers/net/wireless/rtlwifi/rtl8188ee/.tmp_versions ; rm -f drivers/net/wireless/rtlwifi/rtl8188ee/.tmp_versions/* > make -f ./scripts/Makefile.build obj=drivers/net/wireless/rtlwifi/rtl8188ee > gcc -Wp,-MD,drivers/net/wireless/rtlwifi/rtl8188ee/.hw.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-redhat-linux/4.9.2/include -I./arch/x86/include -Iarch/x86/include/generated/uapi -Iarch/x86/include/generated -Iinclude -I./arch/x86/include/uapi -Iarch/x86/include/generated/uapi -I./include/uapi -Iinclude/generated/uapi -include ./include/linux/kconfig.h -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -m64 -mno-80387 -mno-fp-ret-in-387 -mtune=generic -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -DCONFIG_AS_SSSE3=1 -DCONFIG_AS_CRC32=1 -DCONFIG_AS_AVX=1 -DCONFIG_AS_AVX2=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fno-delete-null-pointer-checks -O2 --param=allow-store-dat a-races=0 -Wframe-larger-than=2048 -fstack-protector-strong -Wno-unused-but-set-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -g -pg -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -DCC_HAVE_ASM_GOTO -Idrivers/net/wireless/rtlwifi -D__CHECK_ENDIAN__ -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(hw)" -D"KBUILD_MODNAME=KBUILD_STR(rtl8188ee)" -c -o drivers/net/wireless/rtlwifi/rtl8188ee/hw.o drivers/net/wireless/rtlwifi/rtl8188ee/hw.c > (cat /dev/null; echo kernel/drivers/net/wireless/rtlwifi/rtl8188ee/rtl8188ee.ko;) > drivers/net/wireless/rtlwifi/rtl8188ee/modules.order > drivers/net/wireless/rtlwifi/rtl8188ee/hw.c: In function ‘_rtl88ee_init_mac’: > drivers/net/wireless/rtlwifi/rtl8188ee/hw.c:853:2: error: implicit declaration of function ‘rtl_hal_pwrseqcmdparsing’ [-Werror=implicit-function-declaration] > if (!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, > ^ > cc1: some warnings being treated as errors > scripts/Makefile.build:258: recipe for target 'drivers/net/wireless/rtlwifi/rtl8188ee/hw.o' failed > make[1]: *** [drivers/net/wireless/rtlwifi/rtl8188ee/hw.o] Error 1 > Makefile:1390: recipe for target '_module_drivers/net/wireless/rtlwifi/rtl8188ee' failed > make: *** [_module_drivers/net/wireless/rtlwifi/rtl8188ee] Error 2 I compiled that file using the same command. The only difference in the gcc line is your system uses "-fstack-protector-strong", and mine uses "-fno-stack-protector". I think that is caused by a different setting for CONFIG_CC_STACKPROTECTOR, and is not significant. I do not see anything that you have wrong. Certainly, the patch is needed. Larry -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c b/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c index f2b9713c456e..e6fae1b5c211 100644 --- a/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c +++ b/drivers/net/wireless/rtlwifi/rtl8188ee/hw.c @@ -30,6 +30,7 @@ #include "../cam.h" #include "../ps.h" #include "../pci.h" +#include "../pwrseqcmd.h" #include "reg.h" #include "def.h" #include "phy.h"
I've been getting this error when building mainline kernels using Fedora's config files: drivers/net/wireless/rtlwifi/rtl8188ee/hw.c: In function ‘_rtl88ee_init_mac’: drivers/net/wireless/rtlwifi/rtl8188ee/hw.c:853:2: error: implicit declaration of function ‘rtl_hal_pwrseqcmdparsing’ [-Werror=implicit-function-declaration] if (!rtl_hal_pwrseqcmdparsing(rtlpriv, PWR_CUT_ALL_MSK, ^ cc1: some warnings being treated as errors scripts/Makefile.build:258: recipe for target 'drivers/net/wireless/rtlwifi/rtl8188ee/hw.o' failed I'm not sure if this is the correct fix, but it does seem to allow the build to complete. I suspect that this was broken by commit 34ed780a6afc (rtlwifi: Fix problems with building an allyesconfig). Most of the files that removed the include of pwrseqcmd.h, added one for ../pwrseqcmd.h. The rtl8188ee driver had it removed it but didn't add the include of the file in the parent directory. Signed-off-by: Jeff Layton <jeff.layton@primarydata.com> --- drivers/net/wireless/rtlwifi/rtl8188ee/hw.c | 1 + 1 file changed, 1 insertion(+)