This is the mail archive of the
mailing list for the Cygwin project.
Re: find in root (/) results in stack trace
On Feb 2 09:56, Corinna Vinschen wrote:
> On Feb 1 16:54, Heiko Elger wrote:
> > Corinna Vinschen writes:
> > >
> > > This looks like a problem when recursing over the /proc/registry and
> > > it doesn't look like a 64 bit problem. I'll have a look.
> > >
> > I saw same problem runing find command i.e. /cygdrive/c/Programme/cygwin (root
> > of my cygwin installation) ad there is no /proc/registry.
> I concentrated on the registry yesterday and I found a memory and a
> handle leak there, which were a result of find using open/fdopendir/
> closedir. This skips the close call and the registry closedir code
> wasn't handling that at all.
> Given that find wastes a lot of memory when scanning ordinary disks,
> too, there's apparently still another memory leak somewhere. I'm going
> to have another look today.
I've created a new snapshot 2012-02-02. Can you please test it? AFAICS
I got rid of the memory leak. A recent change broke the fdopendir
handling entirely, apparently. I tested it with a full `find /' scan and
I didn't have any problem...
...except that find ran into an infinite loop in /proc/registry. It
turned out that this is a result of registry virtualization under UAC.
I fixed that by treating the affected registry keys(*) as symlink,
rather than as directory.
(*) every key ending in "VirtualStore/MACHINE/SOFTWARE/Classes".
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple