Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 485100 - sys-apps/portage-2.2.1 fails to fetch with automounted DISTDIR
Summary: sys-apps/portage-2.2.1 fails to fetch with automounted DISTDIR
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage team
Depends on:
Blocks: 377365
  Show dependency tree
Reported: 2013-09-16 13:20 UTC by Josh Parsons
Modified: 2013-09-17 15:00 UTC (History)
0 users

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


Note You need to log in before you can comment on or make changes to this bug.
Description Josh Parsons 2013-09-16 13:20:30 UTC
I have my portage DISTDIR automounted from an nfs server at /misc/distfiles; /usr/portage/distfiles is a symlink, and DISTDIR is not explicitly set. This configuration worked fine on all versions of portage I have used for some years, and worked with Since upgrading to 2.2.1, portage will not use the automounted DISTDIR.

Reproducible: Always

Steps to Reproduce:
1. Configure portage as described
2. emerge gimp
Actual Results:  
>>> Emerging (1 of 1) media-gfx/gimp-2.8.6
!!! makedirs('/misc/distfiles/')
!!! Directory Not Found: DISTDIR='/misc/distfiles'
!!! Fetching will fail!
!!! No write access to '/misc/distfiles'
!!! statvfs('/misc/distfiles'): [Errno 2] No such file or directory: '/misc/distfiles'
!!! File gimp-2.8.6.tar.bz2 isn't fetched but unable to get it.
 * Fetch failed for 'media-gfx/gimp-2.8.6', Log file:
 *  '/var/tmp/portage/media-gfx/gimp-2.8.6/temp/build.log'

Expected Results:  
normal emerge output

I suspect that what's going on is that portage is using stat() to test whether /misc/distfiles exists, and then using mkdir() to open it if not. That's incorrect, as you shouldn't be mkdir()ing in a directory that is mounted with -t autofs (like /misc).

Here is the /proc/mounts line for /misc on my system:

/etc/autofs/auto.misc /misc autofs rw,relatime,fd=6,pgrp=28483,timeout=300,minproto=5,maxproto=5,indirect 0 0