aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2009-09-14 22:59:50 -0400
committerTheodore Ts'o <tytso@mit.edu>2009-09-14 22:59:50 -0400
commit3661d28615ea580c1db02a972fd4d3898df1cb01 (patch)
tree35b5ee30b88913c3e0711f763f0fa4d3bca27807
parent7ad9bb651fc2036ea94bed94da76a4b08959a911 (diff)
downloadkernel_samsung_tuna-3661d28615ea580c1db02a972fd4d3898df1cb01.zip
kernel_samsung_tuna-3661d28615ea580c1db02a972fd4d3898df1cb01.tar.gz
kernel_samsung_tuna-3661d28615ea580c1db02a972fd4d3898df1cb01.tar.bz2
ext4: Fix include/trace/events/ext4.h to work with Systemtap
Using relative pathnames in #include statements interacts badly with SystemTap, since the fs/ext4/*.h header files are not packaged up as part of a distribution kernel's header files. Since systemtap doesn't use TP_fast_assign(), we can use a blind structure definition and then make sure the needed header files are defined before the ext4 source files #include the trace/events/ext4.h header file. https://bugzilla.redhat.com/show_bug.cgi?id=512478 Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
-rw-r--r--fs/ext4/super.c1
-rw-r--r--include/trace/events/ext4.h6
2 files changed, 5 insertions, 2 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index 04c6933..af95dd8 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -45,6 +45,7 @@
#include "ext4_jbd2.h"
#include "xattr.h"
#include "acl.h"
+#include "mballoc.h"
#define CREATE_TRACE_POINTS
#include <trace/events/ext4.h>
diff --git a/include/trace/events/ext4.h b/include/trace/events/ext4.h
index 68b53c7..6fe6ce9 100644
--- a/include/trace/events/ext4.h
+++ b/include/trace/events/ext4.h
@@ -5,10 +5,12 @@
#define _TRACE_EXT4_H
#include <linux/writeback.h>
-#include "../../../fs/ext4/ext4.h"
-#include "../../../fs/ext4/mballoc.h"
#include <linux/tracepoint.h>
+struct ext4_allocation_context;
+struct ext4_allocation_request;
+struct ext4_prealloc_space;
+
TRACE_EVENT(ext4_free_inode,
TP_PROTO(struct inode *inode),