Re: On the subject of the VFS layer (was Re: VFS questions)

Theodore Y. Ts'o (tytso@MIT.EDU)
Sat, 3 May 1997 09:42:58 -0400


Date: Sat, 3 May 1997 19:38:32 +1200 (NZST)
From: "J. Sean Connell" <ankh@canuck.gen.nz>

I took a look at the kernel sources (both ext2fs and eventually the VFS
layer), and I was amazed by what I (didn't) find: the low-level disk
manipulation functions (e.g., the ext2fs routine for reading an inode off
the disk), while they themselves check for errors returned by, e.g.,
bread(), have no way to actually *report* this information to higher
layers. And of course, if the bread() fails, the inode retrieval has
failed... but there's no way to tell the caller this fact. At least, not
that I could find.

Uh, yeah. Known problem. Both Stephen and I know about it, but as you
said, it requires changing the VFS layer, and then fixing all of the
filesystem code, and we've been both too busy. The ext2 error already
does the checking... there's just no way to report it up to the VFS
layer. If someone wants to take fixing this up as a project, you're
right it's long overdue.

Sean, you apparently know enough kernel programming to have at least
figured this out; you want to try give a hand at fixing it? Or Ingo,
you had independently figured this out as well, and having seen the
other kernel patches you've done, I'm sure you'd be able to do it....
Anybody else interested?

(Delegation is a wonderful thing, especially when you're too hosed and
too busy. :-)

- Ted