Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP1:Update
ocfs2-tools.33578
fsck.ocfs2-do-not-try-locking-after-replaying-j...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File fsck.ocfs2-do-not-try-locking-after-replaying-journa.patch of Package ocfs2-tools.33578
From 7085e9177adc7197250d872c50a05dfc9c531bdc Mon Sep 17 00:00:00 2001 From: Konstantin N <b.m.kast@gmail.com> Date: Thu, 3 Mar 2022 00:56:44 +0300 Subject: [PATCH] fsck.ocfs2: do not try locking after replaying journals if -F is given With -F option, `fsck.ocfs2` skips locking down the cluster, but not if the journals are replayed. If it has to replay the journals then it tries to lock down the cluster regardless of -F. This fix moves the check to `fsck_lock_fs()` function so the flag is checked in any case when cluster locking is attempted. Signed-off-by: Konstantin Neshin <b.m.kast@gmail.com> --- fsck.ocfs2/fsck.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/fsck.ocfs2/fsck.c b/fsck.ocfs2/fsck.c index 757224f43846..13d68f9862f9 100644 --- a/fsck.ocfs2/fsck.c +++ b/fsck.ocfs2/fsck.c @@ -707,6 +707,10 @@ static errcode_t fsck_lock_fs(o2fsck_state *ost) { errcode_t ret; + if (!(ost->ost_fs->fs_flags & OCFS2_FLAG_RW) || ost->ost_skip_o2cb || + ocfs2_mount_local(ost->ost_fs)) + return 0; + ret = o2cb_init(); if (ret) { com_err(whoami, ret, "while initializing the cluster"); @@ -986,13 +990,10 @@ int main(int argc, char **argv) goto out; } - if (open_flags & OCFS2_FLAG_RW && !ost->ost_skip_o2cb && - !ocfs2_mount_local(ost->ost_fs)) { - ret = fsck_lock_fs(ost); - if (ret) { - fsck_mask |= FSCK_ERROR; - goto close; - } + ret = fsck_lock_fs(ost); + if (ret) { + fsck_mask |= FSCK_ERROR; + goto close; } printf("Checking OCFS2 filesystem in %s:\n", filename); -- 2.34.1
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor