Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 143928 - x11-apps/xinit - xdm starts before home dir on nfs mount is mounted
Summary: x11-apps/xinit - xdm starts before home dir on nfs mount is mounted
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
: 150253 (view as bug list)
Depends on:
Blocks:
 
Reported: 2006-08-14 12:51 UTC by Paul de Vries
Modified: 2006-10-06 10:00 UTC (History)
2 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Paul de Vries 2006-08-14 12:51:50 UTC
On my system where the user home-dir is located on a nfs server, users can not login directly after reboot there nfs directories are not mounted at the moment xdm is started. This causes xdm to fail (blank screen). A xdm restart is needed to recover.

using xorg-x11-7.0-r1 and baselayout-1.12.4-r4
emerge --info:
Portage 2.1-r2 (default-linux/x86/2006.0, gcc-3.4.6, glibc-2.3.6-r3, 2.6.15-gentoo-r1 i686)
=================================================================
System uname: 2.6.15-gentoo-r1 i686 Pentium III (Coppermine)
Gentoo Base System version 1.12.4
ccache version 2.3 [disabled]
app-admin/eselect-compiler: [Not Present]
dev-lang/python:     2.3.5-r2, 2.4.2
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  0.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -march=pentium3 -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf"
CXXFLAGS="-O3 -march=pentium3 -momit-leaf-frame-pointer -fomit-frame-pointer -ftracer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer parallel-fetch sandbox sfperms strict userpriv usersandbox"
GENTOO_MIRRORS="http://files.gentoo.org http://mirror.pacific.net.au/linux/Gentoo ftp://ftp.ndlug.nd.edu/pub/gentoo/ http://212.219.56.133/sites/www.ibiblio.org/gentoo/ ftp://212.219.56.133/sites/www.ibiblio.org/gentoo/"
LINGUAS="en"
MAKEOPTS="-j2"
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'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/initng-portage"
SYNC="rsync://rsync.fr.gentoo.org/gentoo-portage"
USE="x86 X a52 aac alsa apache2 apm avi bash-completion berkdb bitmap-fonts bzip2 cli crypt cups directfb dlloader dri dvd emboss encode exif faad2 fam fbcon ffmpeg flac foomaticdb fortran gdbm gif gimp gnome gpm gstreamer gtk gtk2 hal imlib isdnlog jpeg jpg kdeenablefinal lcms libg++ libwww live mad mikmod mmxext motif mozilla mp3 mpeg mysql mythtv ncurses network nls nptl ogg opengl oss pam pcre pdflib perl png postgres ppds pppd python qt3 qt4 quicktime readline real reflection sdl session spell spl sqlite ssl svga tcltk tcpd tiff truetype truetype-fonts type1-fonts udev unicode usb v4l vorbis win32codecs xml xml2 xmms xorg xv zlib elibc_glibc initng_plugins_also initng_plugins_bash_launcher initng_plugins_chdir initng_plugins_chroot initng_plugins_conflict initng_plugins_cpout initng_plugins_critical initng_plugins_cron initng_plugins_daemon initng_plugins_dev initng_plugins_dllaunch initng_plugins_envparser initng_plugins_find initng_plugins_fstat initng_plugins_history initng_plugins_idleprobe initng_plugins_initctl initng_plugins_interactive initng_plugins_iparser initng_plugins_last initng_plugins_limit initng_plugins_logfile initng_plugins_netprobe initng_plugins_ngc4 initng_plugins_pause initng_plugins_pidfile initng_plugins_reload initng_plugins_renice initng_plugins_rlparser initng_plugins_simple_launcher initng_plugins_stcmd initng_plugins_stdout initng_plugins_suid initng_plugins_syncron initng_plugins_syslog initng_plugins_unneeded initng_plugins_provide input_devices_keyboard input_devices_mouse kernel_linux linguas_en userland_GNU video_cards_mga video_cards_matrox video_cards_fbdev video_cards_vga"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS

(note: not using initng, although installed)

