Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'gfs2-v5.12-rc2-fixes2' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2

Pull gfs2 fixes from Andreas Gruenbacher:
"Two more gfs2 fixes"

* tag 'gfs2-v5.12-rc2-fixes2' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
gfs2: report "already frozen/thawed" errors
gfs2: Flag a withdraw if init_threads() fails

+9 -5
+9 -5
fs/gfs2/super.c
··· 162 162 int error; 163 163 164 164 error = init_threads(sdp); 165 - if (error) 165 + if (error) { 166 + gfs2_withdraw_delayed(sdp); 166 167 return error; 168 + } 167 169 168 170 j_gl->gl_ops->go_inval(j_gl, DIO_METADATA); 169 171 if (gfs2_withdrawn(sdp)) { ··· 752 750 static int gfs2_freeze(struct super_block *sb) 753 751 { 754 752 struct gfs2_sbd *sdp = sb->s_fs_info; 755 - int error = 0; 753 + int error; 756 754 757 755 mutex_lock(&sdp->sd_freeze_mutex); 758 - if (atomic_read(&sdp->sd_freeze_state) != SFS_UNFROZEN) 756 + if (atomic_read(&sdp->sd_freeze_state) != SFS_UNFROZEN) { 757 + error = -EBUSY; 759 758 goto out; 759 + } 760 760 761 761 for (;;) { 762 762 if (gfs2_withdrawn(sdp)) { ··· 799 795 struct gfs2_sbd *sdp = sb->s_fs_info; 800 796 801 797 mutex_lock(&sdp->sd_freeze_mutex); 802 - if (atomic_read(&sdp->sd_freeze_state) != SFS_FROZEN || 798 + if (atomic_read(&sdp->sd_freeze_state) != SFS_FROZEN || 803 799 !gfs2_holder_initialized(&sdp->sd_freeze_gh)) { 804 800 mutex_unlock(&sdp->sd_freeze_mutex); 805 - return 0; 801 + return -EINVAL; 806 802 } 807 803 808 804 gfs2_freeze_unlock(&sdp->sd_freeze_gh);