[reiserfs-list] Re: [OpenAFS-devel] more on the 2.2.18pre17 SMPcpu hog/etc.
Jeffrey Hutzelman
jhutz@cmu.edu
Mon, 4 Dec 2000 19:34:42 -0500 (EST)
On Tue, 5 Dec 2000, Andi Kleen wrote:
> On Mon, Dec 04, 2000 at 07:00:54PM -0500, Jeffrey Hutzelman wrote:
> > > Actually with the efficient dcache in 2.2+ I suspect that method could
> > > be used unconditionally on Linux for all file systems without much if
> > > any slowdown. As long as the dentries stay cached there is no directory
> > > walking overhead even on filesystem with not-so-well scaling directories
> > > like ext2.
> >
> > But I don't think you want to keep 32K+ dentries all the time, or assume
> > that they will stay in the cache.
>
> I was not aware that it needs that many files.
>
> Ok, then normal iget() for ext2 and file names for reiserfs and XFS or people
> who want to use multiple file systems for their cache (if you can spare a few
> bits in the pseudo inode to index into a path name table). The user could
> switch it with an option.
>
>
> > > copied inode structure looks very fragile and has e.g. caused problems
> > > with the suse kernel (which has two fields more than a normal linux 2.2
> > > inode)
> >
> > It's not as fragile as you might think. The inode structure doesn't
> > change all that frequently, and using symbol versions catches it when
> > it does change. Unfortunately, far too many people use AFS modules
> > without symbol versions. I'm hoping that will begin to change.
>
> I know that it breaks here.
Because you try to load a module that is not compatible with your kernel.
If the modules used symbol versions (I assume your kernels already do),
then you'd notice right away.
-- Jeffrey T. Hutzelman (N3NHS) <jhutz+@cmu.edu>
Sr. Research Systems Programmer
School of Computer Science - Research Computing Facility
Carnegie Mellon University - Pittsburgh, PA