--- linux-2.4.22/fs/jfs/jfs_logmgr.c.jfs-sec 2004-03-23 12:30:35.000000000 -0700 +++ linux-2.4.22/fs/jfs/jfs_logmgr.c 2004-03-23 13:01:51.000000000 -0700 @@ -1693,7 +1693,7 @@ if (lbuf == 0) goto error; lbuf->l_bh.b_data = lbuf->l_ldata = - (char *) __get_free_page(GFP_KERNEL); + (char *) get_zeroed_page(GFP_KERNEL); if (lbuf->l_ldata == 0) { kfree(lbuf); goto error; --- linux-2.4.22/fs/jfs/jfs_metapage.c.jfs-sec 2004-03-23 12:30:48.000000000 -0700 +++ linux-2.4.22/fs/jfs/jfs_metapage.c 2004-03-23 13:01:51.000000000 -0700 @@ -375,6 +375,10 @@ } mp->data = kmap(mp->page) + page_offset; } + + if (new) + memset(mp->data, 0, PSIZE); + jfs_info("__get_metapage: returning = 0x%p", mp); return mp; --- linux-2.4.22/fs/jfs/super.c.jfs-sec 2004-03-23 12:31:10.000000000 -0700 +++ linux-2.4.22/fs/jfs/super.c 2004-03-23 13:01:51.000000000 -0700 @@ -423,10 +423,10 @@ if ((flags & (SLAB_CTOR_VERIFY | SLAB_CTOR_CONSTRUCTOR)) == SLAB_CTOR_CONSTRUCTOR) { + memset(jfs_ip, 0, sizeof(struct jfs_inode_info)); INIT_LIST_HEAD(&jfs_ip->anon_inode_list); init_rwsem(&jfs_ip->rdwrlock); init_MUTEX(&jfs_ip->commit_sem); - jfs_ip->atlhead = 0; jfs_ip->active_ag = -1; } }