diff -ruN linux/fs/ext2/super.c linux2/fs/ext2/super.c --- linux/fs/ext2/super.c Tue Mar 12 19:59:57 2002 +++ linux2/fs/ext2/super.c Tue Mar 12 20:03:16 2002 @@ -469,6 +469,7 @@ if (!sbi) return -ENOMEM; sb->u.generic_sbp = sbi; + memset(sbi, 0, sizeof(struct ext2_super_block)); /* * See what the current blocksize for the device is, and diff -ruN linux/fs/ncpfs/inode.c linux2/fs/ncpfs/inode.c --- linux/fs/ncpfs/inode.c Tue Mar 12 19:59:51 2002 +++ linux2/fs/ncpfs/inode.c Tue Mar 12 20:04:09 2002 @@ -319,6 +319,8 @@ if (!server) return -ENOMEM; sb->u.generic_sbp = server; + memset(server, 0, sizeof(struct ncp_server)); + error = -EFAULT; if (raw_data == NULL) goto out;