[Bug ipa/101941] [12 Regression] Linux kernel build failure due to retaining fnsplit fragment with __attribute__((__error__))

2021-09-20 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101941

--- Comment #9 from DAC324  ---
Bug not assigned - looks like it is considered not important to be able to
compile the Linux kernel.

Am I correct in the assumption that everybody who wants to build their own
kernels, should keep using GCC 11, until further notice?

[Bug ipa/102361] Errors compiling Linux kernel 5.14 with CONFIG_FORTIFY=y

2021-09-17 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102361

--- Comment #13 from DAC324  ---
Sorry for duplicate reporting. For me, the error message 

'__write_overflow' declared with attribute error: detected write beyond size of
object passed as 1st parameter

and its counterpart 

'__read_overflow2' declared with attribute error: detected read beyond size of
object passed as 2nd parameter

did not point me to using 

fnsplit fragment with __attribute__((__error__))

as a correct search term, in the first instance.
Please apologize for the inconvenience. 

Just FYI (although I assume you know this already):

With CONFIG_FORTIFY=n, you will be able to build the kernel but it will not run
satisfactorily, if able to boot at all.

[Bug c/102361] Errors compiling Linux kernel 5.14.4 with CONFIG_FORTIFY=y

2021-09-16 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102361

--- Comment #8 from DAC324  ---
This is the first error; if make is used with -j greater than 1, several of
those errors occur (see introduction).

[Bug c/102361] Errors compiling Linux kernel 5.14.4 with CONFIG_FORTIFY=y

2021-09-16 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102361

--- Comment #7 from DAC324  ---
Created attachment 51470
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51470=edit
File mm/memcontrol.c saved with -save-temps option (2/2)

[Bug c/102361] Errors compiling Linux kernel 5.14.4 with CONFIG_FORTIFY=y

2021-09-16 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102361

--- Comment #6 from DAC324  ---
Created attachment 51469
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51469=edit
File mm/memcontrol.c saved with -save-temps option

[Bug c/102361] Errors compiling Linux kernel 5.14.4 with CONFIG_FORTIFY=y

2021-09-16 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102361

--- Comment #5 from DAC324  ---
OK, here we go:

make -f ./scripts/Makefile.build obj=mm/kfence \
 \
need-builtin=1 \
need-modorder=1
  gcc -Wp,-MMD,mm/.memcontrol.o.d -nostdinc -isystem
/usr/lib/gcc/x86_64-pc-linux-gnu/12.0.0/include -I./arch/x86/include
-I./arch/x86/include/generated  -I./include -I./arch/x86/include/uapi
-I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi
-include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h
-include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./=
-Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing
-fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration
-Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu89
-mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=none -m64
-falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387
-mpreferred-stack-boundary=3 -mskip-rax-setup -march=sandybridge -mno-red-zone
-mcmodel=kernel -Wno-sign-compare -fno-asynchronous-unwind-tables
-mindirect-branch=thunk-extern -mindirect-branch-register -fno-jump-tables
-fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation
-Wno-format-overflow -Wno-address-of-packed-member -O2
-fno-allow-store-data-races -Wframe-larger-than=2048 -fstack-protector-strong
-Wimplicit-fallthrough=5 -Wno-unused-but-set-variable
-Wno-unused-const-variable -fno-stack-clash-protection -g -gdwarf-4 -pg
-mrecord-mcount -mfentry -DCC_USING_FENTRY -Wdeclaration-after-statement -Wvla
-Wno-pointer-sign -Wno-stringop-truncation -Wno-zero-length-bounds
-Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized
-fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time
-Werror=incompatible-pointer-types -Werror=designated-init
-Wno-packed-not-aligned -fplugin=./scripts/gcc-plugins/structleak_plugin.so
-fplugin-arg-structleak_plugin-byref-all -DSTRUCTLEAK_PLUGIN   
-DKBUILD_MODFILE='"mm/memcontrol"' -DKBUILD_BASENAME='"memcontrol"'
-DKBUILD_MODNAME='"memcontrol"' -D__KBUILD_MODNAME=kmod_memcontrol -c -o
mm/memcontrol.o mm/memcontrol.c
In file included from ./include/linux/string.h:262,
 from ./include/linux/bitmap.h:10,
 from ./include/linux/cpumask.h:12,
 from ./arch/x86/include/asm/paravirt.h:17,
 from ./arch/x86/include/asm/irqflags.h:63,
 from ./include/linux/irqflags.h:16,
 from ./include/linux/rcupdate.h:26,
 from ./include/linux/rculist.h:11,
 from ./include/linux/pid.h:5,
 from ./include/linux/sched.h:14,
 from ./include/linux/cgroup.h:12,
 from ./include/linux/memcontrol.h:13,
 from mm/memcontrol.c:29:
In function 'memset',
inlined from 'uncharge_gather_clear.part.0' at mm/memcontrol.c:6835:2:
./include/linux/fortify-string.h:172:17: error: call to '__write_overflow'
declared with attribute error: detected write beyond size of object passed as
1st parameter
  172 | __write_overflow();
  | ^~
make[1]: *** [scripts/Makefile.build:271: mm/memcontrol.o] Error 1
make: *** [Makefile:1851: mm] Error 2

[Bug c/102361] Errors compiling Linux kernel 5.14.4 with CONFIG_FORTIFY=y

2021-09-16 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102361

--- Comment #4 from DAC324  ---
Please let me kindly ask you for instructions on how to do that. 
As described in the introduction, I was trying to compile the Linux kernel from
the usual source tarball available on kernel.org.

What I did after extracting the sources was:

make menuconfig
make

If I understand correctly, I will have to interrupt the make process to extract
a pre-processed source file?

Please let me kindly ask for additional guidance.

Thank you very much and kind regards.

[Bug c/102361] Errors compiling Linux kernel 5.14.4 with CONFIG_FORTIFY=y

2021-09-16 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102361

--- Comment #2 from DAC324  ---
Please let me kindly ask you for instructions on how to do that. 
As described in the introduction, I was trying to compile the Linux kernel from
the usual source tarball available on kernel.org.

What I did after extracting the sources was:

make menuconfig
make

If I understand correctly, I will have to interrupt the make process to extract
a pre-processed source file?

Please let me kindly ask for additional guidance.

Thank you very much and kind regards.

[Bug c/102361] New: Errors compiling Linux kernel 5.14.4 with CONFIG_FORTIFY=y

2021-09-16 Thread dac324 at yahoo dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102361

Bug ID: 102361
   Summary: Errors compiling Linux kernel 5.14.4 with
CONFIG_FORTIFY=y
   Product: gcc
   Version: 12.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: dac324 at yahoo dot de
  Target Milestone: ---

GCC version: gcc (GCC) 12.0.0 20210910 (experimental)

With this version, it is not possible to compile the Linux kernel sources
(tested with both 5.14.1 and 5.14.4). 

Problem is that GCC 12 conflicts with CONFIG_FORTIFY=y.

Errors thrown with the 5.14.1 kernel sources:

In function 'memset',
inlined from 'init_rock_state.part.0' at fs/isofs/rock.c:74:2:
./include/linux/fortify-string.h:172:17: error: call to '__write_overflow'
declared with attribute error: detected write beyond size of object passed as
1st parameter
  172 | __write_overflow();
  | ^~
make[2]: *** [scripts/Makefile.build:271: fs/isofs/rock.o] Error 1
make[1]: *** [scripts/Makefile.build:514: fs/isofs] Error 2

In function 'memcpy',
inlined from 'tl_to_darg.part.0' at fs/ext4/fast_commit.c:1295:2:
./include/linux/fortify-string.h:187:25: error: call to '__read_overflow2'
declared with attribute error: detected read beyond size of object passed as
2nd parameter
  187 | __read_overflow2();
  | ^~
make[2]: *** [scripts/Makefile.build:271: fs/ext4/fast_commit.o] Error 1
make[1]: *** [scripts/Makefile.build:514: fs/ext4] Error 2


Error thrown with the 5.14.4 kernel sources:

In Function »memcpy«,
inserted from von »tl_to_darg.part.0« bei fs/ext4/fast_commit.c:1295:2:
./include/linux/fortify-string.h:187:25: Error: call to »__read_overflow2«
declared with attribute error: detected read beyond size of object passed as
2nd parameter
  187 | __read_overflow2();
  | ^~


With GCC 11, these errors do not occur. Hence, I must assume that they are
related to the compiler version.