Red Hat Bugzilla – Bug 132976
Removable storage with multiple partitions cause only one partition to show up in gnome-vfs
Last modified: 2007-11-30 17:10:49 EST
The Linksys Network Storage Link formats USB hard drives with three
sda1 - the data
sda2 - some config files and admin cruft
sda3 - swap
For some reason when plugging this in, partition 2 was mounted.
If randomly selecting a partition, then "1" seems like a logical
default. But maybe a better solution is to mount all partitions.
Anyway, choosing partition 2 was sort of surprising.
It should have mounted all three. Can you bring in the drive for me
This turns out to be a gamin bug. While the partitions are mounted in
mtab by g-v-m gamin fails to notify gnome-vfs or gnome-vfs fails to
recive notification of every mount so they don't show up on the
desktop or in computer. Reassigning to gamin.
gamin won't tell you that something is mounted.
It can *only* tell you if a dirctory content changed
I don't see the relationship between
"partition is mounted"
"gamin should tell something"
if the partition is to be mounted then the directory it is monted on
must exist. And if you watch the directory you open() it. the opened()
directory does not change if you mount something under that directory.
I'm not sure you can resonably expect gamin to tell you that
something got (un)mounted even if the directory is watched.
We use gamin to check if /etc/mtab has changed.
We are not discussing whether something is mounted or not, we're
discussing when the /etc/mtab file is changed (that mount(1) updates,
hence the talk about mounting/unmounting).
I think the problem here is that /etc/mtab gets updated twice in a
short timescale and gnome-vfs is only notified of the first occurence
- this didn't happen with fam. This can either be a bug in gnome-vfs
(perhaps it excepts only one update per fam notification?) or this is
a bug in gamin.
It's terribly difficult to reproduce this because of the very nature
of the problem etc., but I think I now have a setup here in Westford
to reproduce this.
You get two kernel dnotify even very close to each other.
Dnotify can only check what changed in the directory. Then it's
a problem of:
- checking file sizes
- checking file timestamps (one second increment only are stored
and reporting event on detected modifications. Maybe gamin doesn't
do an optimal job there at extracting modifications informations.
*** Bug 135337 has been marked as a duplicate of this bug. ***
This turned out to be a gnome-vfs bug where we were only checking the
mtime. I added a check for file size also. Reassigning to Alex.
Patch to be included below.
Reassinging to alex for real this time :-)
Created attachment 105227 [details]
Check the size of mtab and fstab along with the modification time to determine if the file has changed
Alex can you check this patch to see if I got all the code paths? There was
one place I didn't update because the code that checks the mtime doesn't seem
to ever be executed.
That looks good. Commited upstream. I also fixed the AIX case that
didn't check mtime correctly. The fix is now building in rawhide as
Doesn't work for me with gnome-vfs-2.8.3
I got the same problem as in Bug 135337 (with gamin)