#define _TRACE_EXT3_H
#include <linux/tracepoint.h>
+#include <linux/version.h>
TRACE_EVENT(ext3_free_inode,
TP_PROTO(struct inode *inode),
tp_assign(dev, inode->i_sb->s_dev)
tp_assign(ino, inode->i_ino)
tp_assign(mode, inode->i_mode)
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
+ tp_assign(uid, i_uid_read(inode))
+ tp_assign(gid, i_gid_read(inode))
+#else
tp_assign(uid, inode->i_uid)
tp_assign(gid, inode->i_gid)
+#endif
tp_assign(blocks, inode->i_blocks)
),
TP_ARGS(page)
)
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0))
+
+TRACE_EVENT(ext3_invalidatepage,
+ TP_PROTO(struct page *page, unsigned int offset, unsigned int length),
+
+ TP_ARGS(page, offset, length),
+
+ TP_STRUCT__entry(
+ __field( pgoff_t, index )
+ __field( unsigned int, offset )
+ __field( unsigned int, length )
+ __field( ino_t, ino )
+ __field( dev_t, dev )
+
+ ),
+
+ TP_fast_assign(
+ tp_assign(index, page->index)
+ tp_assign(offset, offset)
+ tp_assign(length, length)
+ tp_assign(ino, page->mapping->host->i_ino)
+ tp_assign(dev, page->mapping->host->i_sb->s_dev)
+ ),
+
+ TP_printk("dev %d,%d ino %lu page_index %lu offset %u length %u",
+ MAJOR(__entry->dev), MINOR(__entry->dev),
+ (unsigned long) __entry->ino,
+ __entry->index, __entry->offset, __entry->length)
+)
+
+#else
+
TRACE_EVENT(ext3_invalidatepage,
TP_PROTO(struct page *page, unsigned long offset),
__entry->index, __entry->offset)
)
+#endif
+
TRACE_EVENT(ext3_discard_blocks,
TP_PROTO(struct super_block *sb, unsigned long blk,
unsigned long count),