Proposed solution: add "after nfsmount" to /etc/init.d/xdm eventualy with a check in /etc/fstab if any nfs mounts are used on the system.
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2006-08-14 14:01:07 UTC
Not a baselayout bug, blame the early start "feature" of xdm (Bug 70689).
Comment 2 Donnie Berkholz (RETIRED) gentoo-dev 2006-08-14 14:08:08 UTC
Just add nfsmount to the "use" line in init.d/xdm, and let us know whether that works.
Comment 3 Paul de Vries 2006-08-15 02:14:41 UTC
(In reply to comment #2)
> Just add nfsmount to the "use" line in init.d/xdm, and let us know whether that
> works.
> 

no, that does not help. The relevant part of the start up log:
 * Starting metalog ...                                [ ok ] 
 * Setting up xdm ...                                  [ ok ]
 * Loading iptables state and starting firewall ...    [ ok ]
 * Starting eth0
 *   You are using a depreciated configuration syntax for eth0
 *   You are advised to read /etc/conf.d/net.example and upgrade it accordingly
 *   Bringing up eth0
 *     dhcp
 *       Running dhcpcd ...                           [ ok ]
 *       eth0 received address 192.168.0.3/24
 * Setting clock via the NTP client 'ntpdate' ...     [ ok ]
 * Starting portmap ...                               [ ok ]
 * Starting cupsd ...                                 [ ok ]
 * Mounting nfsd filesystem in /proc ...              [ ok ]
 * Starting NFS statd ...                             [ ok ]
 * Starting NFS daemon ...                            [ ok ]
 * Starting NFS mountd ...                            [ ok ]
 * Mounting network filesystems ...                   [ ok ]

so xdm is still started before nfs is mounted. 
My init.d/xdm depend:
depend() {
        need localmount

        # this should start as early as possible
        # we can't do 'before *' as that breaks it
        after bootmisc readahead-list nfsmount
        before alsasound net.lo

        # Start before X
        use acpid hald xfs
}
Comment 4 Donnie Berkholz (RETIRED) gentoo-dev 2006-08-15 02:48:49 UTC
 You did notice that you added it to a line other than the one I requested? Also, make sure the nfs service is called nfsmount, and try rerunning /sbin/depscan.sh
Comment 5 Paul de Vries 2006-08-15 03:31:04 UTC
(In reply to comment #4)
>  You did notice that you added it to a line other than the one I requested?
> Also, make sure the nfs service is called nfsmount, and try rerunning
> /sbin/depscan.sh

oops, I was not paying attention, my excusses. I added "netmount" and "nfsmount" to the use line in init.d/xdm and now it works as expected. 

My service to mount network drives is called netmount, so I should not have nfsmount as well (nfsmount is 'need' in netmount when nfs in fstab). I will remove nfsmount and check again at the next reboot.
Comment 6 Donnie Berkholz (RETIRED) gentoo-dev 2006-08-20 12:11:30 UTC
Fixed in CVS, sync in an hour and re-merge to get the fix.
Comment 7 Ian Stakenvicius 2006-09-08 07:32:59 UTC
Problem -- this breaks ppl that use rc_parallel_startup=no because for some reason 'after netmount' takes precedence over netmounts 'need net' and so netmount fails.

To me it seems to be related to the 'before net.lo' dependency however -- why is that there (given net.lo and alsasound should start in boot and xdm should start in default)
Comment 8 Donnie Berkholz (RETIRED) gentoo-dev 2006-09-08 10:05:34 UTC
(In reply to comment #7)
> To me it seems to be related to the 'before net.lo' dependency however -- why
> is that there (given net.lo and alsasound should start in boot and xdm should
> start in default)

If you want xdm to start early, you put it in boot.
Comment 9 Ian Stakenvicius 2006-09-08 10:41:15 UTC
..ok, but that shouldn't break netmount if xdm is in default -- and also, i can see this causing issues when xdm is in boot now too (will play around).. if xdm is in boot it should still work fine w/o the before depend..

netmount needs net, which need at least net.lo (usually more).  if xdm is after netmount, it cannot be before net.lo

one or the other has to go, and i vote for net.lo as that doesnt seem to be a functional dependency.
Comment 10 Jakub Moc (RETIRED) gentoo-dev 2006-10-06 10:00:49 UTC
*** Bug 150253 has been marked as a duplicate of this bug. ***