Bug 161569 - no panel icons/menus when using a NFS mounted $HOME
Summary: no panel icons/menus when using a NFS mounted $HOME
Keywords:
Status: CLOSED WORKSFORME
Alias: None
Product: Fedora
Classification: Fedora
Component: gnome-panel
Version: 4
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Mark McLoughlin
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2005-06-24 15:18 UTC by Jeff Buhrt
Modified: 2007-11-30 22:11 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-06-29 07:32:32 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
test-recent-file-locking.c (1.00 KB, text/plain)
2005-06-28 12:38 UTC, Mark McLoughlin
no flags Details
stack trace from gnome panel (w/o any icons/menus) (14.21 KB, text/plain)
2005-06-28 18:22 UTC, Jeff Buhrt
no flags Details
strace of gnome panel (118.94 KB, text/plain)
2005-06-28 18:24 UTC, Jeff Buhrt
no flags Details
The 'real' problem: lockf(...F_TLOCK, 0) is blocking (1.61 KB, text/plain)
2005-06-28 18:41 UTC, Jeff Buhrt
no flags Details

Description Jeff Buhrt 2005-06-24 15:18:59 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.8) Gecko/20050511

Description of problem:
When using an NFS mounted home directory, no panel icons, menus, etc. will be displayed. Having the same files locally works fine. This used to work fine from FC1 to FC3.

If .recently-used is made as a sym-link to a file on the local disk, everything works fine. 

Version-Release number of selected component (if applicable):
gnome-panel-2.10.1-10

How reproducible:
Always

Steps to Reproduce:
1. Create a dummy user with a home not on NFS, login, note panel icons/menus are fine.
2. NFS mount /home, create an empty directory owned by the dummy user, again login as the dummy user, note the panels are empty
3. Move ~dummy/.recently-used to /tmp, then: ln -s /tmp/.recently-used ~dummy
4. log back in and note the panel icons/menus/etc. are fine again
  

Actual Results:  Panel icons/menus/etc work fine when .recently-used is in a local filesystem, but not when on NFS. At first I thought it was the .gconf/.gconfd NFS lock problem, but those directories are fine both as local and NFS mounted.

Expected Results:  A new user shouldn't have to move a file local just to use a NFS mount home directory.

Additional info:

Comment 1 Mark McLoughlin 2005-06-27 16:34:20 UTC
It could well be an NFS lock issue (but nothing to do with gconf). Could you
make sure NFS lockd is running on the server?

Comment 2 Jeff Buhrt 2005-06-27 17:10:36 UTC
lockd is running. I also verified by manually running:
/etc/rc.d/rc5.d/S14nfslock restart

Comment 3 Mark McLoughlin 2005-06-28 12:37:19 UTC
Okay, need the following:

  1) Get a backtrace of the panel when its showing no icons:

     $> gdb gnome-panel $(pid-of-panel)
     (gdb) thread apply all bt full

  2) Get an strace of the panel:

     $> gnome-session-remove gnome-panel
     $> GNOME_PANEL_DEBUG=1 strace gnome-panel >t.log 2>&1

  3) Compile the program I'm going to attach. If it runs successfully, then
     locking ~/.recently-used is working fine. Otherwise its an NFS locking
     configuration issue of some sort on your side

Comment 4 Mark McLoughlin 2005-06-28 12:38:31 UTC
Created attachment 116058 [details]
test-recent-file-locking.c

Comment 5 Jeff Buhrt 2005-06-28 18:22:54 UTC
Created attachment 116075 [details]
stack trace from gnome panel (w/o any icons/menus)

Comment 6 Jeff Buhrt 2005-06-28 18:24:50 UTC
Created attachment 116076 [details]
strace of gnome panel

Comment 7 Jeff Buhrt 2005-06-28 18:41:24 UTC
Created attachment 116077 [details]
The 'real' problem: lockf(...F_TLOCK, 0) is blocking

The problem isn't that it isn't locking ;), it is that lockf() with F_TLOCK is
blocking (which the man page says shouldn't block). I changed
test-recent-file-locking.c to open just a local file "dummy". Running on a NFS
drive lockf() hangs, on a local disk it runs fine.

A developer here noted he updated this Fedora Core3 box this morning and had
the same problem. Moving and symlinking .recently-used fixed the problem.

Comment 8 Mark McLoughlin 2005-06-29 07:32:32 UTC
lockf(F_TLOCK) will only not block in the case where another program is holding
the lock.

Its obviously blocking here because it can't contact lockd on the server or
something along those lines. Its a configuration issue rather than a panel bug.
Somewhere like fedora-list would be a good place to get help with the problem.


Note You need to log in before you can comment on or make changes to this bug.