while emerging perl I get thousands of syntax errors and warnings in a C file. After several minutes I killed the build. The errors are like: ... ks_03_t.c:11785: error: syntax error at '@' token ks_03_t.c:11785:903: warning: null character(s) ignored ks_03_t.c:11785: error: stray '\1' in program ks_03_t.c:11785:913: warning: null character(s) ignored ks_03_t.c:11785: error: stray '\27' in program ks_03_t.c:11785: error: stray '\262' in program ks_03_t.c:11785: error: stray '\31' in program ... (my console got so flooded that the 10.000 lines limit was reached so I don't have the first error line) Reproducible: Always Steps to Reproduce: 1. emerge perl 5.8.6-r1 2. watch output :)
you neglected to provide `emerge info` like the bug report page said to also, what does `ls -l /dev/null` show ?
ls -l /dev/null crw-rw-rw- 1 root root 1, 3 Jan 1 1970 /dev/null emerge info Portage 2.0.51-r8 (default-linux/sparc/sparc32/2004.3, gcc-3.3.3, glibc-2.3.2-r9, 2.4.28-sparc sparc) ================================================================= System uname: 2.4.28-sparc sparc sun4m Gentoo Base System version 1.4.9 Python: dev-lang/python-2.3.3 [2.3.3 (#1, Apr 18 2004, 01:25:20)] dev-lang/python: 2.3.3 sys-devel/autoconf: 2.58-r1 sys-devel/automake: 1.8.3 sys-devel/binutils: 2.14.90.0.7-r4 sys-devel/libtool: 1.5.2-r5 virtual/os-headers: 2.4.23 ACCEPT_KEYWORDS="sparc ~sparc" AUTOCLEAN="yes" CFLAGS="-mcpu=supersparc -O2 -pipe" CHOST="sparc-unknown-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-mcpu=supersparc -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks keepwork" GENTOO_MIRRORS="http://distfiles.gentoo.org 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.europe.gentoo.org/gentoo-portage" USE="sparc arts berkdb bitmap-fonts crypt cups f77 fbcon foomaticdb gdbm gpm imlib jpeg libwww mad mikmod mpeg ncurses nls opengl pam perl png python readline slang spell ssl tcpd truetype xv zlib"
I am on a single cpu system. I was asked to notify this, as it is thought to be a smp bug.
I am almost certain that this is Bug 46593 (same symptoms, same (generated) file as in Comment 1). Notice, however, that Riccardo seems to be running a uniprocessor system, and is seeing the same failure here as in 46593. Notice further, my observation at Comment 16 to 46593. Maybe sparc32-SMP is a red herring, and the problem is sparc32+disk-configuration? Or, worse, both? Riccardo, could you please add your /etc/fstab to this report?
Echoing fmccor, how is /var (and subs) mounted, if at all seperately? (ie, if /var or any of its subs are mounts off of /, are they local? what fs? etc.. fstab should cover this for the most part).
this is my fstab: # /etc/fstab: static file system information. # $Header: /home/cvsroot/gentoo-src/rc-scripts/etc/fstab,v 1.14 2003/10/13 20:03:38 azarah Exp $ # # noatime turns off atimes for increased performance (atimes normally aren't # needed; notail increases performance of ReiserFS (at the expense of storage # efficiency). It's safe to drop the noatime options if you want and to # switch between notail and tail freely. # <fs> <mountpoint> <type> <opts> <dump/pass> # NOTE: If your BOOT partition is ReiserFS, add the notail option to opts. /dev/sda1 / ext2 noauto,noatime 0 1 /dev/sdb2 /home ext2 noatime 0 2 /dev/sdb1 none swap sw 0 0 /dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0 /dev/fd0 /mnt/floppy auto noauto 0 0 # NOTE: The next line is critical for boot! none /proc proc defaults 0 0 # glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for # POSIX shared memory (shm_open, shm_unlink). # (tmpfs is a dynamically expandable/shrinkable ramdisk, and will # use almost no memory if not populated with files) # Adding the following line to /etc/fstab should take care of this: none /dev/shm tmpfs defaults 0 0 note however my mtab: /dev/sda1 / ext2 rw,noatime 0 0 none /proc proc rw 0 0 none /dev devfs rw 0 0 /dev/sdb2 /home ext2 rw,noatime 0 0 none /dev/shm tmpfs rw 0 0 /dev/sdc2 /var/tmp/portage ext2 rw 0 0 this shows that I mount an external hard disk for /var/tmp/portage to compile big packages since I am quite tight right now.
don't suppose you'd be willing to remount /var/tmp/portage with noatime enabled? seem to recall some packages (like perl) having issues with this, but of course i can't put my hands on a reference to it
I've run this on a single proc ss20, 2 disks, 1 internal, 1 external. With /var as the external disk, the emerge will hit a point that it starts giving syntax errors. If left alone, it will do so for, quite literally, hours. After stopping the emerge that was just spitting syntax errors at me, I changed PORTAGE_TMPDIR to /tmp (thus getting portage to not use the 2nd disk, which is where /var is mounted). Doing this allowed the perl emerge to complete, with no errors. Note: this is on a system that I'm building, so it's using the netboot image.. gentoo linux # uname -a Linux gentoo 2.4.23 #1 Sat Dec 13 20:26:23 EST 2003 sparc sun4m Texas Instruments, Inc. - SuperSparc-(II) GNU/Linux gentoo linux # mount /dev/sda2 on / type ext3 (rw) /dev/sda1 on /boot type ext3 (rw) /dev/sdb1 on /var type ext3 (rw) gentoo linux # df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 1974104 1208664 665160 65% / /dev/sda1 30169 1031 27580 4% /boot /dev/sdb1 8748132 50412 8253336 1% /var
I have the same Problem with perl-5.8.5-r3 on a sparcstation 5. moloch ebuild # cat 1523-perl-5.8.5-r3.log | grep ks_03_t | wc -l 384682
I can confirm this too on a SparcStation 4 using kernel 2.4.28-sparc-r1.
When you see this bug, your disk configuration would be interesting. I.e., something like your /etc/fstab file, or your mount table, and an indication of just where the portage TMPDIR is in relationship to everything else. For example, I see this problem (with perl) on an SS20 if / and /var/tmp are on different disks, but if I put them on one disk, the problem disappears. Thanks.
mounted filesystems: /dev/sda1 on / type ext3 (rw,noatime) none on /dev type devfs (rw) none on /proc type proc (rw) /dev/sda4 on /usr type ext3 (rw,noatime) /dev/sda5 on /home type ext3 (rw,noatime) /dev/sda6 on /var type ext3 (rw,noatime) none on /dev/shm type tmpfs (rw) PORTAGE_TMPDIR="/var/tmp" I think I'll just start an emerge with TMPDIR on /tmp.
Merging perl-5.8.5-r3 was successful when using PORTAGE_TMPDIR=/tmp -- I'm completly puzzled. Is this a kernel bug?
Yes, almost certainly. It seems to happen only with files generated as part of the build process; either by epatch-ing source or, as with this perl failure, source generated as part of the build. And is is a problem only on sparc32 and seemingly with gcc. (The only thing interesting about gcc that I am aware of is that it does a lot of reassigning and repositioning of its input as it chases down #include chains.)
I upgraded my system to more ram and am doing a new emerge of per to keep track of the current portage: So I confirm that dev-lang/perl-5.8.6-r2 still hsa troubles on my ss10.
I retried building perl again but mounted the disk with -o noatime as Michael suggested. This helped and perl installed flawlessy. Maybe this helps in chasing the bug? at least it is a possible workaround with troublesome packages. Would be nice to verify this with others.
I have compled perl-5.8.5-r3 whithout any problems by using PORTAGE_TMPDIR=/tmp. The default PORTAGE_TMPDIR (/var/tmp) and /tmp are an the same partition. That's crazy... mounted filesystems: /dev/sda1 / ext3 noatime 0 1 /dev/sda2 none swap sw 0 0 /dev/sda4 /usr ext3 noatime 0 2 /dev/sda5 /home ext3 noatime 0 2
Reproduced during emerge system with a sparcstation 20 I picked up recently. The noatime fix worked. This is the kernel from the 2004.1 sparc32 netboot image: root@beta / # uname -a Linux beta 2.4.23 #1 Fri Jan 2 17:01:46 EST 2004 sparc sun4m Texas Instruments, Inc. - SuperSparc-(II) GNU/Linux gentoo gentoo # mount /dev/sdb1 on /mnt/gentoo type ext3 (rw) /mnt/gentoo/proc on /mnt/gentoo/proc type proc (rw) /dev/sdb4 on /mnt/gentoo/var type ext3 (rw) /dev/sdb5 on /mnt/gentoo/usr type ext3 (rw) root@beta / # emerge --info Portage 2.0.51-r15 (default-linux/sparc/sparc32/2005.0, gcc-3.3.5-20050130, glibc-2.3.3.20040420-r2, 2.4.23 sparc) ================================================================= System uname: 2.4.23 sparc sun4m Gentoo Base System version 1.6.9 Python: [2.3.3 (#1, Apr 17 2004, 18:02:37)] dev-lang/python: [Not Present] sys-devel/autoconf: [Not Present] sys-devel/automake: [Not Present] sys-devel/binutils: 2.15.92.0.2-r3 sys-devel/libtool: [Not Present] virtual/os-headers: 2.4.23 ACCEPT_KEYWORDS="sparc ~sparc" AUTOCLEAN="yes" CFLAGS="-mcpu=supersparc -O3 -pipe" CHOST="sparc-unknown-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-mcpu=supersparc -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks" GENTOO_MIRRORS="http://mirror.hamakor.org.il/pub/mirrors/gentoo http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="sparc X arts berkdb bitmap-fonts crypt cups dlloader f77 fbcon foomaticdb fortran gdbm gnome gtk gtk2 imlib jpeg kde libwww mad mikmod motif mpeg ncurses opengl pam perl png python qt readline slang spell ssl tcpd truetype truetype-fonts type1-fonts userlocales xv zlib" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY
I upgraded my ss10, new disk, ram and cpu's... I copied over the old installation and configurations though. Now I have SMP though (and only a single disk, which should ease mount problem I had last time) and the problem reappeared sticky.
Mass re-assign.
Cc'ing the kernel team. kernel@: Any ideas ?
I have the same problem again on a SparcStation 5 using kernel 2.4.31-hf6* with perl-5.8.7-r2. The "PORTAGE_TMPDIR=/tmp"-trick (Comment #13) dosn't work :-( * http://linux.exosec.net/kernel/2.4-hf/
Just to keep things consistent, perl-5.8.7-r2 just installed without problems for me on an SS20: 2.4.28-sparc-r3 #1 SMP The problem seems to be in the kernel/disk subsystem. Unfortunately, I doubt if it will ever be tracked down and fixed.
One thng to note is that I've been experimenting with the 2006.0 profile which utilizes gcc-3.4.x and glibc-2.3.5 and when I re-emerged perl, I didn't have these problems on a box (but not the same userland) that had shown this problem previously.
i have to find the bug again, but in a similar/identical bug the culprit had to do with profile mislinkings
i have changed to profile 2006.0. perl-5.8.7-r3 compiles now on sparc.
Does this still occur with newer versions of perl? (Can anyone confirm that 5.8.8-r2 works?)
Seems to be solved by the latest toolchain (2006.0 stages). Reopen otherwise.