From: Duy Nguyen Date: Sun, 10 Feb 2013 11:22:05 GMT Subject: Re: inotify to minimize stat() calls Message-ID: <20130210112205.GA28434@lanh> In-Reply-To: <20130210111732.GA24377@lanh> On Sun, Feb 10, 2013 at 06:17:32PM +0700, Duy Nguyen wrote: > The following patch eliminates untracked search code. As we can see, > open+getdents also disappears with this patch: > > 0.462909 40950 lstat 0.462909 40950 lstat > 0.003417 129 brk 0.003417 129 brk > 0.000762 53 read 0.000762 53 read > 0.000720 36 open 0.000720 36 open > 0.000544 12 munmap 0.000454 33 close .. and the patch is missing: -- 8< -- diff --git a/dir.c b/dir.c index 57394e4..1963c6f 100644 --- a/dir.c +++ b/dir.c @@ -1439,8 +1439,10 @@ int read_directory(struct dir_struct *dir, const char *path, int len, const char return dir->nr; simplify = create_simplify(pathspec); +#if 0 if (!len || treat_leading_path(dir, path, len, simplify)) read_directory_recursive(dir, path, len, 0, simplify); +#endif free_simplify(simplify); qsort(dir->entries, dir->nr, sizeof(struct dir_entry *), cmp_name); qsort(dir->ignored, dir->ignored_nr, sizeof(struct dir_entry *), cmp_name); -- 8< --