linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] Add trace events for filesystem freeze/thaw events
@ 2016-03-02 19:01 Frank Sorenson
  2016-03-02 19:01 ` [PATCH 1/5] fs: simplify freeze_super()/thaw_super() exit handling Frank Sorenson
                   ` (6 more replies)
  0 siblings, 7 replies; 14+ messages in thread
From: Frank Sorenson @ 2016-03-02 19:01 UTC (permalink / raw)
  To: linux-fsdevel; +Cc: dwysocha, lvaz

Currently, the only visibility into filesystem freeze or
thaw activity is when an error is returned from the actual
call to freeze or thaw.  If the action itself hangs, there
is no indication that the freeze or thaw was in-progress,
short of collecting a vmcore.

There is also no record of what process froze a filesystem
or when it happened, so if the process does not thaw it
later, debugging the issue is difficult.

These patches add tracepoints to the generic filesystem
freeze and thaw functions.  When enabled, trace events
will create a record of these activities.

Sample trace events:
(freeze /dev/vdd)
        fsfreeze-23072 [003] .... 1018126.904878: freeze_super_enter: comm=fsfreeze pid=23072 for xfs filesystem 'vdd' (253:48) frozen=0
        fsfreeze-23072 [003] .... 1018126.926173: freeze_super_exit: comm=fsfreeze pid=23072 for xfs filesystem 'vdd' (253:48) frozen=4 ret=0
(thaw /dev/vdd)
           <...>-23074 [000] .... 1018134.025833: thaw_super_enter: comm=fsfreeze pid=23074 for xfs filesystem 'vdd' (253:48) frozen=4
           <...>-23074 [000] .... 1018134.025873: thaw_super_exit: comm=fsfreeze pid=23074 for xfs filesystem 'vdd' (253:48) frozen=0 ret=0
(freeze /dev/vdb)
        fsfreeze-23077 [003] .... 1018162.211518: freeze_super_enter: comm=fsfreeze pid=23077 for ext4 filesystem 'vdb' (253:16) frozen=0
        fsfreeze-23077 [003] .... 1018162.228586: freeze_super_exit: comm=fsfreeze pid=23077 for ext4 filesystem 'vdb' (253:16) frozen=4 ret=0
(attempt to freeze already-frozen /dev/vdb)
        fsfreeze-23078 [003] .... 1018169.864362: freeze_super_enter: comm=fsfreeze pid=23078 for ext4 filesystem 'vdb' (253:16) frozen=4
        fsfreeze-23078 [003] .... 1018169.864385: freeze_super_exit: comm=fsfreeze pid=23078 for ext4 filesystem 'vdb' (253:16) frozen=4 ret=-16
(unfreeze /dev/vdb)
        fsfreeze-23079 [003] .... 1018173.074331: thaw_super_enter: comm=fsfreeze pid=23079 for ext4 filesystem 'vdb' (253:16) frozen=4
        fsfreeze-23079 [003] .... 1018173.075928: thaw_super_exit: comm=fsfreeze pid=23079 for ext4 filesystem 'vdb' (253:16) frozen=0 ret=0
(attempt to unfreeze already unfrozen /dev/vdb)
        fsfreeze-23080 [000] .... 1018175.105613: thaw_super_enter: comm=fsfreeze pid=23080 for ext4 filesystem 'vdb' (253:16) frozen=0
        fsfreeze-23080 [000] .... 1018175.105639: thaw_super_exit: comm=fsfreeze pid=23080 for ext4 filesystem 'vdb' (253:16) frozen=0 ret=22


Frank Sorenson (5):
  fs: simplify freeze_super()/thaw_super() exit handling
  fs/block_dev.c: simplify freeze_bdev() and thaw_bdev() exit handling
  fs: add trace events for freeze_super() and thaw_super()
  fs/block_dev.c: add trace events for freeze_bdev() and     
    thaw_bdev()
  fs: enable filesystem freeze/thaw events

 fs/block_dev.c                 |  30 +++++---
 fs/super.c                     |  54 ++++++++------
 include/trace/events/fs.h      | 109 +++++++++++++++++++++++++++++
 include/trace/events/fs_bdev.h | 155 +++++++++++++++++++++++++++++++++++++++++
 4 files changed, 316 insertions(+), 32 deletions(-)
 create mode 100644 include/trace/events/fs.h
 create mode 100644 include/trace/events/fs_bdev.h

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2016-03-03 11:18 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-02 19:01 [PATCH 0/5] Add trace events for filesystem freeze/thaw events Frank Sorenson
2016-03-02 19:01 ` [PATCH 1/5] fs: simplify freeze_super()/thaw_super() exit handling Frank Sorenson
2016-03-02 20:06   ` Al Viro
2016-03-02 19:01 ` [PATCH 2/5] fs/block_dev.c: simplify freeze_bdev() and thaw_bdev() " Frank Sorenson
2016-03-02 19:01 ` [PATCH 3/5] fs: add trace events for freeze_super() and thaw_super() Frank Sorenson
2016-03-02 20:12   ` Al Viro
2016-03-02 19:01 ` [PATCH 4/5] fs/block_dev.c: add trace events for freeze_bdev() and thaw_bdev() Frank Sorenson
2016-03-02 19:01 ` [PATCH 5/5] fs: enable filesystem freeze/thaw events Frank Sorenson
2016-03-02 20:15   ` Al Viro
2016-03-02 21:47 ` [PATCH 0/5] Add trace events for " Al Viro
2016-03-02 22:47   ` Dave Chinner
2016-03-02 23:22     ` Al Viro
2016-03-02 23:52       ` Dave Chinner
2016-03-03 11:18 ` Dave Wysochanski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).