diff options
| author | Toomas Soome <tsoome@me.com> | 2019-12-05 10:13:52 +0200 |
|---|---|---|
| committer | Toomas Soome <tsoome@me.com> | 2019-12-17 21:02:59 +0200 |
| commit | cf01ae8a5d067a3ba8327d8bc6be298d84204a4d (patch) | |
| tree | 72abd27d18cb677d9e1c4d68cf17279e958de696 /usr/src | |
| parent | 15ab2c88fabf7859fc2e59b9c88614461f58d4c9 (diff) | |
| download | illumos-joyent-cf01ae8a5d067a3ba8327d8bc6be298d84204a4d.tar.gz | |
12056 mdb: add mdb_dumpptr_cb as default callback for mdb_dumpptr()
Reviewed by: John Levon <john.levon@joyent.com>
Reviewed by: Matthias Scheler <mscheler@tintri.com>
Approved by: Dan McDonald <danmcd@joyent.com>
Diffstat (limited to 'usr/src')
| -rw-r--r-- | usr/src/cmd/mdb/common/mdb/mdb_modapi.c | 12 | ||||
| -rw-r--r-- | usr/src/cmd/mdb/common/modules/idm/idm.c | 3 | ||||
| -rw-r--r-- | usr/src/cmd/mdb/common/modules/ipc/ipc.c | 6 | ||||
| -rw-r--r-- | usr/src/cmd/mdb/common/modules/smbsrv/smbsrv.c | 3 | ||||
| -rw-r--r-- | usr/src/cmd/mdb/sun4v/modules/mdesc/mdesc.c | 5 |
5 files changed, 16 insertions, 13 deletions
diff --git a/usr/src/cmd/mdb/common/mdb/mdb_modapi.c b/usr/src/cmd/mdb/common/mdb/mdb_modapi.c index 133a32a889..48c731995c 100644 --- a/usr/src/cmd/mdb/common/mdb/mdb_modapi.c +++ b/usr/src/cmd/mdb/common/mdb/mdb_modapi.c @@ -1020,6 +1020,13 @@ mdb_dump_aux_partial(void *buf, size_t nbyte, uint64_t offset, void *arg) return (result); } +/* Default callback for mdb_dumpptr() is calling mdb_vread(). */ +static ssize_t +mdb_dumpptr_cb(void *buf, size_t nbytes, uintptr_t addr, void *arg __unused) +{ + return (mdb_vread(buf, nbytes, addr)); +} + int mdb_dumpptr(uintptr_t addr, size_t len, uint_t flags, mdb_dumpptr_cb_t fp, void *arg) @@ -1027,7 +1034,10 @@ mdb_dumpptr(uintptr_t addr, size_t len, uint_t flags, mdb_dumpptr_cb_t fp, dptrdat_t dat; d64dat_t dat64; - dat.func = fp; + if (fp == NULL) + dat.func = mdb_dumpptr_cb; + else + dat.func = fp; dat.arg = arg; dat64.func = mdb_dump_aux_ptr; dat64.arg = &dat; diff --git a/usr/src/cmd/mdb/common/modules/idm/idm.c b/usr/src/cmd/mdb/common/modules/idm/idm.c index 843f423b7f..072b7adbae 100644 --- a/usr/src/cmd/mdb/common/modules/idm/idm.c +++ b/usr/src/cmd/mdb/common/modules/idm/idm.c @@ -2352,8 +2352,7 @@ iscsi_print_iscsit_task_data(idm_task_t *idt) if (mdb_dumpptr((uintptr_t)scsi_task.task_cdb, scsi_task.task_cdb_length, MDB_DUMP_RELATIVE | MDB_DUMP_TRIM | - MDB_DUMP_GROUP(1), - (mdb_dumpptr_cb_t)mdb_vread, NULL)) { + MDB_DUMP_GROUP(1), NULL, NULL)) { mdb_printf("** Invalid CDB addr (%p)\n", scsi_task.task_cdb); } diff --git a/usr/src/cmd/mdb/common/modules/ipc/ipc.c b/usr/src/cmd/mdb/common/modules/ipc/ipc.c index 97102579cf..bc87716015 100644 --- a/usr/src/cmd/mdb/common/modules/ipc/ipc.c +++ b/usr/src/cmd/mdb/common/modules/ipc/ipc.c @@ -126,8 +126,7 @@ ipcperm(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv) #define MSG_SND_SIZE 0x1 static int msgq_check_for_waiters(list_t *walk_this, int min, int max, - int copy_wait, uintptr_t addr, int flag) - + int copy_wait, uintptr_t addr, int flag) { int found = 0; int ii; @@ -683,8 +682,7 @@ msgprint(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv) (uintptr_t)message.msg_addr, message.msg_size, MDB_DUMP_RELATIVE | MDB_DUMP_TRIM | MDB_DUMP_ASCII | MDB_DUMP_HEADER | - MDB_DUMP_GROUP(4), - (mdb_dumpptr_cb_t)mdb_vread, NULL)) { + MDB_DUMP_GROUP(4), NULL, NULL)) { mdb_dec_indent(CMN_INDENT); return (DCMD_ERR); } diff --git a/usr/src/cmd/mdb/common/modules/smbsrv/smbsrv.c b/usr/src/cmd/mdb/common/modules/smbsrv/smbsrv.c index 7fc4ec3afc..0d03e6b815 100644 --- a/usr/src/cmd/mdb/common/modules/smbsrv/smbsrv.c +++ b/usr/src/cmd/mdb/common/modules/smbsrv/smbsrv.c @@ -3258,8 +3258,7 @@ smb_mbuf_dump_dcmd(uintptr_t addr, uint_t flags, int argc, addr, mdata, mh.mh_len); dumpptr_flags = MDB_DUMP_RELATIVE | MDB_DUMP_ASCII | MDB_DUMP_HEADER; - if (mdb_dumpptr(mdata, len, dumpptr_flags, - (mdb_dumpptr_cb_t)mdb_vread, NULL) < 0) + if (mdb_dumpptr(mdata, len, dumpptr_flags, NULL, NULL) < 0) return (DCMD_ERR); return (DCMD_OK); diff --git a/usr/src/cmd/mdb/sun4v/modules/mdesc/mdesc.c b/usr/src/cmd/mdb/sun4v/modules/mdesc/mdesc.c index 5d9e3b8514..d0184bc7c8 100644 --- a/usr/src/cmd/mdb/sun4v/modules/mdesc/mdesc.c +++ b/usr/src/cmd/mdb/sun4v/modules/mdesc/mdesc.c @@ -23,8 +23,6 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #include <sys/time.h> #include <sys/sysmacros.h> @@ -221,8 +219,7 @@ mdformat(uintptr_t addr, int size, int indent) mdb_inc_indent(indent); if (mdb_dumpptr((uintptr_t)addr, size, MDB_DUMP_RELATIVE | MDB_DUMP_TRIM | MDB_DUMP_ASCII | - MDB_DUMP_HEADER | MDB_DUMP_GROUP(4), - (mdb_dumpptr_cb_t)mdb_vread, NULL)) { + MDB_DUMP_HEADER | MDB_DUMP_GROUP(4), NULL, NULL)) { mdb_dec_indent(indent); return (DCMD_ERR); } |
