X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=instrumentation%2Fevents%2Flttng-module%2Fscsi.h;h=ead6be3e4f9d8b8d710213640bc8751b9aac0165;hb=1b4cbadbff1a2bc47ab7bcc361fb8a72f6f3042c;hp=18d2b0229951adb13a1714922070cc3cdf1aeddb;hpb=d3ac4d63d21c643df5b09d9d7888eb0c4122379c;p=lttng-modules.git diff --git a/instrumentation/events/lttng-module/scsi.h b/instrumentation/events/lttng-module/scsi.h index 18d2b022..ead6be3e 100644 --- a/instrumentation/events/lttng-module/scsi.h +++ b/instrumentation/events/lttng-module/scsi.h @@ -1,13 +1,14 @@ #undef TRACE_SYSTEM #define TRACE_SYSTEM scsi -#if !defined(_TRACE_SCSI_H) || defined(TRACE_HEADER_MULTI_READ) -#define _TRACE_SCSI_H +#if !defined(LTTNG_TRACE_SCSI_H) || defined(TRACE_HEADER_MULTI_READ) +#define LTTNG_TRACE_SCSI_H +#include "../../../probes/lttng-tracepoint-event.h" #include #include -#include #include +#include #ifndef _TRACE_SCSI_DEF #define _TRACE_SCSI_DEF @@ -187,6 +188,7 @@ scsi_statusbyte_name(SAM_STAT_ACA_ACTIVE), \ scsi_statusbyte_name(SAM_STAT_TASK_ABORTED)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) #define scsi_prot_op_name(result) { result, #result } #define show_prot_op_name(val) \ __print_symbolic(val, \ @@ -197,12 +199,13 @@ scsi_prot_op_name(SCSI_PROT_WRITE_INSERT), \ scsi_prot_op_name(SCSI_PROT_READ_PASS), \ scsi_prot_op_name(SCSI_PROT_WRITE_PASS)) +#endif const char *scsi_trace_parse_cdb(struct trace_seq*, unsigned char*, int); #define __parse_cdb(cdb, len) scsi_trace_parse_cdb(p, cdb, len) #endif -TRACE_EVENT(scsi_dispatch_cmd_start, +LTTNG_TRACEPOINT_EVENT(scsi_dispatch_cmd_start, TP_PROTO(struct scsi_cmnd *cmd), @@ -217,7 +220,9 @@ TRACE_EVENT(scsi_dispatch_cmd_start, __field( unsigned int, cmd_len ) __field( unsigned int, data_sglen ) __field( unsigned int, prot_sglen ) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) __field( unsigned char, prot_op ) +#endif __dynamic_array_hex(unsigned char, cmnd, cmd->cmd_len) ), @@ -230,21 +235,30 @@ TRACE_EVENT(scsi_dispatch_cmd_start, tp_assign(cmd_len, cmd->cmd_len) tp_assign(data_sglen, scsi_sg_count(cmd)) tp_assign(prot_sglen, scsi_prot_sg_count(cmd)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) tp_assign(prot_op, scsi_get_prot_op(cmd)) +#endif tp_memcpy_dyn(cmnd, cmd->cmnd) ), +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) TP_printk("host_no=%u channel=%u id=%u lun=%u data_sgl=%u prot_sgl=%u" \ " prot_op=%s cmnd=(%s %s raw=%s)", +#else + TP_printk("host_no=%u channel=%u id=%u lun=%u data_sgl=%u prot_sgl=%u" \ + " cmnd=(%s %s raw=%s)", +#endif __entry->host_no, __entry->channel, __entry->id, __entry->lun, __entry->data_sglen, __entry->prot_sglen, +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) show_prot_op_name(__entry->prot_op), +#endif show_opcode_name(__entry->opcode), __parse_cdb(__get_dynamic_array(cmnd), __entry->cmd_len), __print_hex(__get_dynamic_array(cmnd), __entry->cmd_len)) ) -TRACE_EVENT(scsi_dispatch_cmd_error, +LTTNG_TRACEPOINT_EVENT(scsi_dispatch_cmd_error, TP_PROTO(struct scsi_cmnd *cmd, int rtn), @@ -260,7 +274,9 @@ TRACE_EVENT(scsi_dispatch_cmd_error, __field( unsigned int, cmd_len ) __field( unsigned int, data_sglen ) __field( unsigned int, prot_sglen ) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) __field( unsigned char, prot_op ) +#endif __dynamic_array_hex(unsigned char, cmnd, cmd->cmd_len) ), @@ -274,22 +290,31 @@ TRACE_EVENT(scsi_dispatch_cmd_error, tp_assign(cmd_len, cmd->cmd_len) tp_assign(data_sglen, scsi_sg_count(cmd)) tp_assign(prot_sglen, scsi_prot_sg_count(cmd)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) tp_assign(prot_op, scsi_get_prot_op(cmd)) +#endif tp_memcpy_dyn(cmnd, cmd->cmnd) ), +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) TP_printk("host_no=%u channel=%u id=%u lun=%u data_sgl=%u prot_sgl=%u" \ " prot_op=%s cmnd=(%s %s raw=%s) rtn=%d", +#else + TP_printk("host_no=%u channel=%u id=%u lun=%u data_sgl=%u prot_sgl=%u" \ + " cmnd=(%s %s raw=%s) rtn=%d", +#endif __entry->host_no, __entry->channel, __entry->id, __entry->lun, __entry->data_sglen, __entry->prot_sglen, +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) show_prot_op_name(__entry->prot_op), +#endif show_opcode_name(__entry->opcode), __parse_cdb(__get_dynamic_array(cmnd), __entry->cmd_len), __print_hex(__get_dynamic_array(cmnd), __entry->cmd_len), __entry->rtn) ) -DECLARE_EVENT_CLASS(scsi_cmd_done_timeout_template, +LTTNG_TRACEPOINT_EVENT_CLASS(scsi_cmd_done_timeout_template, TP_PROTO(struct scsi_cmnd *cmd), @@ -305,7 +330,9 @@ DECLARE_EVENT_CLASS(scsi_cmd_done_timeout_template, __field( unsigned int, cmd_len ) __field( unsigned int, data_sglen ) __field( unsigned int, prot_sglen ) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) __field( unsigned char, prot_op ) +#endif __dynamic_array_hex(unsigned char, cmnd, cmd->cmd_len) ), @@ -319,16 +346,26 @@ DECLARE_EVENT_CLASS(scsi_cmd_done_timeout_template, tp_assign(cmd_len, cmd->cmd_len) tp_assign(data_sglen, scsi_sg_count(cmd)) tp_assign(prot_sglen, scsi_prot_sg_count(cmd)) +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) tp_assign(prot_op, scsi_get_prot_op(cmd)) +#endif tp_memcpy_dyn(cmnd, cmd->cmnd) ), +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) TP_printk("host_no=%u channel=%u id=%u lun=%u data_sgl=%u " \ "prot_sgl=%u prot_op=%s cmnd=(%s %s raw=%s) result=(driver=" \ "%s host=%s message=%s status=%s)", +#else + TP_printk("host_no=%u channel=%u id=%u lun=%u data_sgl=%u " \ + "prot_sgl=%u cmnd=(%s %s raw=%s) result=(driver=%s host=%s " \ + "message=%s status=%s)", +#endif __entry->host_no, __entry->channel, __entry->id, __entry->lun, __entry->data_sglen, __entry->prot_sglen, +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,39)) show_prot_op_name(__entry->prot_op), +#endif show_opcode_name(__entry->opcode), __parse_cdb(__get_dynamic_array(cmnd), __entry->cmd_len), __print_hex(__get_dynamic_array(cmnd), __entry->cmd_len), @@ -338,15 +375,15 @@ DECLARE_EVENT_CLASS(scsi_cmd_done_timeout_template, show_statusbyte_name(__entry->result & 0xff)) ) -DEFINE_EVENT(scsi_cmd_done_timeout_template, scsi_dispatch_cmd_done, +LTTNG_TRACEPOINT_EVENT_INSTANCE(scsi_cmd_done_timeout_template, scsi_dispatch_cmd_done, TP_PROTO(struct scsi_cmnd *cmd), TP_ARGS(cmd)) -DEFINE_EVENT(scsi_cmd_done_timeout_template, scsi_dispatch_cmd_timeout, +LTTNG_TRACEPOINT_EVENT_INSTANCE(scsi_cmd_done_timeout_template, scsi_dispatch_cmd_timeout, TP_PROTO(struct scsi_cmnd *cmd), TP_ARGS(cmd)) -TRACE_EVENT(scsi_eh_wakeup, +LTTNG_TRACEPOINT_EVENT(scsi_eh_wakeup, TP_PROTO(struct Scsi_Host *shost), @@ -363,7 +400,7 @@ TRACE_EVENT(scsi_eh_wakeup, TP_printk("host_no=%u", __entry->host_no) ) -#endif /* _TRACE_SCSI_H */ +#endif /* LTTNG_TRACE_SCSI_H */ /* This part must be outside protection */ #include "../../../probes/define_trace.h"