[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091108191227.GB1647@mit.edu>
Date: Sun, 8 Nov 2009 14:12:27 -0500
From: Theodore Tso <tytso@....edu>
To: bugzilla-daemon@...zilla.kernel.org
Cc: linux-ext4@...r.kernel.org
Subject: Re: [Bug 14354] Bad corruption with 2.6.32-rc1 and upwards
On Fri, Nov 06, 2009 at 10:07:15PM +0000, bugzilla-daemon@...zilla.kernel.org wrote:
> For ext4, one thing I would suggest is to simply always put the NUL at the
> end of the name, even if the filesystem might not need it. Then
> nd_terminate_link() will still write the NUL, but it won't change any data
> (and thus no CRC's).
It's pretty simple to do this; in fact it's a one-line change in
ext4_symlink() in fs/ext4/inode.c:
/* clear the extent format for fast symlink */
EXT4_I(inode)->i_flags &= ~EXT4_EXTENTS_FL;
inode->i_op = &ext4_fast_symlink_inode_operations;
- memcpy((char *)&EXT4_I(inode)->i_data, symname, l);
+ strcpy((char *)&EXT4_I(inode)->i_data, symname);
inode->i_size = l-1;
- Ted
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists