delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/02/18/08:30:17

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <4215ED73.9030907@byu.net>
Date: Fri, 18 Feb 2005 06:28:19 -0700
From: Eric Blake <ebb9 AT byu DOT net>
User-Agent: Mozilla Thunderbird 1.0 (Windows/20041206)
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: Bug in 'find' 4.2.11-CVS when traversing NTFS mount points
References: <20050217095204 DOT 10858 DOT qmail AT web54010 DOT mail DOT yahoo DOT com> <20050218085852 DOT GA21141 AT cygbert DOT vinschen DOT de>
In-Reply-To: <20050218085852.GA21141@cygbert.vinschen.de>
X-IsSubscribed: yes

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

According to Corinna Vinschen on 2/18/2005 1:58 AM:
> 
> The reason for your problem is that Cygwin doesn't check for volume mount
> points.  FWICT, there's a very simple solution for that, calling a specific
> Windows function (GetVolumePathName) from inside Cygwin.
> 
> But I'm sure you don't want that.  Using this function inside of Cygwin
> slows down Cygwin incredibly, because that function is staggeringly slow.
> I called find in medium sized directory trees and find needed about 10
> times longer to traverse the directory tree than without this function.
> 
> Sorry, but there's currently no good solution for that.

Both find and coreutils df use the gnulib module mountlist.c to build an
internal cache of all mount points up front, rather than constantly
querying if a particular directory is a mount point.  Is it not possible
for cygwin's implementation of getmntent() to also return
junctions/reparse points as mount table entries, to give an accurate
picture of all mount points to tools that need it?  Mount points don't
usually change during operation, so cygwin could take the same approach of
caching all Windows mount points up front at the same time it caches
cygwin mount points; isn't it possible for such caching to be done once as
cygwin1.dll initializes and shared, rather than once per process that uses
cygwin1.dll?

Yes, I know, PTC.

- --
Life is short - so eat dessert first!

Eric Blake             ebb9 AT byu DOT net
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD4DBQFCFe1z84KuGfSFAYARAsFXAJiPSk/TjReT/ykBnS3cs7f1lhI2AKC5iTke
nS2WjvgVucZ9qMIXUF9+kg==
=NJSl
-----END PGP SIGNATURE-----

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019