[LU-14953] SIGUSR1 kills multithreaded e2fsck Created: 20/Aug/21  Updated: 17/Dec/21  Resolved: 13/Oct/21

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: John Hammond Assignee: Dongyang Li
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Related
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

Sending SIGUSR1 kills multithreaded e2fsck. The manpage says it handles that and prints progress:

       -C fd  This option causes e2fsck to write completion information  to  the  specified  file
              descriptor  so  that  the  progress of the filesystem check can be monitored.  This
              option is typically used by  programs  which  are  running  e2fsck.   If  the  file
              descriptor  number  is negative, then absolute value of the file descriptor will be
              used, and the progress information will be suppressed initially.  It can  later  be
              enabled  by  sending  the  e2fsck process a SIGUSR1 signal.  If the file descriptor
              specified is 0, e2fsck will print a completion bar as it goes about  its  business.
              This requires that e2fsck is running on a video console or terminal.

This was introduced by:

commit 106eb9ea757772f6f914a3f6e0402de52d76e4ca
Author: Li Xi <lixi@ddn.com>
Date:   Sun Aug 4 23:28:59 2019 +0800

    e2fsck: add -m option for multithread

    -m option is added but no actual functionality is added. This
    patch only adds the logic that when -m is specified, one of
    -p/-y/-n options should be specified. And when -m is specified,
    -C shouldn't be specified and the completion progress report won't
    be triggered by sending SIGUSR1/SIGUSR2 signals. This simplifies
    the implementation of multi-thread fsck in the future.
    
    Completion progress support with multi-thread fsck will be added
    back after multi-thread fsck implementation is finished. Right
    now, disable it to simplify the implementation of multi-thread fsck.
    
    E2fsprogs-commit: 842ae5f528f9797e4b2c739daa76884e4349e8f3
    
    Change-Id: I428f4f3b10974b769100bf00169bdd7d8cf86deb
    Signed-off-by: Li Xi <lixi@ddn.com>
    Signed-off-by: Wang Shilong <wshilong@ddn.com>
    Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
    Signed-off-by: Saranya Muruganandam <saranyamohan@google.com>
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>

It would be good to have multithreading and progress. In any case sending SIGUSR1 shouldn't kill e2fsck.



 Comments   
Comment by John Hammond [ 24/Aug/21 ]

There is a real need to understand the progress of e2fsck during support cases.

Comment by Gerrit Updater [ 30/Aug/21 ]

"Li Dongyang <dongyangli@ddn.com>" uploaded a new patch: https://review.whamcloud.com/44784
Subject: LU-14953 e2fsck: pfsck progress report
Project: tools/e2fsprogs
Branch: master-lustre
Current Patch Set: 1
Commit: ef9360b0bd6454cf218694c297a987628e3c6b77

Comment by Gerrit Updater [ 08/Sep/21 ]

"Andreas Dilger <adilger@whamcloud.com>" merged in patch https://review.whamcloud.com/44784/
Subject: LU-14953 e2fsck: pfsck progress report
Project: tools/e2fsprogs
Branch: master-lustre
Current Patch Set:
Commit: c6c08da97b8474576538bf608e11ed9010326980

Comment by Andreas Dilger [ 17/Dec/21 ]

Will be included in e2fsprogs-1.46.2.wc4

Generated at Sat Feb 10 03:14:11 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.