Mount improvements finished

Geoffrey Noer noer@cygnus.com
Mon Feb 1 01:39:00 GMT 1999


On Sat, Jan 30, 1999, DJ Delorie wrote:
> 
> > /cygdrive/d $ mount
> > Device              Directory           Type         Flags
> > d:                  /cygdrive/d         user,auto    textmode
> > D:\binary           /binary             user         binmode
> > C:                  /                   user         binmode
> 
> Geoff - is this list sorted in the same order we scan them?  

Yes it is.  (Mount.exe just does repeated getmntents until there
aren't any mount points left to print; that reflects the order of the
internal list of mounts).

> If so, we
> need to store it sorted both by posix path and separately by win32
> path.  When we convert from a win32 path to a posix path, we need to
> search the *win32* paths longest first.  Simply reusing the list
> sorted by posix path lengths isn't going to work.

Keep in mind that I haven't actually changed the way the mount table is
sorted from the old way of handling mounts (except a change to make
user mounts take priority over system mounts when sorting).  Of course
we can change it if we want to; I need to think about this some more...

> I also suggest that mount.exe print the paths sorted by posix paths
> (alphabetical, not by length, case insensitive), so that "/" is first.

Why?  I think it's useful to see them in the order of evaluation.

> > So I propose specifically setting the priority of automounts lower
> > than normal one like the following patch.
> 
> While this would avoid the problem it's not the right solution, since
> it doesn't fix the problem as it is, which I think is caused by the
> way we sort and scan the internal tables (it's an optimization).

I'm not so sure.  I tend to think that it would be a good thing if
paths converted to posix would choose a non-automount mount point
before automounts.

-- 
Geoffrey Noer
noer@cygnus.com


More information about the Cygwin-developers mailing list