Hi, On Thu, 2005-01-20 at 18:22, Andreas Gruenbacher wrote:
> When a new inode is created, ext3_new_inode sets the EXT3_STATE_NEW > flag, which tells ext3_do_update_inode to zero out the inode before > filling in the inode's data. When a file is created in a directory with > a default acl, the new inode inherits the directory's default acl; this > generates attributes. The attributes are created before > ext3_do_update_inode is called to write out the inode. In case of > in-inode attributes, the new inode's attributes are written, and then > zeroed out again by ext3_do_update_inode. Bad thing. > > Fix this by recognizing the EXT3_STATE_NEW case in > ext3_xattr_set_handle, and zeroing out the inode there already when > necessary. Ugh. It feels horrible to have to do this, but we _do_ want to clear the raw inode, and we only want to do it once, and we have to do it on first access to the on-disk structures. I can't see an easy way round it that doesn't add more overhead. Looks reasonable to me. --Stephen - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/