summaryrefslogtreecommitdiff
path: root/scripts/lib/kdoc/kdoc_files.py
diff options
context:
space:
mode:
authorAndreas Gruenbacher <agruenba@redhat.com>2025-04-18 16:41:52 +0200
committerAndreas Gruenbacher <agruenba@redhat.com>2025-04-24 23:10:05 +0200
commit2c63986dd35fa9eb0d7d1530b5eb2244b7296e22 (patch)
treee9e2cc848b61cc559d6a1c56e9906650c5d85e93 /scripts/lib/kdoc/kdoc_files.py
parent0cc617a54dfe6b44624c9a03e2e11a24eb9bc720 (diff)
gfs2: deallocate inodes in gfs2_create_inode
When creating and destroying inodes, we are relying on the inode hash table to make sure that for a given inode number, only a single inode will exist. We then link that inode to its inode and iopen glock and let those glocks point back at the inode. However, when iget_failed() is called, the inode is removed from the inode hash table before gfs_evict_inode() is called, and uniqueness is no longer guaranteed. Commit f1046a472b70 ("gfs2: gl_object races fix") was trying to work around that problem by detaching the inode glock from the inode before calling iget_failed(), but that broke the inode deallocation code in gfs_evict_inode(). To fix that, deallocate partially created inodes in gfs2_create_inode() instead of relying on gfs_evict_inode() for doing that. This means that gfs2_evict_inode() and its helper functions will no longer see partially created inodes, and so some simplifications are possible there. Fixes: 9ffa18884cce ("gfs2: gl_object races fix") Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Diffstat (limited to 'scripts/lib/kdoc/kdoc_files.py')
0 files changed, 0 insertions, 0 deletions