Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 194081 - sys-apps/portage-2.1.3.10 backtrace during unmerge: OSError: [Errno 16] Device or resource busy
Summary: sys-apps/portage-2.1.3.10 backtrace during unmerge: OSError: [Errno 16] Devic...
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS, REGRESSION
: 194083 (view as bug list)
Depends on:
Blocks: 194041
  Show dependency tree
 
Reported: 2007-09-28 12:02 UTC by Togge
Modified: 2007-10-03 20:40 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ignore EBUSY during unmerge (ebusy.patch,1.02 KB, patch)
2007-09-28 17:20 UTC, Zac Medico
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Togge 2007-09-28 12:02:41 UTC
While emerge depcleans unmerge action the following backtrace occurred:
 
 --- !empty   dir /var/www
 Traceback (most recent call last):
   File "/usr/bin/emerge", line 6529, in ?
     retval = emerge_main()
   File "/usr/bin/emerge", line 6516, in emerge_main
     myopts, myaction, myfiles, spinner)
   File "/usr/bin/emerge", line 5707, in action_depclean
     "unmerge", cleanlist, ldpath_mtimes)
   File "/usr/bin/emerge", line 4340, in unmerge
     vartree=vartree, ldpath_mtimes=ldpath_mtimes)
   File "/usr/lib/portage/pym/portage.py", line 4304, in unmerge
     ldpath_mtimes=ldpath_mtimes)
   File "/usr/lib/portage/pym/portage.py", line 7390, in unmerge
     self._unmerge_pkgfiles(pkgfiles, others_in_slot)
   File "/usr/lib/portage/pym/portage.py", line 7632, in _unmerge_pkgfiles
     os.rmdir(obj)
 OSError: [Errno 16] Device or resource busy: '/var'                       [     !! ]

I get this only on the unmerge phase of an installed package, that is not during  cleaning of an older version ( emerge: ... merge foo-1.1 -> clean foo-1.0 )

Portage 2.1.3.10 (default-linux/x86/2007.0, gcc-4.1.2, glibc-2.5-r4, 2.6.21-gentoo-r4 i686)
=================================================================
System uname: 2.6.21-gentoo-r4 i686 Pentium III (Coppermine)
Timestamp of tree: Fri, 28 Sep 2007 04:00:01 +0000
distcc[9149] (dcc_set_trace_from_env) ERROR: failed to open logfile /var/log/distcc.log: Permission denied [enabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p17
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.4.4-r5
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.7.9-r1, 1.10
sys-devel/binutils:  2.17-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.21
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-Os -march=pentium3 -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/init.d /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-Os -march=pentium3 -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--usepkg"
FEATURES="ccache distcc distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/"
LANG="en_US.utf8"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/www/localhost/htdocs/pub/gentoo/portage-overlay/local-overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X aac acl acpi apache apache2 authdaemond bash-completion berkdb bitmap-fonts bzip2 cli cracklib crypt curl cvsgraph dri enscript fam font-server gdbm geoip gif gpm iconv idn imap ipv6 isdnlog java javascript jpeg libwww maildir midi mime mmx mudflap mysql ncurses nls nptl nptlonly openmp pam pcre perl php png pppd python readline reflection ruby sasl session spell spl ssl symlink tcltk tcpd tiff truetype-fonts type1-fonts unicode x86 xml xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 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 mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="none dummy nvidia"
Unset:  CTARGET, INSTALL_MASK, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Reproducible: Always

Steps to Reproduce:
Comment 1 Chad A. Simmons 2007-09-28 12:21:40 UTC
same issue here with an emerge -C tunesbrowser

chadgentoo tmp # emerge -C tunesbrowser

 media-sound/tunesbrowser
    selected: 0.3.0-r1
   protected: none
     omitted: none

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...
>>> (Control-C to abort)...
>>> Unmerging in: 5 4 3 2 1
>>> Unmerging media-sound/tunesbrowser-0.3.0-r1...
No package files given... Grabbing a set.
--- !found   obj /usr/share/tunesbrowser.glade
--- !found   obj /usr/share/tips.txt
--- !found   obj /usr/share/soundfile.png
--- !found   obj /usr/share/sound2.png
--- !found   obj /usr/share/sound1.png
--- !found   obj /usr/share/man/man1/tunesbrowser.1.bz2
--- !found   obj /usr/share/doc/tunesbrowser-0.3.0-r1/ChangeLog.bz2
--- !found   obj /usr/share/doc/tunesbrowser-0.3.0-r1/AUTHORS.bz2
--- !found   dir /usr/share/doc/tunesbrowser-0.3.0-r1
--- !found   obj /usr/share/comp.red.png
--- !found   obj /usr/share/comp.blue.png
--- !found   obj /usr/bin/tunesbrowser
--- !empty   dir /usr/share/man/man1
--- !empty   dir /usr/share/man
--- !empty   dir /usr/share/doc
--- !empty   dir /usr/share
--- !empty   dir /usr/bin
Traceback (most recent call last):
  File "/usr/bin/emerge", line 6529, in <module>
    retval = emerge_main()
  File "/usr/bin/emerge", line 6509, in emerge_main
    mtimedb["ldpath"]):
  File "/usr/bin/emerge", line 4340, in unmerge
    vartree=vartree, ldpath_mtimes=ldpath_mtimes)
  File "/usr/lib64/portage/pym/portage.py", line 4304, in unmerge
    ldpath_mtimes=ldpath_mtimes)
  File "/usr/lib64/portage/pym/portage.py", line 7390, in unmerge
    self._unmerge_pkgfiles(pkgfiles, others_in_slot)
  File "/usr/lib64/portage/pym/portage.py", line 7632, in _unmerge_pkgfiles
    os.rmdir(obj)
OSError: [Errno 16] Device or resource busy: '/usr'
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-09-28 12:44:08 UTC
*** Bug 194083 has been marked as a duplicate of this bug. ***
Comment 3 srrijkers 2007-09-28 17:04:19 UTC
Exact same thing here (-C gentoo-sources) on ~x86, portage 2.1.3.10.
Comment 4 Zac Medico gentoo-dev 2007-09-28 17:20:08 UTC
Created attachment 132105 [details, diff]
ignore EBUSY during unmerge

If this patch is saved as /tmp/ebusy.patch, then it can be applied as follows:

patch /usr/lib/portage/pym/portage.py < /tmp/ebusy.patch

I've masked portage-2.1.3.10 to prevent others from hitting this bug.
Comment 5 Zac Medico gentoo-dev 2007-09-28 23:17:01 UTC
This has been released in 2.1.3.11.
Comment 6 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2007-10-03 18:29:05 UTC
FIXED?