commit | 705db3fd4660174a27418bbcb874d209a76044eb | [log] [tgz] |
---|---|---|
author | Dave Chinner <david@fromorbit.com> | Mon Apr 06 18:40:17 2009 +0200 |
committer | Christoph Hellwig <hch@brick.lst.de> | Mon Apr 06 18:40:17 2009 +0200 |
tree | 84ec380710246cb3b97cd46ee57b3555d3afd07b | |
parent | a6cb767e24b1dbedfcfa8077eab0aa2eab224038 [diff] |
xfs: fix double free of inode If we fail to initialise the VFS inode in inode_init_always(), it will call ->delete_inode internally resulting in the inode being freed. Hence we need to delay the call to inode_init_always() until after the XFS inode is sufficient set up to handle a call to ->delete_inode, and then if that fails do not touch the inode again at all as it has been freed. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de>