Message ID | 20241205104835.18223-2-heming.zhao@suse.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Revert ocfs2 commit dfe6c5692fb5 and provide a new fix | expand |
On 12/5/24 6:48 PM, Heming Zhao wrote: > This reverts commit dfe6c5692fb5 ("ocfs2: fix the la space leak when > unmounting an ocfs2 volume"). > > In commit dfe6c5692fb5, the commit log "This bug has existed since the > initial OCFS2 code." is wrong. The correct introduction commit is > 30dd3478c3cd ("ocfs2: correctly use ocfs2_find_next_zero_bit()"). > > The influence of commit dfe6c5692fb5 is that it provides a correct > fix for the latest kernel. however, it shouldn't be pushed to stable > branches. Let's use this commit to revert all branches that include > dfe6c5692fb5 and use a new fix method to fix commit 30dd3478c3cd. > > Fixes: dfe6c5692fb5 ("ocfs2: fix the la space leak when unmounting an ocfs2 volume") > Signed-off-by: Heming Zhao <heming.zhao@suse.com> Reviewed-by: Joseph Qi <joseph.qi@linux.alibaba.com> > Cc: <stable@vger.kernel.org> > --- > fs/ocfs2/localalloc.c | 19 ------------------- > 1 file changed, 19 deletions(-) > > diff --git a/fs/ocfs2/localalloc.c b/fs/ocfs2/localalloc.c > index 8ac42ea81a17..5df34561c551 100644 > --- a/fs/ocfs2/localalloc.c > +++ b/fs/ocfs2/localalloc.c > @@ -1002,25 +1002,6 @@ static int ocfs2_sync_local_to_main(struct ocfs2_super *osb, > start = bit_off + 1; > } > > - /* clear the contiguous bits until the end boundary */ > - if (count) { > - blkno = la_start_blk + > - ocfs2_clusters_to_blocks(osb->sb, > - start - count); > - > - trace_ocfs2_sync_local_to_main_free( > - count, start - count, > - (unsigned long long)la_start_blk, > - (unsigned long long)blkno); > - > - status = ocfs2_release_clusters(handle, > - main_bm_inode, > - main_bm_bh, blkno, > - count); > - if (status < 0) > - mlog_errno(status); > - } > - > bail: > if (status) > mlog_errno(status);
diff --git a/fs/ocfs2/localalloc.c b/fs/ocfs2/localalloc.c index 8ac42ea81a17..5df34561c551 100644 --- a/fs/ocfs2/localalloc.c +++ b/fs/ocfs2/localalloc.c @@ -1002,25 +1002,6 @@ static int ocfs2_sync_local_to_main(struct ocfs2_super *osb, start = bit_off + 1; } - /* clear the contiguous bits until the end boundary */ - if (count) { - blkno = la_start_blk + - ocfs2_clusters_to_blocks(osb->sb, - start - count); - - trace_ocfs2_sync_local_to_main_free( - count, start - count, - (unsigned long long)la_start_blk, - (unsigned long long)blkno); - - status = ocfs2_release_clusters(handle, - main_bm_inode, - main_bm_bh, blkno, - count); - if (status < 0) - mlog_errno(status); - } - bail: if (status) mlog_errno(status);
This reverts commit dfe6c5692fb5 ("ocfs2: fix the la space leak when unmounting an ocfs2 volume"). In commit dfe6c5692fb5, the commit log "This bug has existed since the initial OCFS2 code." is wrong. The correct introduction commit is 30dd3478c3cd ("ocfs2: correctly use ocfs2_find_next_zero_bit()"). The influence of commit dfe6c5692fb5 is that it provides a correct fix for the latest kernel. however, it shouldn't be pushed to stable branches. Let's use this commit to revert all branches that include dfe6c5692fb5 and use a new fix method to fix commit 30dd3478c3cd. Fixes: dfe6c5692fb5 ("ocfs2: fix the la space leak when unmounting an ocfs2 volume") Signed-off-by: Heming Zhao <heming.zhao@suse.com> Cc: <stable@vger.kernel.org> --- fs/ocfs2/localalloc.c | 19 ------------------- 1 file changed, 19 deletions(-)