I updated my gcc which did the following: [ebuild U ] sys-devel/bison-1.875 [1.35] [ebuild U ] sys-devel/binutils-2.14.90.0.6-r6 [2.14.90.0.5-r1] [ebuild U ] sys-devel/gcc-3.3.1-r5 [3.2.2-r2] I also emerged ccache, which I am using for any compiles: [ebuild U ] dev-util/ccache-2.3 [2.2] and afterwards I emerged libc: [ebuild U ] sys-libs/glibc-2.3.2-r6 [2.2.5-r6] all with no errors. I also changed to "i586-pc-linux-gnu-3.3.1" using gcc-config But compiling gives an error I can't solve, it is the same with or without ccache running. Small snippet: ---cut-on--- make[2]: Entering directory `/usr/src/linux-2.4.20-xfs-r3/kernel' gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -p ipe -mpreferred-stack-boundary=2 -march=k6 -nostdinc -iwithprefix include -DKBUILD_BASENAME=sched -fno-omit-frame-pointer -c -o sched.o sched.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -p ipe -mpreferred-stack-boundary=2 -march=k6 -nostdinc -iwithprefix include -DKBUILD_BASENAME=dma -c -o dma.o dma.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -p ipe -mpreferred-stack-boundary=2 -march=k6 -nostdinc -iwithprefix include -DKBUILD_BASENAME=fork -c -o fork.o fork.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -p ipe -mpreferred-stack-boundary=2 -march=k6 -nostdinc -iwithprefix include -DKBUILD_BASENAME=exec_domain -DEXPORT_SYMTAB -c exec_domain.c exec_domain.c:234: error: syntax error before "config_must_be_included_before_module" exec_domain.c:234: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:234: warning: data definition has no type or storage class exec_domain.c:235: error: syntax error before "config_must_be_included_before_module" exec_domain.c:235: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:235: warning: data definition has no type or storage class exec_domain.c:236: error: syntax error before "config_must_be_included_before_module" exec_domain.c:236: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:236: warning: data definition has no type or storage class exec_domain.c:287: error: syntax error before "config_must_be_included_before_module" exec_domain.c:287: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:287: warning: data definition has no type or storage class exec_domain.c:288: error: syntax error before "config_must_be_included_before_module" exec_domain.c:288: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:288: warning: data definition has no type or storage class exec_domain.c:289: error: syntax error before "config_must_be_included_before_module" exec_domain.c:289: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:289: warning: data definition has no type or storage class exec_domain.c:290: error: syntax error before "config_must_be_included_before_module" exec_domain.c:290: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:290: warning: data definition has no type or storage class exec_domain.c:291: error: syntax error before "config_must_be_included_before_module" exec_domain.c:291: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:291: warning: data definition has no type or storage class exec_domain.c:292: error: syntax error before "config_must_be_included_before_module" exec_domain.c:292: warning: type defaults to `int' in declaration of `config_must_be_included_before_module' exec_domain.c:292: warning: data definition has no type or storage class make[2]: *** [exec_domain.o] Error 1 make[2]: Leaving directory `/usr/src/linux-2.4.20-xfs-r3/kernel' make[1]: *** [first_rule] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.20-xfs-r3/kernel' make: *** [_dir_kernel] Error 2 ---cut-off--- which is of a .config with compiled fine with the old gcc (and other stuff) before. Reproducible: Always Steps to Reproduce: 1. 2. 3. Actual Results: The new gcc can't compile what the old could. Expected Results: I have expected to work gcc with new gcc and updated system settings using gcc-cache compile fine. cat: /etc/gentoo-release: No such file or directory Portage 2.0.49-r13-2 (default-x86-1.4, gcc-3.3.1, glibc-2.3.2-r6, 2.4.20-xfs-r3) ================================================================= System uname: 2.4.20-xfs-r3 i586 AuthenticAMD ccache version 2.3 [enabled] ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=k6-3 -O3 -pipe -fomit-frame-pointer" CHOST="i586-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/ generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=k6-3 -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio. org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 oss apm foomaticdb gif libg++ mad mikmod ncurses pdflib png spell truetype xmms xv berkdb slang readline arts tetex nas svga tcltk java guile sdl gpm tcpd libwww perl python esd imlib oggvorbis gtk qt motif opengl cdr -cups X crypto avi mpeg quicktime ggi encode pam ssl crypt mysql postgres innodb gdbm acl samba zlib jpeg xml xml2 dvd aalib gd snmp nls kde -sse -gnome"
Have you tried any other kernels? I'm not sure on the maintainership status of xfs-sources. If you use XFS as a filesystem, I'd look at giving the 2.6.0 kernel a try, as XFS has been fully integrated in that kernel. Optionally, you can also try out the new gcc-3.3.2 ebuild to see if maybe it fixes things.
Hi, meanwhile I have succesfully searched forums.gentoo.org and found a note, that another gentoo kernel release has xfs support and compiles fine with gcc-3.3.1 So I tried sys-kernel/ck-sources with the .config file of xfs-sources and was lucky. This sources compile fine. That seems as if the patched kernel sources of 2.4.20 might be the cause. As long as the error is not exactly detemined this case is open, but the summary can be changed to "xfs-sources-2.4.20 do not compile with gcc-3.3.1" IMHO. ... I don't know if I am allowed to do that, maybe a maintainer of the xfs-sources should do that?
I was told someone else on the dev team planned on picking up the xfs-sources maintainership role shortly. When that is, I am unsure. When that happens, they'll likely get this bug re-assigned to them. I'd bet the xfs patch itself doesn't compile properly. Of course, if another kernel source package already has XFS, then I wonder at the need for xfs-sources still. Also see if gcc-3.3.2 can compile xfs-sources. Maybe they changed something.
Hi, I synced yesterday and today, but `emerge -p sys-devel/gcc` always gives as result gcc-3.3.1-r5 As you can see I do have ~x86 enabled. Maybe the mirrors I get, haven't themselves synced?
gcc-3.3.2 is keyword masked, that is. KEYWORDS="-*" in the ebuild. You'll need to manually edit the file or use the "ekeyword" command (part of gentoolkit) to add a x86 or ~x86 keyword to the ebuild. Then you can merge it. Be warned that when you make the change, it will get wiped out next 'emerge rsync' unless the ebuild is part of your Portage overlay folder.
Hi, xfs-sources linux-2.4.20-xfs-r3 don't compile with gcc-3.3.2 either. I manually edited /usr/portage/sys-devel/gcc/gcc-3.3.2.ebuild to demask it with KEYWORDS="~x86" Afterwards I emerged succesfully gcc-3.3.2 and I have checked, that my console uses it with # gcc-config --list-profiles i586-pc-linux-gnu-3.2.2 i586-pc-linux-gnu-3.3.1 i586-pc-linux-gnu-3.3.2 # gcc-config --get-current-profile i586-pc-linux-gnu-3.3.2 So I went to /usr/src, symlinked linux-2.4.20-xfs-r3 to linux, chdired to linux and made a `make dep clean bzImage` This stops compiling at the same point as I have reported before.
Okay, so it seems xfs-sources is just broken with gcc-3.3.x. I don't know if there is anything that can be done. xfs-sources I believe is unmaintained currently, so there isn't much I can do for it right now. Likely it needs a new kernel release with the latest SGI XFS patch. I recommend you stay with ck-sources for now, or you consider giving 2.6 a shot. 2.6 has XFS included in the tree, and they just released test9, so you're looking at the real 2.6 coming out soon. I'm going to hand this over to the x86-kernel team to handle once they get someone to pickup xfs-sources and get it up to spec, or decide remove it all together.
It's kind of "semi-maintained". I added a GCC 3.3 patch a while ago to Portage and I just upgraded to gcc 3.3.1 to check that it works. I used the default .config, and everything compiled fine *including* the exec_domain.c source. "exec_domain.c" was never patched for GCC 3.3 [and never needed to be], so it looks like you are be having a GCC problem. Can you try the generic i586 [or no] -march flags? You're currently using -k6 and this may be a bug of some sort in GCC...
Hi, news I have to tell: I have compiled, installed and am using linux-2.6.0-test9 with no errors using gcc-3.3.2 with ccache-2.3 I will also build a kernel of linux-2.4.20-xfs-r3 with CONFIG_M586 FYI with pure gcc-3.3.2 and no ccache.
I'd also like it if you could attach kernel/exec_domain.c It almost looks like there could be some corruption of that file.
Created attachment 19820 [details] kernel/exec_domain.c from linux-2.40-xfs-r3 sources as requested This is the kerenl/exec_domain.c file from linux-2.40-xfs-r3 sources as requested. Addidtionally, I have this to tell: Hi, with CONFIG=M586 I have a longer lasting compile but another error: ---cut-on--- make[3]: Entering directory `/usr/src/linux-2.4.20-xfs-r3/drivers/ide' gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_taskfile -DEXPORT_SYMTAB -c ide-taskfile.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide -DEXPORT_SYMTAB -c ide.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_adma -c -o ide-adma.o ide-adma.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_dma -c -o ide-dma.o ide-dma.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_pci -c -o ide-pci.o ide-pci.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=piix -c -o piix.o piix.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_proc -c -o ide-proc.o ide-proc.c ld -m elf_i386 -r -o ide-mod.o ide-taskfile.o ide.o ide-adma.o ide-dma.o ide-pci.o piix.o ide-proc.o gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_probe -DEXPORT_SYMTAB -c ide-probe.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_geometry -c -o ide-geometry.o ide-geometry.c ld -m elf_i386 -r -o ide-probe-mod.o ide-probe.o ide-geometry.o gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_disk -c -o ide-disk.o ide-disk.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-xfs-r3/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i586 -nostdinc -iwithprefix include -DKBUILD_BASENAME=ide_cd -c -o ide-cd.o ide-cd.c In file included from ide-cd.c:318: ide-cd.h:441: error: long, short, signed or unsigned used invalidly for `slot_tablelen' make[3]: *** [ide-cd.o] Error 1 make[3]: Leaving directory `/usr/src/linux-2.4.20-xfs-r3/drivers/ide' make[2]: *** [first_rule] Error 2 make[2]: Leaving directory `/usr/src/linux-2.4.20-xfs-r3/drivers/ide' make[1]: *** [_subdir_ide] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.20-xfs-r3/drivers' make: *** [_dir_drivers] Error 2 ---cut-off--- Feel free to ask for more information. cheers, Sascha
1) Looks like a bug in the optimizations. Brian, do you think we should pull them out for K6's? 2) The bug you get is because you don't have the GCC 3.3 patch. Remerge xfs-sources and it should all be OK.
FYI, "exec_domain.c" isn't corrupt. MD5 Hash -> attachment -> 06ee0e65edaad1adf3679437d9123193 MD5 Hash -> my copy -> 06ee0e65edaad1adf3679437d9123193
I should have xfs-sources 2.4.22 finished and uploaded in next few hours
Reassigning to gcc-porting as this doesn't seem to be kernel related but a GCC problem...
Eh, I originally assigned this to x86-kernel cause it seemed more related to needing a newer kernel ebuild, but ah well... Sascha: There is an xfs-sources-2.4.22 in portage now. Could you please give that a run to see if it atleast compiles?
Hi, I tried yesterday and today to emerge xfs-sources-2.4.22 but it fails on downloading patches-2.4-22-xfs.tar.bz2 The file is said to be 1245184 bytes big by the first server it is downloaded from, e.g. http://gentoo.oregonstate.edu and the log sais it is fully downloaded "[1245184/1245184]" but then emerge tries resuming download which fails. This breaks installing the new xfs-sources. I assume that the patches file is truncated because bzip2 -t suggests to repair it. Could you please verify that and repair it? I will give the xfs-2.4.22 a compile as soon as I can emerge them. What gcc version do you like to be used? I still have gcc-3.3.2
Hmm. It's still corrupted -> Not Good <tm> 48693a2b90dfd4e21b3e8ca4dd7ee4a1 patches-2.4.22-xfs-OSU.tar.bz2 6940c38612564f9e03736fde8f79c4d3 patches-2.4.22-xfs.tar.bz2 There's a copy of the patches tarball at http://dev.gentoo.org/~plasmaroo/patches-2.4-22-xfs.tar.bz2 [ klieber ] : should be fixed in about an hour, on OSU [ klieber ] : it will take up to 24 for it to fully propogate out from there
Hi, I have wgeted patches-2.4.22-xfs.tar.bz2 from the friendly given url and copied it to /usr/portage/distfiles/patches-2.4.22-xfs.tar.bz2. Afterwards I was able to emerge xfs-sources-2.4.22 I compiled it successfully with "make clean dep bzImage modules" using gcc-v3.3.2 Do you want me to give it another try with gcc-<what-ever-version>? greetings, Sascha
reopen if this is still a problem with newer versions