From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wu Fengguang Subject: [PATCH,v2] writeback: show raw dirtied_when in trace writeback_single_inode Date: Mon, 29 Aug 2011 17:23:07 +0800 Message-ID: <20110829092307.GA20660@localhost> References: <20110829020601.GA4862@localhost> <20110829074236.GA20178@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: "linux-fsdevel@vger.kernel.org" , Andrew Morton , Jan Kara , Dave Chinner To: Christoph Hellwig Return-path: Received: from mga14.intel.com ([143.182.124.37]:12312 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751213Ab1H2JXN (ORCPT ); Mon, 29 Aug 2011 05:23:13 -0400 Content-Disposition: inline In-Reply-To: <20110829074236.GA20178@infradead.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: [since v1: added Christoph's ack and make it actually work] Save inode->dirtied_when in the raw trace output for reliable scripting, and to also show in formatted output the relative age in seconds for easy human reading. CC: Jan Kara Acked-by: Christoph Hellwig Signed-off-by: Wu Fengguang --- include/trace/events/writeback.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) --- linux-next.orig/include/trace/events/writeback.h 2011-08-29 09:51:12.000000000 +0800 +++ linux-next/include/trace/events/writeback.h 2011-08-29 17:14:16.000000000 +0800 @@ -433,7 +433,7 @@ DECLARE_EVENT_CLASS(writeback_single_ino __array(char, name, 32) __field(unsigned long, ino) __field(unsigned long, state) - __field(unsigned long, age) + __field(unsigned long, dirtied_when) __field(unsigned long, writeback_index) __field(long, nr_to_write) __field(unsigned long, wrote) @@ -444,19 +444,19 @@ DECLARE_EVENT_CLASS(writeback_single_ino dev_name(inode->i_mapping->backing_dev_info->dev), 32); __entry->ino = inode->i_ino; __entry->state = inode->i_state; - __entry->age = (jiffies - inode->dirtied_when) * - 1000 / HZ; + __entry->dirtied_when = inode->dirtied_when; __entry->writeback_index = inode->i_mapping->writeback_index; __entry->nr_to_write = nr_to_write; __entry->wrote = nr_to_write - wbc->nr_to_write; ), - TP_printk("bdi %s: ino=%lu state=%s age=%lu " + TP_printk("bdi %s: ino=%lu state=%s dirtied_when=%lu age=%lu " "index=%lu to_write=%ld wrote=%lu", __entry->name, __entry->ino, show_inode_state(__entry->state), - __entry->age, + __entry->dirtied_when, + (jiffies - __entry->dirtied_when) / HZ, __entry->writeback_index, __entry->nr_to_write, __entry->wrote