find in root (/) results in stack trace

Corinna Vinschen corinna-cygwin@cygwin.com
Thu Feb 2 15:37:00 GMT 2012


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.
> 
> Indeed.
> 
> 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.


Corinna


(*) 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
Red Hat

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



More information about the Cygwin mailing list