| From eae02feb58064eee5ce15a9f6bdffd107c47da05 Mon Sep 17 00:00:00 2001 |
| From: Michael Jeanson <mjeanson@efficios.com> |
| Date: Mon, 31 Aug 2020 11:41:38 -0400 |
| Subject: [PATCH 07/10] fix: writeback: Drop I_DIRTY_TIME_EXPIRE (v5.9) |
| |
| See upstream commit: |
| |
| commit 5fcd57505c002efc5823a7355e21f48dd02d5a51 |
| Author: Jan Kara <jack@suse.cz> |
| Date: Fri May 29 16:24:43 2020 +0200 |
| |
| writeback: Drop I_DIRTY_TIME_EXPIRE |
| |
| The only use of I_DIRTY_TIME_EXPIRE is to detect in |
| __writeback_single_inode() that inode got there because flush worker |
| decided it's time to writeback the dirty inode time stamps (either |
| because we are syncing or because of age). However we can detect this |
| directly in __writeback_single_inode() and there's no need for the |
| strange propagation with I_DIRTY_TIME_EXPIRE flag. |
| |
| Upstream-Status: Backport |
| |
| Signed-off-by: Michael Jeanson <mjeanson@efficios.com> |
| Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> |
| Change-Id: I92e37c2ff3ec36d431e8f9de5c8e37c5a2da55ea |
| --- |
| instrumentation/events/lttng-module/writeback.h | 16 +++++++++++++++- |
| 1 file changed, 15 insertions(+), 1 deletion(-) |
| |
| diff --git a/instrumentation/events/lttng-module/writeback.h b/instrumentation/events/lttng-module/writeback.h |
| index affb4eb..ece67ad 100644 |
| --- a/instrumentation/events/lttng-module/writeback.h |
| +++ b/instrumentation/events/lttng-module/writeback.h |
| @@ -46,7 +46,21 @@ static inline struct backing_dev_info *lttng_inode_to_bdi(struct inode *inode) |
| |
| #endif |
| |
| -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0)) |
| +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,9,0)) |
| +#define show_inode_state(state) \ |
| + __print_flags(state, "|", \ |
| + {I_DIRTY_SYNC, "I_DIRTY_SYNC"}, \ |
| + {I_DIRTY_DATASYNC, "I_DIRTY_DATASYNC"}, \ |
| + {I_DIRTY_PAGES, "I_DIRTY_PAGES"}, \ |
| + {I_NEW, "I_NEW"}, \ |
| + {I_WILL_FREE, "I_WILL_FREE"}, \ |
| + {I_FREEING, "I_FREEING"}, \ |
| + {I_CLEAR, "I_CLEAR"}, \ |
| + {I_SYNC, "I_SYNC"}, \ |
| + {I_DIRTY_TIME, "I_DIRTY_TIME"}, \ |
| + {I_REFERENCED, "I_REFERENCED"} \ |
| + ) |
| +#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,0,0)) |
| #define show_inode_state(state) \ |
| __print_flags(state, "|", \ |
| {I_DIRTY_SYNC, "I_DIRTY_SYNC"}, \ |
| -- |
| 2.19.1 |
| |