OXIESEC PANEL
- Current Dir:
/
/
usr
/
src
/
linux-headers-4.15.0-197
/
include
/
trace
/
events
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
11/17/2022 06:42:23 AM
rwxr-xr-x
📄
9p.h
5.1 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
afs.h
13.13 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
alarmtimer.h
2.04 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
asoc.h
5.17 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
bcache.h
10.9 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
block.h
17.18 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
bpf.h
8.23 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
bridge.h
3.45 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
btrfs.h
46.21 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
cgroup.h
3.21 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
clk.h
3.69 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
cma.h
1.31 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
compaction.h
7.76 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
context_tracking.h
1.15 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
cpuhp.h
1.83 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
devlink.h
1.76 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
dma_fence.h
1.66 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
ext4.h
64.44 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
f2fs.h
36.38 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
fib.h
2.45 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
fib6.h
1.82 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
filelock.h
6.27 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
filemap.h
2.74 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
fs.h
946 bytes
11/01/2022 04:52:05 PM
rw-r--r--
📄
fs_dax.h
8.26 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
fsi.h
2.81 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
fsi_master_gpio.h
1.54 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
gpio.h
1.13 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
host1x.h
5.77 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
hswadsp.h
8.37 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
huge_memory.h
4.33 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
i2c.h
4.15 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
intel-sst.h
2.51 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
intel_ish.h
556 bytes
01/28/2018 09:20:33 PM
rw-r--r--
📄
iommu.h
3.03 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
ipi.h
1.88 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
irq.h
3.8 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
irq_matrix.h
4.94 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
jbd2.h
9.79 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
kmem.h
7.39 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
kvm.h
9.03 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
libata.h
11.57 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
lock.h
1.7 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
mce.h
1.85 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
mdio.h
1.02 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
migrate.h
2.42 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
mmc.h
7.24 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
mmflags.h
8.29 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
module.h
2.78 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
napi.h
1013 bytes
01/28/2018 09:20:33 PM
rw-r--r--
📄
net.h
6.56 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
nilfs2.h
5.2 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
nmi.h
780 bytes
01/28/2018 09:20:33 PM
rw-r--r--
📄
oom.h
3.88 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
page_isolation.h
943 bytes
01/28/2018 09:20:33 PM
rw-r--r--
📄
page_ref.h
2.99 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
pagemap.h
2.14 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
percpu.h
2.61 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
power.h
11.35 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
power_cpu_migrate.h
1.59 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
preemptirq.h
1.95 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
printk.h
786 bytes
01/28/2018 09:20:33 PM
rw-r--r--
📄
qdisc.h
1.37 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
rcu.h
24.64 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
regulator.h
2.4 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
rpm.h
2.34 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
rxrpc.h
33.79 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
sched.h
14.12 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
scsi.h
12.32 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
signal.h
3.43 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
skb.h
1.38 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
smbus.h
7.51 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
sock.h
1.72 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
spi.h
3.31 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
spmi.h
3.24 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
sunrpc.h
18.31 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
sunvnet.h
3.06 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
swiotlb.h
1.22 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
syscalls.h
1.48 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
target.h
7.52 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
task.h
1.49 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
tcp.h
6.57 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
thermal.h
5.58 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
thermal_power_allocator.h
3.22 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
thp.h
2.09 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
timer.h
9.58 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
tlb.h
1.41 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
udp.h
632 bytes
01/28/2018 09:20:33 PM
rw-r--r--
📄
ufs.h
6.85 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
v4l2.h
8.81 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
vb2.h
1.73 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
vmscan.h
12.47 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
vsock_virtio_transport_common.h
3.49 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
wbt.h
3.83 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
workqueue.h
2.7 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
writeback.h
19.81 KB
11/01/2022 04:52:05 PM
rw-r--r--
📄
xdp.h
5.76 KB
01/28/2018 09:20:33 PM
rw-r--r--
📄
xen.h
14.66 KB
11/01/2022 04:52:05 PM
rw-r--r--
Editing: scsi.h
Close
/* SPDX-License-Identifier: GPL-2.0 */ #undef TRACE_SYSTEM #define TRACE_SYSTEM scsi #if !defined(_TRACE_SCSI_H) || defined(TRACE_HEADER_MULTI_READ) #define _TRACE_SCSI_H #include <scsi/scsi_cmnd.h> #include <scsi/scsi_host.h> #include <linux/tracepoint.h> #include <linux/trace_seq.h> #define scsi_opcode_name(opcode) { opcode, #opcode } #define show_opcode_name(val) \ __print_symbolic(val, \ scsi_opcode_name(TEST_UNIT_READY), \ scsi_opcode_name(REZERO_UNIT), \ scsi_opcode_name(REQUEST_SENSE), \ scsi_opcode_name(FORMAT_UNIT), \ scsi_opcode_name(READ_BLOCK_LIMITS), \ scsi_opcode_name(REASSIGN_BLOCKS), \ scsi_opcode_name(INITIALIZE_ELEMENT_STATUS), \ scsi_opcode_name(READ_6), \ scsi_opcode_name(WRITE_6), \ scsi_opcode_name(SEEK_6), \ scsi_opcode_name(READ_REVERSE), \ scsi_opcode_name(WRITE_FILEMARKS), \ scsi_opcode_name(SPACE), \ scsi_opcode_name(INQUIRY), \ scsi_opcode_name(RECOVER_BUFFERED_DATA), \ scsi_opcode_name(MODE_SELECT), \ scsi_opcode_name(RESERVE), \ scsi_opcode_name(RELEASE), \ scsi_opcode_name(COPY), \ scsi_opcode_name(ERASE), \ scsi_opcode_name(MODE_SENSE), \ scsi_opcode_name(START_STOP), \ scsi_opcode_name(RECEIVE_DIAGNOSTIC), \ scsi_opcode_name(SEND_DIAGNOSTIC), \ scsi_opcode_name(ALLOW_MEDIUM_REMOVAL), \ scsi_opcode_name(SET_WINDOW), \ scsi_opcode_name(READ_CAPACITY), \ scsi_opcode_name(READ_10), \ scsi_opcode_name(WRITE_10), \ scsi_opcode_name(SEEK_10), \ scsi_opcode_name(POSITION_TO_ELEMENT), \ scsi_opcode_name(WRITE_VERIFY), \ scsi_opcode_name(VERIFY), \ scsi_opcode_name(SEARCH_HIGH), \ scsi_opcode_name(SEARCH_EQUAL), \ scsi_opcode_name(SEARCH_LOW), \ scsi_opcode_name(SET_LIMITS), \ scsi_opcode_name(PRE_FETCH), \ scsi_opcode_name(READ_POSITION), \ scsi_opcode_name(SYNCHRONIZE_CACHE), \ scsi_opcode_name(LOCK_UNLOCK_CACHE), \ scsi_opcode_name(READ_DEFECT_DATA), \ scsi_opcode_name(MEDIUM_SCAN), \ scsi_opcode_name(COMPARE), \ scsi_opcode_name(COPY_VERIFY), \ scsi_opcode_name(WRITE_BUFFER), \ scsi_opcode_name(READ_BUFFER), \ scsi_opcode_name(UPDATE_BLOCK), \ scsi_opcode_name(READ_LONG), \ scsi_opcode_name(WRITE_LONG), \ scsi_opcode_name(CHANGE_DEFINITION), \ scsi_opcode_name(WRITE_SAME), \ scsi_opcode_name(UNMAP), \ scsi_opcode_name(READ_TOC), \ scsi_opcode_name(LOG_SELECT), \ scsi_opcode_name(LOG_SENSE), \ scsi_opcode_name(XDWRITEREAD_10), \ scsi_opcode_name(MODE_SELECT_10), \ scsi_opcode_name(RESERVE_10), \ scsi_opcode_name(RELEASE_10), \ scsi_opcode_name(MODE_SENSE_10), \ scsi_opcode_name(PERSISTENT_RESERVE_IN), \ scsi_opcode_name(PERSISTENT_RESERVE_OUT), \ scsi_opcode_name(VARIABLE_LENGTH_CMD), \ scsi_opcode_name(REPORT_LUNS), \ scsi_opcode_name(MAINTENANCE_IN), \ scsi_opcode_name(MAINTENANCE_OUT), \ scsi_opcode_name(MOVE_MEDIUM), \ scsi_opcode_name(EXCHANGE_MEDIUM), \ scsi_opcode_name(READ_12), \ scsi_opcode_name(WRITE_12), \ scsi_opcode_name(WRITE_VERIFY_12), \ scsi_opcode_name(SEARCH_HIGH_12), \ scsi_opcode_name(SEARCH_EQUAL_12), \ scsi_opcode_name(SEARCH_LOW_12), \ scsi_opcode_name(READ_ELEMENT_STATUS), \ scsi_opcode_name(SEND_VOLUME_TAG), \ scsi_opcode_name(WRITE_LONG_2), \ scsi_opcode_name(READ_16), \ scsi_opcode_name(WRITE_16), \ scsi_opcode_name(VERIFY_16), \ scsi_opcode_name(WRITE_SAME_16), \ scsi_opcode_name(ZBC_OUT), \ scsi_opcode_name(ZBC_IN), \ scsi_opcode_name(SERVICE_ACTION_IN_16), \ scsi_opcode_name(READ_32), \ scsi_opcode_name(WRITE_32), \ scsi_opcode_name(WRITE_SAME_32), \ scsi_opcode_name(ATA_16), \ scsi_opcode_name(ATA_12)) #define scsi_hostbyte_name(result) { result, #result } #define show_hostbyte_name(val) \ __print_symbolic(val, \ scsi_hostbyte_name(DID_OK), \ scsi_hostbyte_name(DID_NO_CONNECT), \ scsi_hostbyte_name(DID_BUS_BUSY), \ scsi_hostbyte_name(DID_TIME_OUT), \ scsi_hostbyte_name(DID_BAD_TARGET), \ scsi_hostbyte_name(DID_ABORT), \ scsi_hostbyte_name(DID_PARITY), \ scsi_hostbyte_name(DID_ERROR), \ scsi_hostbyte_name(DID_RESET), \ scsi_hostbyte_name(DID_BAD_INTR), \ scsi_hostbyte_name(DID_PASSTHROUGH), \ scsi_hostbyte_name(DID_SOFT_ERROR), \ scsi_hostbyte_name(DID_IMM_RETRY), \ scsi_hostbyte_name(DID_REQUEUE), \ scsi_hostbyte_name(DID_TRANSPORT_DISRUPTED), \ scsi_hostbyte_name(DID_TRANSPORT_FAILFAST)) #define scsi_driverbyte_name(result) { result, #result } #define show_driverbyte_name(val) \ __print_symbolic(val, \ scsi_driverbyte_name(DRIVER_OK), \ scsi_driverbyte_name(DRIVER_BUSY), \ scsi_driverbyte_name(DRIVER_SOFT), \ scsi_driverbyte_name(DRIVER_MEDIA), \ scsi_driverbyte_name(DRIVER_ERROR), \ scsi_driverbyte_name(DRIVER_INVALID), \ scsi_driverbyte_name(DRIVER_TIMEOUT), \ scsi_driverbyte_name(DRIVER_HARD), \ scsi_driverbyte_name(DRIVER_SENSE)) #define scsi_msgbyte_name(result) { result, #result } #define show_msgbyte_name(val) \ __print_symbolic(val, \ scsi_msgbyte_name(COMMAND_COMPLETE), \ scsi_msgbyte_name(EXTENDED_MESSAGE), \ scsi_msgbyte_name(SAVE_POINTERS), \ scsi_msgbyte_name(RESTORE_POINTERS), \ scsi_msgbyte_name(DISCONNECT), \ scsi_msgbyte_name(INITIATOR_ERROR), \ scsi_msgbyte_name(ABORT_TASK_SET), \ scsi_msgbyte_name(MESSAGE_REJECT), \ scsi_msgbyte_name(NOP), \ scsi_msgbyte_name(MSG_PARITY_ERROR), \ scsi_msgbyte_name(LINKED_CMD_COMPLETE), \ scsi_msgbyte_name(LINKED_FLG_CMD_COMPLETE), \ scsi_msgbyte_name(TARGET_RESET), \ scsi_msgbyte_name(ABORT_TASK), \ scsi_msgbyte_name(CLEAR_TASK_SET), \ scsi_msgbyte_name(INITIATE_RECOVERY), \ scsi_msgbyte_name(RELEASE_RECOVERY), \ scsi_msgbyte_name(CLEAR_ACA), \ scsi_msgbyte_name(LOGICAL_UNIT_RESET), \ scsi_msgbyte_name(SIMPLE_QUEUE_TAG), \ scsi_msgbyte_name(HEAD_OF_QUEUE_TAG), \ scsi_msgbyte_name(ORDERED_QUEUE_TAG), \ scsi_msgbyte_name(IGNORE_WIDE_RESIDUE), \ scsi_msgbyte_name(ACA), \ scsi_msgbyte_name(QAS_REQUEST), \ scsi_msgbyte_name(BUS_DEVICE_RESET), \ scsi_msgbyte_name(ABORT)) #define scsi_statusbyte_name(result) { result, #result } #define show_statusbyte_name(val) \ __print_symbolic(val, \ scsi_statusbyte_name(SAM_STAT_GOOD), \ scsi_statusbyte_name(SAM_STAT_CHECK_CONDITION), \ scsi_statusbyte_name(SAM_STAT_CONDITION_MET), \ scsi_statusbyte_name(SAM_STAT_BUSY), \ scsi_statusbyte_name(SAM_STAT_INTERMEDIATE), \ scsi_statusbyte_name(SAM_STAT_INTERMEDIATE_CONDITION_MET), \ scsi_statusbyte_name(SAM_STAT_RESERVATION_CONFLICT), \ scsi_statusbyte_name(SAM_STAT_COMMAND_TERMINATED), \ scsi_statusbyte_name(SAM_STAT_TASK_SET_FULL), \ scsi_statusbyte_name(SAM_STAT_ACA_ACTIVE), \ scsi_statusbyte_name(SAM_STAT_TASK_ABORTED)) #define scsi_prot_op_name(result) { result, #result } #define show_prot_op_name(val) \ __print_symbolic(val, \ scsi_prot_op_name(SCSI_PROT_NORMAL), \ scsi_prot_op_name(SCSI_PROT_READ_INSERT), \ scsi_prot_op_name(SCSI_PROT_WRITE_STRIP), \ scsi_prot_op_name(SCSI_PROT_READ_STRIP), \ scsi_prot_op_name(SCSI_PROT_WRITE_INSERT), \ scsi_prot_op_name(SCSI_PROT_READ_PASS), \ scsi_prot_op_name(SCSI_PROT_WRITE_PASS)) const char *scsi_trace_parse_cdb(struct trace_seq*, unsigned char*, int); #define __parse_cdb(cdb, len) scsi_trace_parse_cdb(p, cdb, len) TRACE_EVENT(scsi_dispatch_cmd_start, TP_PROTO(struct scsi_cmnd *cmd), TP_ARGS(cmd), TP_STRUCT__entry( __field( unsigned int, host_no ) __field( unsigned int, channel ) __field( unsigned int, id ) __field( unsigned int, lun ) __field( unsigned int, opcode ) __field( unsigned int, cmd_len ) __field( unsigned int, data_sglen ) __field( unsigned int, prot_sglen ) __field( unsigned char, prot_op ) __dynamic_array(unsigned char, cmnd, cmd->cmd_len) ), TP_fast_assign( __entry->host_no = cmd->device->host->host_no; __entry->channel = cmd->device->channel; __entry->id = cmd->device->id; __entry->lun = cmd->device->lun; __entry->opcode = cmd->cmnd[0]; __entry->cmd_len = cmd->cmd_len; __entry->data_sglen = scsi_sg_count(cmd); __entry->prot_sglen = scsi_prot_sg_count(cmd); __entry->prot_op = scsi_get_prot_op(cmd); memcpy(__get_dynamic_array(cmnd), cmd->cmnd, cmd->cmd_len); ), 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)", __entry->host_no, __entry->channel, __entry->id, __entry->lun, __entry->data_sglen, __entry->prot_sglen, show_prot_op_name(__entry->prot_op), 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, TP_PROTO(struct scsi_cmnd *cmd, int rtn), TP_ARGS(cmd, rtn), TP_STRUCT__entry( __field( unsigned int, host_no ) __field( unsigned int, channel ) __field( unsigned int, id ) __field( unsigned int, lun ) __field( int, rtn ) __field( unsigned int, opcode ) __field( unsigned int, cmd_len ) __field( unsigned int, data_sglen ) __field( unsigned int, prot_sglen ) __field( unsigned char, prot_op ) __dynamic_array(unsigned char, cmnd, cmd->cmd_len) ), TP_fast_assign( __entry->host_no = cmd->device->host->host_no; __entry->channel = cmd->device->channel; __entry->id = cmd->device->id; __entry->lun = cmd->device->lun; __entry->rtn = rtn; __entry->opcode = cmd->cmnd[0]; __entry->cmd_len = cmd->cmd_len; __entry->data_sglen = scsi_sg_count(cmd); __entry->prot_sglen = scsi_prot_sg_count(cmd); __entry->prot_op = scsi_get_prot_op(cmd); memcpy(__get_dynamic_array(cmnd), cmd->cmnd, cmd->cmd_len); ), 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", __entry->host_no, __entry->channel, __entry->id, __entry->lun, __entry->data_sglen, __entry->prot_sglen, show_prot_op_name(__entry->prot_op), 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, TP_PROTO(struct scsi_cmnd *cmd), TP_ARGS(cmd), TP_STRUCT__entry( __field( unsigned int, host_no ) __field( unsigned int, channel ) __field( unsigned int, id ) __field( unsigned int, lun ) __field( int, result ) __field( unsigned int, opcode ) __field( unsigned int, cmd_len ) __field( unsigned int, data_sglen ) __field( unsigned int, prot_sglen ) __field( unsigned char, prot_op ) __dynamic_array(unsigned char, cmnd, cmd->cmd_len) ), TP_fast_assign( __entry->host_no = cmd->device->host->host_no; __entry->channel = cmd->device->channel; __entry->id = cmd->device->id; __entry->lun = cmd->device->lun; __entry->result = cmd->result; __entry->opcode = cmd->cmnd[0]; __entry->cmd_len = cmd->cmd_len; __entry->data_sglen = scsi_sg_count(cmd); __entry->prot_sglen = scsi_prot_sg_count(cmd); __entry->prot_op = scsi_get_prot_op(cmd); memcpy(__get_dynamic_array(cmnd), cmd->cmnd, cmd->cmd_len); ), 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)", __entry->host_no, __entry->channel, __entry->id, __entry->lun, __entry->data_sglen, __entry->prot_sglen, show_prot_op_name(__entry->prot_op), show_opcode_name(__entry->opcode), __parse_cdb(__get_dynamic_array(cmnd), __entry->cmd_len), __print_hex(__get_dynamic_array(cmnd), __entry->cmd_len), show_driverbyte_name(((__entry->result) >> 24) & 0xff), show_hostbyte_name(((__entry->result) >> 16) & 0xff), show_msgbyte_name(((__entry->result) >> 8) & 0xff), show_statusbyte_name(__entry->result & 0xff)) ); DEFINE_EVENT(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, TP_PROTO(struct scsi_cmnd *cmd), TP_ARGS(cmd)); TRACE_EVENT(scsi_eh_wakeup, TP_PROTO(struct Scsi_Host *shost), TP_ARGS(shost), TP_STRUCT__entry( __field( unsigned int, host_no ) ), TP_fast_assign( __entry->host_no = shost->host_no; ), TP_printk("host_no=%u", __entry->host_no) ); #endif /* _TRACE_SCSI_H */ /* This part must be outside protection */ #include <trace/define_trace.h>