On 06/15/2010 10:21 PM, Gui Jianfeng wrote: > Introduce a filter function to skip "." and ".." directories when calculating > tid number. > > Signed-off-by: Gui Jianfeng > --- > tools/perf/util/thread.c | 11 ++++++++++- > 1 files changed, 10 insertions(+), 1 deletions(-) > > diff --git a/tools/perf/util/thread.c b/tools/perf/util/thread.c > index 1f7ecd4..9a448b4 100644 > --- a/tools/perf/util/thread.c > +++ b/tools/perf/util/thread.c > @@ -7,6 +7,15 @@ > #include "util.h" > #include "debug.h" > > +/* Skip "." and ".." directories */ > +static int filter(const struct dirent *dir) > +{ > + if (dir->d_name[0] == '.') > + return 0; > + else > + return 1; > +} > + > Is this safe? Can you _never_ have a d_name with a leading dot, like ' .hidden' ?? Maybe should if(dir->d_name[0] == '.' && (dir->d_name[1] == '\0' || (dir->d_name[1] == '.' && dir->d_name[2] == '\0'))) Admittedly I don't think it happens in the current procfs, but I'd want to be careful regardless.