During emerge chromium (www-client/chromium-26.0.1410.12) I got: Traceback (most recent call last): File "/usr/bin/emerge", line 51, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1044, in emerge_main gc_locals=locals().clear) File "/usr/lib64/portage/pym/_emerge/actions.py", line 3921, in run_action myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 478, in action_build retval = mergetask.merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1011, in merge rval = self._merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1396, in _merge self._main_loop() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1367, in _main_loop self._event_loop.iteration() File "/usr/lib64/portage/pym/portage/util/_eventloop/EventLoop.py", line 260, in iteration if not x.callback(f, event, *x.args): File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 99, in _output_handler stdout_buf[os.write(stdout_fd, stdout_buf):] File "/usr/lib64/portage/pym/portage/__init__.py", line 246, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 5] Input/output error When running "ebuild /portage/www-client/chromium/chromium-26.0.1410.12.ebuild merge" afterwards completed successfully. Reproducible: Always Portage 2.1.11.52 (default/linux/amd64/13.0/no-multilib, gcc-4.8.0, unavailable, 3.8.0-dirty x86_64) ================================================================= System uname: Linux-3.8.0-dirty-x86_64-AMD_Phenom-tm-_II_X4_955_Processor-with-gentoo-2.0.3 KiB Mem: 8168892 total, 564328 free KiB Swap: 4194300 total, 4194300 free Timestamp of tree: Wed, 20 Feb 2013 10:15:01 +0000 ld GNU gold (GNU Binutils 2.23.51.20121207) 1.11 app-shells/bash: 4.2_p42 dev-lang/python: 2.7.3-r3, 3.2.3-r2 dev-util/cmake: 2.8.10.2-r1 dev-util/pkgconfig: 0.28 sys-apps/baselayout: 2.0.3 sys-apps/openrc: 9999 sys-apps/sandbox: 2.6 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.11.6, 1.13.1 sys-devel/binutils: 9999 sys-devel/gcc: 4.8.0 sys-devel/gcc-config: 1.8 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.7.0 sys-libs/glibc: 2.17 Repositories: gentoo proaudio ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-w -march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-w -march=native -O2 -pipe" DISTDIR="/var/tmp/portage" EMERGE_DEFAULT_OPTS="--quiet-build=n" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news nostrip parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/" INSTALL_MASK="/lib/systemd/system /usr/lib/tmpfiles.d" LANG="en_US.UTF-8" LDFLAGS="-Wl,-O1,--hash-style=gnu,--as-needed,--gc-sections,--icf=all,--icf-iterations=3" MAKEOPTS="-j4" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_EXTRA_OPTS="--exclude=metadata/cache/*" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/portage" PORTDIR_OVERLAY="/usr/local/layman/pro-audio" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="3dnow X alsa amd64 apng audiofile bash-completion berkdb bzip2 cairo cli cracklib crypt cscope cups cxx dbus djvu dri exif extras fbcon fontconfig fortran gdbm gif gpm gtk iconv jpeg kde kpathsea maildir mmx mudflap ncurses nls nptl ogg opengl pam pcre png qt3support qt4 readline session sse sse2 sse3 ssl svg tcpd threads tiff tk truetype unicode vim-syntax xft zlib zsh-completion" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" QEMU_USER_TARGETS="x86_64" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="radeon r600" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Did you redirect the emerge stdout to a file or something? Normally, writing to stdout does not throw an error like this.
(In reply to comment #1) > Did you redirect the emerge stdout to a file or something? Normally, writing > to stdout does not throw an error like this. No, I didn't redirect anything. Just running emerge under tmux in konsole. I agree that this is an odd error. Will try to reproduce later.
Well, it happened again during "emerge perl": ... Creating Makefile.PL in cpan/File-Path for File::Path Running Makefile.PL in cpan/File-Path Traceback (most recent call last): File "/usr/bin/emerge", line 51, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1044, in emerge_main gc_locals=locals().clear) File "/usr/lib64/portage/pym/_emerge/actions.py", line 3921, in run_action myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 478, in action_build retval = mergetask.merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1010, in merge rval = self._merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1395, in _merge self._main_loop() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1372, in _main_loop self._event_loop.iteration() File "/usr/lib64/portage/pym/portage/util/_eventloop/EventLoop.py", line 266, in iteration if not x.callback(f, event, *x.args): File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 99, in _output_handler stdout_buf[os.write(stdout_fd, stdout_buf):] File "/usr/lib64/portage/pym/portage/__init__.py", line 246, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 5] Input/output error
This vaguely resembles bug 456296, but the errno is different. As a workaround, you might try the --quiet-build option.
... * Messages for package sys-fs/udev-init-scripts-24: * * You need to add udev-mount to the sysinit runlevel. * If you do not do this, * your system will not be able to boot! * Run this command: * rc-update add udev-mount sysinit Traceback (most recent call last): File "/usr/bin/emerge", line 51, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1044, in emerge_main gc_locals=locals().clear) File "/usr/lib64/portage/pym/_emerge/actions.py", line 3920, in run_action myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 478, in action_build retval = mergetask.merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1010, in merge rval = self._merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1395, in _merge self._main_loop() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1372, in _main_loop self._event_loop.iteration() File "/usr/lib64/portage/pym/portage/util/_eventloop/EventLoop.py", line 266, in iteration if not x.callback(f, event, *x.args): File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 99, in _output_handler stdout_buf[os.write(stdout_fd, stdout_buf):] File "/usr/lib64/portage/pym/portage/__init__.py", line 246, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 5] Input/output error Zac, can you please revert your commit? The issue starts do annoy me.
(In reply to comment #5) > Zac, can you please revert your commit? The issue starts do annoy me. Which commit are you referring to?
This is the most recent change that comes to mind: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=d916da77dfc94eb30c6f512f9d7d727a8f28600c But, it seems like a perfectly reasonable commit to me.
I was thinking of: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff;h=f254a3a8135e9b32ae931dffdc36c4fbfe813cc3;hp=bcb84e1950401becf7ba24abea7a7165c9ea9edc or http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff;h=e132ec4f753b9df4769f7e58dfc661617c7375b8;hp=48479b4a3dd62085d1c746b7a807a39b1c6538f3 But it is of course hard to verify, because this bug is not easily reproducible.
(In reply to comment #8) > I was thinking of: > http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff; > h=f254a3a8135e9b32ae931dffdc36c4fbfe813cc3; > hp=bcb84e1950401becf7ba24abea7a7165c9ea9edc This one is completely unrelated (it only affects the egencache program). > or > http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff; > h=e132ec4f753b9df4769f7e58dfc661617c7375b8; > hp=48479b4a3dd62085d1c746b7a807a39b1c6538f3 This one also only affects egencache, since all other PipeLogger callers still use integer file descriptors.
(In reply to comment #7) > This is the most recent change that comes to mind: > > http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit; > h=d916da77dfc94eb30c6f512f9d7d727a8f28600c > > But, it seems like a perfectly reasonable commit to me. Ok. I will locally run portage with this commit reverted and see what happens.
(In reply to comment #10) > (In reply to comment #7) > > This is the most recent change that comes to mind: > > > > http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit; > > h=d916da77dfc94eb30c6f512f9d7d727a8f28600c > > > > But, it seems like a perfectly reasonable commit to me. > > Ok. I will locally run portage with this commit reverted > and see what happens. Reverting d916da77dfc doesn't help, because I got the same error again today.
This commit triggered bug 456296: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=2a05612d23561d4606e93e73a8e021dc91291ff6
It looks like gcc-4.8 miscompiles python (both 2.7 and 3.2) and causes this bug. I've recompiled python with gcc-4.6 and was not able to reproduce this issue since.
*** Bug 468338 has been marked as a duplicate of this bug. ***
*** Bug 469184 has been marked as a duplicate of this bug. ***
did anyone opened a new bug-report about that on set at "blocking GCC 4.8"?!? Can not find the bug.
(In reply to comment #16) > did anyone opened a new bug-report about that on set at "blocking GCC 4.8"?!? > > Can not find the bug. s/on/and
The reporter of bug 468338 had gcc-4.6.3, so maybe the issue is unrelated to the gcc version.
So why is this bug invalid then? I recompiled Python:2.7 and Python:3.2 with GCC 4.8 and now my portage crashes when i try to emerge chromium. So either this bug is not related to the GCC Version (a default bug, should be fixed), or this is related to the GCC Version and there should be a bug opened which blocks the GCC-4.8 Tracker Bug
(In reply to comment #19) > So why is this bug invalid then? I don't think anybody really firmly knows what causes it yet, and since only 3 people have reported it, the probability of others reproducing it may be small. > I recompiled Python:2.7 and Python:3.2 with GCC 4.8 and now my portage > crashes when i try to emerge chromium. If you recompile them a second time, do you still get the same result? > So either this bug is not related to the GCC Version (a default bug, should > be fixed), or this is related to the GCC Version and there should be a bug > opened which blocks the GCC-4.8 Tracker Bug It would be nice if we could pin down the cause.
BTW a similar issue sometimes happened when I built Firefox by hand (without portage). Mozilla uses Python internally to drive the build process. And it would randomly crash during the build. Since I've recompiled Python with gcc-4.6 this issue also never occurred again.
> If you recompile them a second time, do you still get the same result? Exactly that. I did emerge -av1 python:2.7 python:3.2 after that went fine without problems i run emerge -av1 chromium and BABAM --> crash --> always, 100% reproducable
Like bug 456296, this bug is likely only reproducible when _not_ using emerge --jobs or --quiet-build options, since PipeLogger does _not_ write to stdout when those options are used.
I experience a lot of crashes with --jobs=8, I did the following command to test for gcc-4.8 build failure emerge -DNave1 @world @system --jobs=8 --keep-going It was supposed to run over night but crashed on util-linux in case of this bug.
(In reply to comment #24) > I experience a lot of crashes with --jobs=8, I did the following command to > test for gcc-4.8 build failure > > emerge -DNave1 @world @system --jobs=8 --keep-going > > It was supposed to run over night but crashed on util-linux in case of this > bug. That sounds like a separate issue, since PipeLogger does not write to stdout when the --jobs option is used. Please file a new bug for that.
gcc-4.8 is a red herring. The issue happened today with python compiled by gcc-4.6 during "emerge libreoffice".
Please try re-installing portage with the python2 useflag set instead of python3, if you haven't done it already.
> That sounds like a separate issue, since PipeLogger does not write to stdout > when the --jobs option is used. Please file a new bug for that. A separate issue that started at the identical same time this issue started... sounds like it have the same background so it might be very interesting for fixing
What does -march=native translate to for you guys? $ echo "" | gcc -march=native -v -E - 2>&1 | grep cc1 (we should seriously include this in emerge --info output somehow)
(In reply to comment #29) > What does -march=native translate to for you guys? > > $ echo "" | gcc -march=native -v -E - 2>&1 | grep cc1 > > (we should seriously include this in emerge --info output somehow) In my case: -march=amdfam10 -mcx16 -msahf -mno-movbe -mno-aes -mno-pclmul -mpopcnt -mabm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mno-avx -mno-avx2 -mno-sse4.2 -mno-sse4.1 -mlzcnt -mno-rtm -mno-hle -mno-rdrnd -mno-f16c -mno-fsgsbase -mno-rdseed -mprfchw -mno-adx -mfxsr -mno-xsave -mno-xsaveopt --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 -mtune=amdfam10
Okay, I fixed a couple wrong code bugs with -mxop/-march=bdver2 recently but I guess that's not the problem here. If this is happening with 4.6 (did you rebuild all installed python versions with 4.6?) then this must be on the portage end.
(In reply to comment #31) > Okay, I fixed a couple wrong code bugs with -mxop/-march=bdver2 recently but > I guess that's not the problem here. If this is happening with 4.6 (did you > rebuild all installed python versions with 4.6?) then this must be on the > portage end. Yes, all installed python version were built with gcc-4.6. It's curious that the bug appears to happen much less often when python was compiled with 4.6. But maybe it's just a statistical fluke. Anyway, without an 100% reproducible testcase this bug will be very hard to fix.
I recompiled with python2 use-flag, no change -march=native is -march=bdver1 for me (AMD FX 8150)
I re-compiled python with my vanilla-cflag package.env file (-O2 -pipe) and now it works. So this issue seems to be caused when python is compiled with -march=bdver1 (or -march=native if you own such a processor) The first GCC which can handle this USE-Flag is GCC 4.7 since GCC 4.8 -march=native works with -march=bdver2
If that were true then 4.6 wouldn't fail.
(In reply to comment #35) > If that were true then 4.6 wouldn't fail. Exactly. Now the only common options between -march=bdver1 (Vamp898's case) and -march=amdfam10 (my case) are MMX, SSE, SSE2, SSE3 and SSE4A. Vamp898: Does recompiling python with "-march=native -mno-sse -mno-sse2 -mno-sse3 -mno-sse4a" fix the issue for you? A second possibility is that "-march=native -mstackrealign" may fix the issue. Could you please try this, too? Thanks.
> Vamp898: Does recompiling python with "-march=native -mno-sse -mno-sse2 > -mno-sse3 -mno-sse4a" fix the issue for you? > A second possibility is that "-march=native -mstackrealign" may fix the > issue. > Could you please try this, too? Recompiling with those options is not possible for me, attached there is a build.log that tells why
Created attachment 348050 [details] This happens when try to compile with CFLAGS="-O2 -pipe -march=native -mno-sse -mno-sse2 -mno-sse3 -mno-sse4a"
Created attachment 348052 [details] config.log
(In reply to comment #38) > Created attachment 348050 [details] > This happens when try to compile with CFLAGS="-O2 -pipe -march=native > -mno-sse -mno-sse2 -mno-sse3 -mno-sse4a" This is: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55185 In the meantime could you try "-mstackrealign"? Thanks.
I had the same error today. The re-emerging of a font failed during an emerge -e world. ~amd64 core2 gcc-4.7 portage-2.1.11.63 # echo "" | gcc -march=native -v -E - 2>&1 | grep cc1 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.7.2/cc1 -E -quiet -v - -march=core2 -mcx16 -msahf -mno-movbe -mno-aes -mno-pclmul -mno-popcnt -mno-abm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mno-avx -mno-avx2 -mno-sse4.2 -mno-sse4.1 -mno-lzcnt -mno-rdrnd -mno-f16c -mno-fsgsbase --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=1024 -mtune=core2 Last lines of traceback: File "/usr/lib64/portage/pym/portage/util/_eventloop/EventLoop.py", line 266, in iteration if not x.callback(f, event, *x.args): File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 99, in _output_handler stdout_buf[os.write(stdout_fd, stdout_buf):] File "/usr/lib64/portage/pym/portage/__init__.py", line 246, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 5] Input/output error
> In the meantime could you try "-mstackrealign"? > Thanks. Ok i have an result: chromium compiles fine That could have several reaons - I had bad luck that chromium was failing and in real was not able to reproduce it - - It was just luck that it worked now OR -mstackrealign in the CFLAGS helped :D either way, chromium is now compiling after i compiled python with that cflag
I confirm this, too. It happens on different packages during emerge -e @world. ~amd64 march=corei7-avx GCC 4.7.3 Portage 2.2.0_alpha174
Okay I doubt this is flag or version dependent. So there must be a reason this has only started happening now. Either portage code changed or python did. Wasn't a version bump recently?
Like bug 456296, it looks a lot like a kernel issue, because of the way that it pops up sort if intermittently when there's relatively high load. It seems like the reports began to appear with linux-3.8.0.
I usally run with MAKEFLAGS=-j12 and --jobs 8 on emerge. While compiling KDE this causes and Avg. Load of over 17 still this only happen very rare and Chromium caused a much lower Load Avg. It also only happens with portage, so i somewhat doubt its limited to the Kernel version.
> It also only happens with portage, so i somewhat doubt its limited to the > Kernel version. Only happens with python, i wanted to say
(In reply to comment #45) > Like bug 456296, it looks a lot like a kernel issue, because of the way that > it pops up sort if intermittently when there's relatively high load. It > seems like the reports began to appear with linux-3.8.0. Could you come up with a small artificial reproducer? My python foo isn't big enough, but it would be great to have a small testcase that just writes random strings to the PipeLogger. We could then run this in the background with various system-loads and see what happens.
(In reply to comment #46) > I usally run with MAKEFLAGS=-j12 and --jobs 8 on emerge. > > While compiling KDE this causes and Avg. Load of over 17 Oh yeah? Well I run with -j64 and --jobs 48, with a pantload of 96.
(In reply to comment #47) Maybe python apps are just more sensitive to this issue because python always checks the return code from write(2) calls?
Created attachment 348446 [details] test case simulating calls made by portage (In reply to comment #48) > Could you come up with a small artificial reproducer? My python foo isn't > big enough, but it would be great to have a small testcase that just > writes random strings to the PipeLogger. > We could then run this in the background with various system-loads and see > what happens. In order to closely simulate the conditions where you triggered the bug, you should run this script with the output going to your tmux console as you described in comment #2.
(In reply to comment #49) > (In reply to comment #46) > > I usally run with MAKEFLAGS=-j12 and --jobs 8 on emerge. > > > > While compiling KDE this causes and Avg. Load of over 17 > > Oh yeah? Well I run with -j64 and --jobs 48, with a pantload of 96. Take a look at -l and --load-average; with that amount of jobs (64 * 48 = 3072!) I wouldn't be surprised things go wrong unless you have the hardware to support it, you're likely running out of memory in one way or another.
Created attachment 348448 [details] test case simulating calls made by portage Updated test case to work with python3 as well as python2.
Just a small update: The bug happened again today while emerging libreoffice. (And Python was compiled with "-mstackrealign" so that's a red herring, too.) No luck so far with the Zac's test-case. It might be a kernel bug in the tty layer after all.
And I just encountered it building llvm. So this is definitely not compiler version/flags or AMD hardware specific. caribou ~ # emerge --info Portage 2.2.0_alpha177 (default/linux/amd64/13.0/developer, gcc-4.8.0, glibc-2.17, 3.9.4-gentoo x86_64) ================================================================= System uname: Linux-3.9.4-gentoo-x86_64-Intel-R-_Core-TM-_i7-3920XM_CPU_@_2.90GHz-with-gentoo-2.2 KiB Mem: 32597924 total, 5981864 free KiB Swap: 1048572 total, 1048572 free Timestamp of tree: Sun, 02 Jun 2013 05:30:01 +0000 ld GNU ld (GNU Binutils) 2.23.2 ccache version 3.1.9 [enabled] app-shells/bash: 4.2_p45 dev-java/java-config: 2.2.0 dev-lang/python: 2.6.8-r1, 2.7.5, 3.1.5-r1, 3.2.5, 3.3.2 dev-util/ccache: 3.1.9::local dev-util/cmake: 2.8.10.2-r2 dev-util/pkgconfig: 0.28 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.11.8 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.11.6, 1.13.2 sys-devel/binutils: 2.23.2 sys-devel/gcc: 4.5.4, 4.6.4, 4.7.3::local, 4.7.4_pre9999::toolchain, 4.8.0, 4.8.1_pre9999::toolchain sys-devel/gcc-config: 1.8 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.9 (virtual/os-headers) sys-libs/glibc: 2.17 Repositories: gentoo local gcc-porting toolchain dirtyepic ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=native -g -frecord-gcc-switches -fuse-ld=gold -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -march=native -g -frecord-gcc-switches -fuse-ld=gold -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--with-bdeps=y --quiet-build=n" FCFLAGS="-O2 -march=native -g -frecord-gcc-switches -fuse-ld=gold -pipe" FEATURES="assume-digests binpkg-logs ccache clean-logs compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms sign split-log splitdebug strict test test-fail-continue unknown-features-warn unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -march=native -g -frecord-gcc-switches -fuse-ld=gold -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org/" LANG="en_US.utf8" LC_ALL="en_US.utf8" LDFLAGS="-Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j10 V=1" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/home/dirtyepic/overlay /home/dirtyepic/svn/gcc-porting /home/dirtyepic/svn/toolchain /home/dirtyepic/svn/dirtyepic" SYNC="rsync://rsync.gentoo.org/gentoo-portage" ...
*** Bug 471822 has been marked as a duplicate of this bug. ***
Created attachment 350264 [details, diff] retry stdout write up to 50 times after EIO error Here's a patch for people to test. With this patch, it will retry the write up to 50 times before it gives up and raises the exception.
(In reply to Zac Medico from comment #57) > Created attachment 350264 [details, diff] [details, diff] > retry stdout write up to 50 times after EIO error > > Here's a patch for people to test. With this patch, it will retry the write > up to 50 times before it gives up and raises the exception. Well, that just papers over the real issue. Maybe it's time to point the TTY kernel guys to this bug?
just had the same error: bin/sh ../../libtool --tag CXX --tag disable-shared --mode=compile /var/tmp/portage/sys-devel/gcc-4.8.1/work/build/./gcc/xgcc -shared-libgcc -B/var/tmp/portage/sys-devel/gcc-4.8.1/work/build/./gcc -nostdinc++ -L/var/tmp/portage/sys-devel/gcc-4.8.1/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/src -L/var/tmp/portage/sys-devel/gcc-4.8.1/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -m32 -I/var/tmp/portage/sys-devel/gcc-4.8.1/work/gcc-4.8.1/libstdc++-v3/../libgcc -I/var/tmp/portage/sys-devel/gcc-4.8.1/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/include/x86_64-pc-linux-gnu -I/var/tmp/portage/sys-devel/gcc-4.8.1/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/include -I/var/tmp/portage/sys-devel/gcc-4.8.1/work/gcc-4.8.1/libstdc++-v3/libsupc++ -std=gnu++11 -prefer-pic -D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=debug.lo -O2 -march=native -pipe -D_GNU_SOURCE -m32 -c -o debug.lo /var/tmp/portage/sys-devel/gcc-4.8.1/work/gcc-4.8.1/libstdc++-v3/src/c++11/debug.cc Traceback (most recent call last): File "/usr/bin/emerge", line 51, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1051, in emerge_main gc_locals=locals().clear) File "/usr/lib64/portage/pym/_emerge/actions.py", line 3944, in run_action myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 477, in action_build retval = mergetask.merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1010, in merge rval = self._merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1395, in _merge self._main_loop() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1372, in _main_loop self._event_loop.iteration() File "/usr/lib64/portage/pym/portage/util/_eventloop/EventLoop.py", line 266, in iteration if not x.callback(f, event, *x.args): File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 99, in _output_handler stdout_buf[os.write(stdout_fd, stdout_buf):] File "/usr/lib64/portage/pym/portage/__init__.py", line 246, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 5] Input/output error the last time afaik it was on kernel 3.8-something and it went away after rebooting now it's on 3.10-rc4 filesystem is ext4
http://thread.gmane.org/gmane.linux.kernel/1503778
Created attachment 350304 [details, diff] retry stdout write up to 50 times after EIO error (In reply to octoploid from comment #58) > > Here's a patch for people to test. With this patch, it will retry the write > > up to 50 times before it gives up and raises the exception. > > Well, that just papers over the real issue. This patch may not help, since according to this similar report involving tee, tee ceases producing output on stdout because *all* writes return EIO after the bug is triggered: http://lkml.indiana.edu/hypermail/linux/kernel/1306.0/03670.html > Maybe it's time to point the TTY kernel guys to this bug? Thanks for doing that.
(In reply to Zac Medico from comment #61) > Created attachment 350304 [details, diff] [details, diff] > retry stdout write up to 50 times after EIO error > > (In reply to octoploid from comment #58) > > > Here's a patch for people to test. With this patch, it will retry the write > > > up to 50 times before it gives up and raises the exception. > > > > Well, that just papers over the real issue. > > This patch may not help, since according to this similar report involving > tee, tee ceases producing output on stdout because *all* writes return EIO > after the bug is triggered: > > http://lkml.indiana.edu/hypermail/linux/kernel/1306.0/03670.html > > > Maybe it's time to point the TTY kernel guys to this bug? > > Thanks for doing that. yeah: just got bitten by it with the patch applied: e-1.5.31-amd64/dlls/schannel' ../../tools/makedep -C/var/tmp/portage/app-emulation/wine-1.5.31/work/wine-1.5.31/dlls/schannel -S/var/tmp/portage/app-emulation/wine-1.5.31/work/wine-1.5.31 -T../.. lsamode.c schannel_main.c usermode.c version.rc make[1]: Entering directory `/var/tmp/portage/app-emulation/wine-1.5.31/work/wine-1.5.31-amd64/dlls/schannel/tests' ../../../tools/makedep -xo -xcross.o -C/var/tmp/portage/app-emulation/wine-1.5.31/work/wine-1.5.31/dlls/schannel/tests -S/var/tmp/portage/app-emulation/wine-1.5.31/work/wine-1.5.31 -T../../.. main.c make[1]: Leaving directory `/var/tmp/portage/app-emulation/wine-1.5.31/work/wine-1.5.31-amd64/dlls/schannel' make[1]: Leaving directory `/var/tmp/portage/app-emulation/wine-1.5.31/work/wine-1.5.31-amd64/dlls/schannel/tests' config.status: creating dlls/scsiport.sys/Makefile Traceback (most recent call last): File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 99, in _output_handler stdout_buf[os.write(stdout_fd, stdout_buf):] File "/usr/lib64/portage/pym/portage/__init__.py", line 246, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 5] Input/output error During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/bin/emerge", line 50, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1052, in emerge_main gc_locals=locals().clear) File "/usr/lib64/portage/pym/_emerge/actions.py", line 3950, in run_action myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 477, in action_build retval = mergetask.merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1010, in merge rval = self._merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1395, in _merge self._main_loop() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1372, in _main_loop self._event_loop.iteration() File "/usr/lib64/portage/pym/portage/util/_eventloop/EventLoop.py", line 266, in iteration if not x.callback(f, event, *x.args): File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 111, in _output_handler if e.errno != errno.EAGAIN: UnboundLocalError: local variable 'e' referenced before assignment
(In reply to Matt from comment #62) > (In reply to Zac Medico from comment #61) > > Created attachment 350304 [details, diff] [details, diff] [details, diff] > > retry stdout write up to 50 times after EIO error > > > > (In reply to octoploid from comment #58) > > > > Here's a patch for people to test. With this patch, it will retry the write > > > > up to 50 times before it gives up and raises the exception. > > > > > > Well, that just papers over the real issue. > > > > This patch may not help, since according to this similar report involving > > tee, tee ceases producing output on stdout because *all* writes return EIO > > after the bug is triggered: > > > > http://lkml.indiana.edu/hypermail/linux/kernel/1306.0/03670.html > > > > > Maybe it's time to point the TTY kernel guys to this bug? > > > > Thanks for doing that. > > > yeah: > > just got bitten by it with the patch applied: > > [snip] additional message that got shown after the emerge failed: * Unable to trace static ELF: /usr/sbin/prelink: /usr/sbin/prelink --reloc-only 0x7b800000 kernel32.dll.so * Unable to trace static ELF: /usr/sbin/prelink: /usr/sbin/prelink --reloc-only 0x7bc00000 ntdll.dll.so * Unable to trace static ELF: /usr/sbin/prelink: /usr/sbin/prelink --reloc-only 0x7ac00000 riched20.dll.so (prelink version installed was 20120628, updating now to newest version but it's surely not related) (sorry for link-spamming) for completeness' sake: this happened with gcc 4.7.2, kernel 3.10-r4 (compiled with gcc 4.8.1, previously also happened with kernel built with gcc 4.8.0), ~amd64
(In reply to Matt from comment #62) > UnboundLocalError: local variable 'e' referenced before assignment The UnboundLocalError is a bug in the first patch that I attached. The latest patch should not have that issue. This email points to a kernel commit that may have triggered the bug: http://article.gmane.org/gmane.linux.kernel/1504713 Here's a gitweb link to that commit: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=699390354da6c258b65bf8fa79cfd5feaede50b6
Just a thought: I have noticed that in both Ruby and Python, but not an equivalent version I wrote in C, a non-blocking read on a PTY causes EIO when it should cause EAGAIN. I forgot my theory about why this happens. This is the first thing that jumps to mind, as I've written code that captures both STDOUT and STDERR with a PTY and pipe (respectively) to read the lines as close as I can to execution order (in C, Ruby, and Python). And emerge's backtrace involves something called PipeLogger.
(In reply to Markus Peloquin from comment #65) > Just a thought: I have noticed that in both Ruby and Python, but not an > equivalent version I wrote in C, a non-blocking read on a PTY causes EIO > when it should cause EAGAIN. I forgot my theory about why this happens. This bug report is about *writing* to stdout, not reading, so your whatever you've observed with respect to reading is irrelevant to this bug report. > This is the first thing that jumps to mind, as I've written code that > captures both STDOUT and STDERR with a PTY and pipe (respectively) to read > the lines as close as I can to execution order (in C, Ruby, and Python). And > emerge's backtrace involves something called PipeLogger. The PipeLogger class does in fact read from the master end of a pty device, but that's not where our problem is. Our problem is where it tries to write to stdout.
This happened to me too, and it's was always reproductible when I compiled dev-libs/boost-1.52.0-r6:0/1.52. It always failed, but not at the same point. Of course, there were randomly errors on other different packages, but, as I said, boost was a fixed, reproductible case. And I found an workaround by compiling python with O3. There was over a month without any glitch since then. My emerge --info: Portage 2.2.0_alpha179 (default/linux/amd64/13.0/desktop/gnome, gcc-4.8.1, glibc-2.17, 3.9.5-gentoo-costel x86_64) ================================================================= System uname: Linux-3.9.5-gentoo-costel-x86_64-Intel-R-_Core-TM-_i7_CPU_860_@_2.80GHz-with-gentoo-2.2 KiB Mem: 16429576 total, 13014652 free KiB Swap: 0 total, 0 free Timestamp of tree: Mon, 10 Jun 2013 19:15:01 +0000 ld GNU ld (GNU Binutils) 2.23.1 app-shells/bash: 4.2_p45 dev-lang/python: 2.7.5, 3.3.2 dev-util/cmake: 2.8.11.1 dev-util/pkgconfig: 0.28 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.11.8 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.10.3, 1.11.6, 1.13.2 sys-devel/binutils: 2.23.1 sys-devel/gcc: 4.8.1 sys-devel/gcc-config: 1.8 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.9 (virtual/os-headers) sys-libs/glibc: 2.17 Repositories: gentoo added ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block" DISTDIR="/mnt/linux/distfiles" EMERGE_DEFAULT_OPTS="--jobs=4 --load-average=10 --keep-going --with-bdeps=y --complete-graph --quiet-build=n --autounmask-write" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs candy collision-protect config-protect-if-modified distlocks fail-clean fixlafiles merge-sync news nodoc noinfo parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://ftp.romnet.org/gentoo/ http://mirrors.xservers.ro/gentoo/ ftp://ftp.romnet.org/gentoo/ http://ftp.roedu.net/pub/mirrors/gentoo.org/ http://distfiles.gentoo.org/" LANG="ro_RO.UTF-8" LC_ALL="ro_RO.UTF-8" LDFLAGS="-Wl,-O1,--sort-common,--hash-style=gnu,--warn-once,--as-needed,-z,now -O2 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block" MAKEOPTS="-j8 --load-average=10" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_EXTRA_OPTS="--human-readable --delete-before --progress" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/added" SYNC="rsync://ftp.romnet.org/gentoo-portage" USE="X a52 aac acl acpi alsa amd64 berkdb branding bzip2 cairo cdda cdr cli colord consolekit cracklib crypt cxx dbus development dri dts dvd dvdr eds emboss encode evo exif fam firefox flac gdbm gif gmp gnome gnome-keyring gnome-online-accounts gpm gstreamer gtk gtk3 iconv ipv6 ithreads jpeg lcms libnotify libsecret logrotate mad mmx mng modules mp3 mp4 mpeg mudflap multilib mysql nautilus ncurses networkmanager nls nptl ogg opengl openmp pam pango pch pcre pdf png policykit postgres ppds pulseaudio qt3support readline sdl session socialweb spell sse sse2 ssl ssse3 startup-notification svg systemd tcpd theora threads tiff truetype udev udisks unicode upower usb vdpau vhosts vorbis wxwidgets x264 xcb xml xv xvid xvmc zlib" ABI_X86="64" ALSA_CARDS="virtuoso hda-intel" APACHE2_MODULES="actions alias auth_basic auth_digest authn_alias authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers ident imagemap include info log_config log_forensic logio mime mime_magic negotiation reqtimeout rewrite setenvif speling status substitute unique_id userdir usertrack version vhost_alias access_compat authn_core authz_core proxy proxy_http socache_shmcb unixd" APACHE2_MPMS="worker" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog apache bind conntrack cpu disk dns email hddtemp iptables mysql network nginxping postgresql processes sensors uptime users" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ro en" NGINX_MODULES_HTTP="access auth_basic autoindex browser charset empty_gif fastcgi geo gunzip gzip limit_conn limit_req map memcached naxsi proxy referer rewrite scgi split_clients ssi upstream_ip_hash userid uwsgi addition cache_purge dav fancyindex flv geoip gzip_static headers_more image_filter mp4 perl push random_index realip secure_link spdy stub_status sub upload_progress xslt" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7 python 3_3" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19" USERLAND="GNU" VIDEO_CARDS="nv nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, USE_PYTHON PYTHON setting: ================================================================= Package Settings ================================================================= dev-lang/python-2.7.5 was built with the following: USE="gdbm ipv6 (multilib) ncurses readline sqlite ssl threads (wide-unicode) xml -berkdb -build -doc -examples -hardened -tk -wininst" ABI_X86="64" CFLAGS="-O3 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block -fwrapv" CXXFLAGS="-O3 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block -fwrapv" LDFLAGS="-Wl,-O1,--sort-common,--hash-style=gnu,--warn-once,--as-needed,-z,now -O3 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block -L." dev-lang/python-3.3.2 was built with the following: USE="gdbm ipv6 (multilib) ncurses readline sqlite ssl threads xml -build -doc -examples -hardened -tk -wininst" ABI_X86="64" CFLAGS="-O3 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block -fwrapv" CXXFLAGS="-O3 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block -fwrapv" LDFLAGS="-Wl,-O1,--sort-common,--hash-style=gnu,--warn-once,--as-needed,-z,now -O3 -pipe -march=native -mtune=native -Wno-error -w -flto=8 -fuse-linker-plugin -ftracer -floop-interchange -floop-strip-mine -floop-block -L." and portage is using python 3.3: [ebuild R *] sys-apps/portage-2.2.0_alpha179 USE="(ipc) python3 -build -doc -epydoc (-pypy2_0) -python2 (-selinux) -xattr" LINGUAS="-pl -ru" PYTHON_TARGETS="python2_7 python3_3 -pypy1_9 -pypy2_0 -python2_6 -python3_1 -python3_2 (-python3_4)" 0 kB
The kernel fix can be found here: https://patchwork.kernel.org/patch/2718401/ (The patch should find its way to the Linus tree and the stable kernels in the next few days)
(In reply to octoploid from comment #68) > The kernel fix can be found here: > https://patchwork.kernel.org/patch/2718401/ > > (The patch should find its way to the Linus tree and > the stable kernels in the next few days) How can you tell? It still needs to be acked... I'll keep an eye on pushing this to gentoo-sources; but will need confirmation.
*** Bug 468934 has been marked as a duplicate of this bug. ***
(In reply to Tom Wijsman (TomWij) from comment #69) > (In reply to octoploid from comment #68) > > The kernel fix can be found here: > > https://patchwork.kernel.org/patch/2718401/ > > > > (The patch should find its way to the Linus tree and > > the stable kernels in the next few days) > > How can you tell? It still needs to be acked... > > I'll keep an eye on pushing this to gentoo-sources; but will need > confirmation. Well, Greg added his Signed-off-by. https://git.kernel.org/cgit/linux/kernel/git/gregkh/tty.git/commit/?h=tty-linus&id=7c61c3d8f44d5d822f758754287af644307b4af9
Revision 2404: Linux patches 3.0.83, 3.2.47, 3.4.50 and 3.9.7. Since 3.9.7, the dmesg restrict patch is in the kernel and therefore has been removed from genpatches; furthermore, with that version we have added a stable queue patch that deals with the I/O errors commonly seen in Portage output as per bug #459674. Also, three patches were added to introduce BFQ support which remains completely optional as it is off by default and therefore not compiled into the kernel unless you toggle it on in the menuconfig. There exists a chance that we add a very small amount of such popular optional patches to spare large groups of users and other maintainers from having to add, track and maintain them theirselves. Since 3.9 is not near EOL yet the BFQ patches were added to give them a try, this was requested in #gentoo-kernel, feedback on this idea is welcome; on a side note, the author of BFQ is planning to upstream them so we might see them go into the main kernel in the nearby future. (tomwij) Added: 1082_linux-3.0.83.patch Added: 1046_linux-3.2.47.patch Added: 1049_linux-3.4.50.patch Added: 1006_linux-3.9.7.patch Added: 1400_Portage-TTY-transient-pty-write-EIO.patch Added: 1801_block-cgroups-kconfig-build-bits-for-BFQ-v6r2-3.9.patch Added: 1802_block-introduce-the-BFQ-v6r2-I-O-sched-for-3.9.patch Added: 1803_block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-v6r2-for-3.9.0.patch Deleted: 1505_dmesg-restrict-fix.patch Revision 2408: 3.9-11 release (tomwij)
+ 20 Jun 2013; Tom Wijsman <TomWij@gentoo.org> +gentoo-sources-3.0.83.ebuild, + +gentoo-sources-3.2.47.ebuild, +gentoo-sources-3.4.50.ebuild, + +gentoo-sources-3.9.7.ebuild, -gentoo-sources-3.0.76.ebuild, + -gentoo-sources-3.0.77.ebuild, -gentoo-sources-3.0.78.ebuild, + -gentoo-sources-3.0.79.ebuild, -gentoo-sources-3.2.45.ebuild, + -gentoo-sources-3.4.43.ebuild, -gentoo-sources-3.4.44.ebuild, + -gentoo-sources-3.4.45.ebuild, -gentoo-sources-3.4.46.ebuild, + -gentoo-sources-3.8.11.ebuild, -gentoo-sources-3.8.12.ebuild, + -gentoo-sources-3.9.1-r1.ebuild, -gentoo-sources-3.9.1.ebuild, + -gentoo-sources-3.9.2.ebuild, -gentoo-sources-3.9.3.ebuild: + Dropped unstable testing versions older than a month. Read Comment #72.
(In reply to Tom Wijsman (TomWij) from comment #72) > we have added a stable queue > patch that deals with the I/O errors commonly seen in Portage output as per > bug #459674. This is more to be considered as a question than a request : Since : - this error is "commonly seen" - this bug was initially reported against a 3.8.0 - the current gentoo-stable gentoo-sources is 3.8.13 What about back-porting to 3.8.13 ?
(In reply to Eric F. GARIOUD from comment #74) > (In reply to Tom Wijsman (TomWij) from comment #72) > > we have added a stable queue > > patch that deals with the I/O errors commonly seen in Portage output as per > > bug #459674. > > This is more to be considered as a question than a request : > > Since : > > - this error is "commonly seen" > - this bug was initially reported against a 3.8.0 > - the current gentoo-stable gentoo-sources is 3.8.13 > > What about back-porting to 3.8.13 ? Status: In progress. We first have to see if this causes any problems by testing it on the 3.9 feature branch before we port this back to our stable branch, I assume we should do this when it is added upstream to the stable kernel; if possible, I would also like to combine this backporting with some of the other pending patches to make the revision bump worth it. After which we need to ask the arch teams to do a fast track stabilization, which may not necessarily happen as fast as we expect; by that time we may be close to the 3.9 EOL and stabilize that instead, but well, let's see how things go first... Temporarily, users that experience this problem can switch to a 3.9 kernel or apply the patch [1] themselves. [1]: https://git.kernel.org/cgit/linux/kernel/git/gregkh/tty.git/patch/?id=7c61c3d8f44d5d822f758754287af644307b4af9
Thought I'd throw my hat in the ring and say this happens to me when I try to emerge firefox. It errors out while building media-libs/libvpx-1.1.0: Traceback (most recent call last): File "/usr/bin/emerge", line 50, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1059, in emerge_main return run_action(emerge_config) File "/usr/lib64/portage/pym/_emerge/actions.py", line 3663, in run_action myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 448, in action_build retval = mergetask.merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1010, in merge rval = self._merge() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1395, in _merge self._main_loop() File "/usr/lib64/portage/pym/_emerge/Scheduler.py", line 1366, in _main_loop self._event_loop.iteration() File "/usr/lib64/portage/pym/portage/util/_eventloop/EventLoop.py", line 266, in iteration if not x.callback(f, event, *x.args): File "/usr/lib64/portage/pym/portage/util/_async/PipeLogger.py", line 99, in _output_handler stdout_buf[os.write(stdout_fd, stdout_buf):] File "/usr/lib64/portage/pym/portage/__init__.py", line 246, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 5] Input/output error ------------------------------------------------ My emerge --info: Portage 2.3.6-r1 (funtoo/1.0/linux-gnu/arch/x86-64bit, gcc-4.6.3, glibc-2.15-r4, 3.9.6-hardened x86_64) ================================================================= System uname: Linux-3.9.6-hardened-x86_64-Intel-R-_Core-TM-_i7-3930K_CPU_@_3.20GHz-with-gentoo-2.2.0 KiB Mem: 65957992 total, 64829764 free KiB Swap: 2283348 total, 2283348 free Timestamp of tree: Sun, 23 Jun 2013 17:15:01 +0000 ld GNU ld (GNU Binutils) 2.22 app-shells/bash: 4.2_p37 dev-lang/python: 2.7.5-r1000, 3.3.2-r1000 dev-util/cmake: 2.8.11.1 sys-apps/baselayout: 2.2.0-r4 sys-apps/openrc: 0.10.2-r9 sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.11.6, 1.12.6 sys-devel/binutils: 2.22-r1 sys-devel/gcc: 4.6.3 sys-devel/gcc-config: 1.8 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.4-r2 (virtual/os-headers) sys-libs/glibc: 2.15-r4 Repositories: gentoo ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=corei7 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-march=corei7 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch" FFLAGS="" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed" MAKEOPTS="-j13" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="git://github.com/funtoo/ports-2012.git" SYNC_USER="root" USE="X acl alsa amd64 apng berkdb bzip2 cdr consolekit cracklib crypt cups cxx dbus dri dvd dvdr dvdread flac gdbm gif gpm iconv icu ipv6 jpeg kde lame mad mmx modules mp3 mpeg mudflap multilib ncurses nls nptl ogg opengl openmp pam pcre png policykit pppd python readline resolvconf sse sse2 ssl tcpd tiff truetype udev unicode vorbis wavpack wifi win32codecs xml zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel ice1724 intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias authn_core authz_core socache_shmcb unixd" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev synaptics keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-3" PYTHON_ABIS="2.7 3.3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, SYNC_UMASK ---------------------------------------------- I'm not qualified to do anything about it, but I figure more information can't hurt, right?
(In reply to Captain Crutches from comment #76) > I'm not qualified to do anything about it, but I figure more information > can't hurt, right? You can help by testing this kernel patch: https://git.kernel.org/cgit/linux/kernel/git/gregkh/tty.git/patch/?id=7c61c3d8f44d5d822f758754287af644307b4af9
Sorry, but complete noob question, how do I go about applying that patch?
(In reply to Captain Crutches from comment #78) > Sorry, but complete noob question, how do I go about applying that patch? Download it somewhere and then do (replace the second path): cd /usr/src/linux patch -p1 < /path/to/the/patch/here Make sure it says it didn't fail. Then you can compile the kernel again. Alternatively, you could try 3.9.7 which contains this patch.
(In reply to Tom Wijsman (TomWij) from comment #79) > Alternatively, you could try 3.9.7 which contains this patch. Yup, I upgraded my kernel and that seems to have fixed it. I'll be sure to report back here if the problem reasserts itself, but until then, thanks!
Linux 3.10 is out and so is 3.9.8. Let's close this bug.
But our stable version is still affected; so we're awaiting stabilization, 3.9 is going to EOL, but it might take two or so additional minors.
Filing a stabilization bug in one or two days.