This discussion is archived
1 Reply Latest reply: Nov 28, 2012 4:26 PM by bobthesungeek76036 RSS

mdb -k to check live kernel or core dump

976791 Newbie
Currently Being Moderated
I am trying to use mdb -k to check a live kernel
root@x4470a:/kernel/kmdb/amd64# mdb -k
Loading modules: [ unix genunix specfs dtrace mac cpu.generic uppc apix scsi_vhci zfs mpt_sas sd ip hook neti arp us
ba uhci kssl qlc fctl qlt stmf stmf_sbd sockfs md lofs random idm fcp sata cpc crypto nfs ufs logindmux ptm sppp ]
::print -axt scsi_task_t
0 scsi_task_t {
0 tileid_t task_stmf_private
8 tileid_t task_port_private
10 tileid_t task_lu_private
18 struct stmf_scsi_session *task_session
20 struct stmf_local_port *task_lport
28 struct stmf_lu *task_lu
30 tileid_t task_lu_itl_handle
38 struct task_lun_no {
38 uint8_t [8] pad
}
40 uint8_t task_flags
41 uint8_t task_priority
42 uint8_t task_mgmt_function
43 uint8_t task_max_xfers
44 uint8_t task_cur_xfers
45 uint8_t task_max_nbufs
46 uint8_t task_cur_nbufs
47 uint8_t task_csn_size
48 uint8_t [19] task_additional_flags
4c int32_t task_cmd_seq_no
50 int32_t task_expected_xfer_length
54 int32_t task_timeout
58 uint8_t [19] task_ext_id
5a uint8_t [19] task_cdb_length
60 enum task_cdb
68 int32_t task_cmd_xfer_length
6c int32_t task_nbytes_transferred
70 int32_t task_max_xfer_len
74 int32_t task_1st_xfer_len
78 int32_t task_copy_threshold
80 stmf_status_t task_completion_status
88 int32_t task_resid
8c uint8_t task_status_ctrl
8d uint8_t task_scsi_status
8e uint8_t [19] task_sense_length
90 enum task_sense_data
98 uint8_t [18] task_sense_data_fixed
b0 tileid_t task_extended_cmd
}
>

when I use mdb -k 31 i got the following. 31 is the core dump 31. The following output of scsi_task_t is correct.

root@x4470a:/var/crash# mdb -k 31
Loading modules: [ unix genunix specfs dtrace mac cpu.generic uppc apix scsi_vhci zfs mpt_sas sd ip hook neti arp us
ba uhci kssl qlc fctl qlt stmf stmf_sbd sockfs md lofs random idm fcp sata cpc crypto nfs ufs logindmux ptm sppp ]
::print -axt scsi_task_t
0 scsi_task_t {
0 void *task_stmf_private
8 void *task_port_private
10 void *task_lu_private
18 struct stmf_scsi_session *task_session
20 struct stmf_local_port *task_lport
28 struct stmf_lu *task_lu
30 void *task_lu_itl_handle
38 uint8_t [8] task_lun_no
40 uint8_t task_flags
41 uint8_t task_priority
42 uint8_t task_mgmt_function
43 uint8_t task_max_xfers
44 uint8_t task_cur_xfers
45 uint8_t task_max_nbufs
46 uint8_t task_cur_nbufs
47 uint8_t task_csn_size
48 uint16_t task_additional_flags
4c uint32_t task_cmd_seq_no
50 uint32_t task_expected_xfer_length
54 uint32_t task_timeout
58 uint16_t task_ext_id
5a uint16_t task_cdb_length
60 uint8_t *task_cdb
68 uint32_t task_cmd_xfer_length
6c uint32_t task_nbytes_transferred
70 uint32_t task_max_xfer_len
74 uint32_t task_1st_xfer_len
78 uint32_t task_copy_threshold
80 stmf_status_t task_completion_status
88 uint32_t task_resid
8c uint8_t task_status_ctrl
8d uint8_t task_scsi_status
8e uint16_t task_sense_length
90 uint8_t *task_sense_data
98 uint8_t [18] task_sense_data_fixed
b0 void *task_extended_cmd
}
>
Obviously my live kernel has some problems, what might have happened and how to solve this problem.

Thanks

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points