Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b3bba872 authored by Wu Fengguang's avatar Wu Fengguang
Browse files

writeback: show writeback reason with __print_symbolic



This makes the binary trace understandable by trace-cmd.

CC: Dave Chinner <david@fromorbit.com>
CC: Curt Wohlgemuth <curtw@google.com>
CC: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: default avatarWu Fengguang <fengguang.wu@intel.com>
parent 384703b8
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
@@ -47,17 +47,6 @@ struct wb_writeback_work {
	struct completion *done;	/* set if the caller waits */
};

const char *wb_reason_name[] = {
	[WB_REASON_BACKGROUND]		= "background",
	[WB_REASON_TRY_TO_FREE_PAGES]	= "try_to_free_pages",
	[WB_REASON_SYNC]		= "sync",
	[WB_REASON_PERIODIC]		= "periodic",
	[WB_REASON_LAPTOP_TIMER]	= "laptop_timer",
	[WB_REASON_FREE_MORE_MEM]	= "free_more_memory",
	[WB_REASON_FS_FREE_SPACE]	= "fs_free_space",
	[WB_REASON_FORKER_THREAD]	= "forker_thread"
};

/*
 * Include the creation of the trace points after defining the
 * wb_writeback_work structure so that the definition remains local to this
+13 −2
Original line number Diff line number Diff line
@@ -21,6 +21,16 @@
		{I_REFERENCED,		"I_REFERENCED"}		\
	)

#define WB_WORK_REASON							\
		{WB_REASON_BACKGROUND,		"background"},		\
		{WB_REASON_TRY_TO_FREE_PAGES,	"try_to_free_pages"},	\
		{WB_REASON_SYNC,		"sync"},		\
		{WB_REASON_PERIODIC,		"periodic"},		\
		{WB_REASON_LAPTOP_TIMER,	"laptop_timer"},	\
		{WB_REASON_FREE_MORE_MEM,	"free_more_memory"},	\
		{WB_REASON_FS_FREE_SPACE,	"fs_free_space"},	\
		{WB_REASON_FORKER_THREAD,	"forker_thread"}

struct wb_writeback_work;

DECLARE_EVENT_CLASS(writeback_work_class,
@@ -55,7 +65,7 @@ DECLARE_EVENT_CLASS(writeback_work_class,
		  __entry->for_kupdate,
		  __entry->range_cyclic,
		  __entry->for_background,
		  wb_reason_name[__entry->reason]
		  __print_symbolic(__entry->reason, WB_WORK_REASON)
	)
);
#define DEFINE_WRITEBACK_WORK_EVENT(name) \
@@ -184,7 +194,8 @@ TRACE_EVENT(writeback_queue_io,
		__entry->older,	/* older_than_this in jiffies */
		__entry->age,	/* older_than_this in relative milliseconds */
		__entry->moved,
		wb_reason_name[__entry->reason])
		__print_symbolic(__entry->reason, WB_WORK_REASON)
	)
);

TRACE_EVENT(global_dirty_state,