(Illustration by Gaich Muramatsu)
Linus, Two tiny tiny fixes for Coda. I didn't know O_RDONLY == 0 (is that weird or not?) and coded wrongly and I dereferenced a NULL pointer. Peter --- linux/fs/coda/cache.c Wed May 6 18:34:24 1998 +++ linux-2.1.100b2.orig/fs/coda/cache.c Tue May 5 17:56:05 1998 @@ -267,7 +267,8 @@ while ( alias != &inode->i_dentry ) { alias_de = list_entry(alias, struct dentry, d_alias); if ( !alias_de ) { - printk("Null alias list for inode %ld\n", inode->i_ino); + printk("Corrupt alias list for %*s\n", + alias_de->d_name.len, alias_de->d_name.name); return; } coda_flag_children(alias_de, flag); --- linux/fs/coda/coda_linux.c Wed May 6 18:34:29 1998 +++ linux-2.1.100b2.orig/fs/coda/coda_linux.c Tue May 5 17:56:05 1998 @@ -94,10 +94,7 @@ { unsigned short coda_flags = 0; - if ( (flags & 0xf) == O_RDONLY ) - coda_flags |= C_O_READ; - - if ( flags & O_RDWR ) + if ( flags & (O_RDONLY | O_RDWR) ) coda_flags |= C_O_READ; if ( flags & (O_WRONLY | O_RDWR) )Received on 1998-05-06 20:42:47