Messages in this thread | | | Date | Mon, 24 Dec 2001 16:59:51 -0500 (EST) | From | Alexander Viro <> | Subject | Re: [CFT] BeFS filesystem 0.6 |
| |
On Mon, 24 Dec 2001, Will Dyson wrote:
> Hi, > > For some months now, I have been working on a read-only implementation > of the BeOS's native filesystem (BeFS). I just released version 0.6, and > I think it works pretty darn well. <http://befs-driver.sourceforge.net/> > > I've had some reports of it working well on other peoples' machines as > well. So what I'd really like now is for more people to try and break > it. If you have a Be filesystem partition, please try it out. If you > don't (but still feel like testing anyway), the download page has a > filesystem image you can try it out on. > > I'd also appreciate anyone who wants to critique the code itself. Thanks!
Umm... Obvious comments:
a) typedef struct super_block vfs_sb; Please don't.
b) in inode.c: inode->i_mode = (umode_t) raw_inode->mode; is wrong. It's guaranteed bug either on big- or little-endian boxen. Same for mtime, uid and gid. befs_count_blocks() also needs cleanup.
c) befs_read_block()... Erm. Why bother with extra layer of abstraction?
d) befs_readdir(). You _are_ guaranteed that inode is non-NULL, you put pointer to befs_dir_operations only is S_ISDIR is true and S_ISDIR is mutually exclusive with S_ISLNK.
e) are there sparse files on BeFS? If yes - you want to make BH_Mapped conditional in get_block() (set it if block is present, don't if it's a hole in file).
f) befs_arch(). You probably want to make that an option...
g) endianness problems in read_super()...
h) TODO: use line breaks ;-)
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |