xfs: fix freeing of inodes not yet added to the inode cache
upstream commit b36ec042 When freeing an inode that lost race getting added to the inode cache we must not call into ->destroy_inode, because that would delete the inode that won the race from the inode cache radix tree. This patch uses splits a new xfs_inode_free helper out of xfs_ireclaim and uses that plus __destroy_inode to make sure we really only free the memory allocted for the inode that lost the race, and not mess with the inode cache state. Signed-off-by:Christoph Hellwig <hch@lst.de> Reviewed-by:
Eric Sandeen <sandeen@sandeen.net> Reported-by:
Alex Samad <alex@samad.com.au> Reported-by:
Andrew Randrianasulu <randrik@mail.ru> Reported-by:
Stephane <sharnois@max-t.com> Reported-by:
Tommy <tommy@news-service.com> Reported-by:
Miah Gregory <mace@darksilence.net> Reported-by:
Gabriel Barazer <gabriel@oxeva.fr> Reported-by:
Leandro Lucarella <llucax@gmail.com> Reported-by:
Daniel Burr <dburr@fami.com.au> Reported-by:
Nickolay <newmail@spaces.ru> Reported-by:
Michael Guntsche <mike@it-loops.com> Reported-by:
Dan Carley <dan.carley+linuxkern-bugs@gmail.com> Reported-by:
Michael Ole Olsen <gnu@gmx.net> Reported-by:
Michael Weissenbacher <mw@dermichi.com> Reported-by:
Martin Spott <Martin.Spott@mgras.net> Reported-by:
Christian Kujau <lists@nerdbynature.de> Tested-by:
Michael Guntsche <mike@it-loops.com> Tested-by:
Dan Carley <dan.carley+linuxkern-bugs@gmail.com> Tested-by:
Christian Kujau <lists@nerdbynature.de> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
Showing
+68 -74
Please register or sign in to comment