Re: [PATCH 3/3] Avoid doing extra 'lstat()'s for d_type if we have?an up-to-date cache entry

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jul 09, 2009 at 09:52:24PM +0000, Eric Blake wrote:
> Dmitry Potapov <dpotapov <at> gmail.com> writes:
> 
> > With this patch, I see one 'stat' less for each directory, which on my
> > repo resulted in about 10.7% less 'stat' or 4.8% less of the total
> > number of syscalls. The total run time decreased by 4.6%.
> > 
> > Still, there are many stats for directories -- for each directory I see
> > 2 + number of subdirectories it has, but I am not sure about its cause.
> 
> That would probably be the fact that in cygwin 1.5, a stat() of a directory
> results in querying all the contents of the directory so as to correctly
> populate the st_link member based on the number of subdirectories.

We do not use lstat or fstat provided by Cygwin. Instead of it, we use
their fast and dirty analogues, which you can find in compat/cygwin.c
(they do not provide all information that normal functions provide, but
this information is sufficient for Git.

But we still use readdir() from Cygwin and that may be source of extra
syscalls that I observe...

Dmitry
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]