]> Pileus Git - ~andy/linux/blobdiff - include/linux/blktrace_api.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs...
[~andy/linux] / include / linux / blktrace_api.h
index 416bf62d6d4649211926fc713cbbb152a2d3653d..3395cf7130f5dbdd4e29863c3c43e03fafe5e615 100644 (file)
@@ -5,6 +5,7 @@
 #ifdef __KERNEL__
 #include <linux/blkdev.h>
 #include <linux/relay.h>
+#include <linux/compat.h>
 #endif
 
 /*
@@ -220,11 +221,26 @@ static inline int blk_trace_init_sysfs(struct device *dev)
 
 #endif /* CONFIG_BLK_DEV_IO_TRACE */
 
+#ifdef CONFIG_COMPAT
+
+struct compat_blk_user_trace_setup {
+       char name[32];
+       u16 act_mask;
+       u32 buf_size;
+       u32 buf_nr;
+       compat_u64 start_lba;
+       compat_u64 end_lba;
+       u32 pid;
+};
+#define BLKTRACESETUP32 _IOWR(0x12, 115, struct compat_blk_user_trace_setup)
+
+#endif
+
 #if defined(CONFIG_EVENT_TRACING) && defined(CONFIG_BLOCK)
 
 static inline int blk_cmd_buf_len(struct request *rq)
 {
-       return blk_pc_request(rq) ? rq->cmd_len * 3 : 1;
+       return (rq->cmd_type == REQ_TYPE_BLOCK_PC) ? rq->cmd_len * 3 : 1;
 }
 
 extern void blk_dump_cmd(char *buf, struct request *rq);