Re: FAT bug in 2.2.10-ac8(was slocate never finishes in ..)

Alexander Viro (viro@math.psu.edu)
Mon, 5 Jul 1999 23:38:21 -0400 (EDT)


On Mon, 5 Jul 1999, Alan Cox wrote:

> > I switch to 2.2.10-ac8 (RH 6.0) last night and saw that the slocate
> > cron run every night was still active, consuming 100% CPU.
> >
> > I straced it : it repeatadly run through the following two loops :
> >
> > /* 29 entries */, 15729) = 620
> > lseek(4, 0, SEEK_SET) = 0
> > lseek(4, 0, SEEK_CUR) = 0
> > getdents(4, 0 632
> > 12 632
> > 28 632
> > 52 632

Could you give a listing of the directory where it happens (with the old
kernel, that is)? Does ls -l break on it? ls -f? It would help a lot...

> Interesting. 2.2.10ac8 has Al Viro's updates for FAT/VFAT including the
> directory pointer caching, so that it should break here is very believable
>
> If I get time I'll revert you just the directory pointer caching for the next
> 2.2.10ac

Alan, that could be tested easier: -ac6. What bothers me is that the same
behaviour was reported on 2.3.x (only *now*, damnit!). Besides, getdents()
shouldn't care at all - all recent changes are in lookup() path.

Sigh... Folks, if something breaks - *report* it. If it was broken in
2.3.x and somebody knew it...
Al

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/