aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorBjoern A. Zeeb <bz@FreeBSD.org>2016-05-18 14:43:17 +0000
committerBjoern A. Zeeb <bz@FreeBSD.org>2016-05-18 14:43:17 +0000
commit5fa0728b7d572e3f46d7ba8169d2a5da75344a0a (patch)
tree5b3d51839ed50014eeede49735a94445303249ad /sys
parentaaeb188af3f53b78b946ea5eb785f28536876bc5 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/net/vnet.c44
1 files changed, 31 insertions, 13 deletions
diff --git a/sys/net/vnet.c b/sys/net/vnet.c
index d34a2ee7a3e9a..5632949568f86 100644
--- a/sys/net/vnet.c
+++ b/sys/net/vnet.c
@@ -690,27 +690,45 @@ vnet_log_recursion(struct vnet *old_vnet, const char *old_fn, int line)
* DDB(4).
*/
#ifdef DDB
-DB_SHOW_COMMAND(vnets, db_show_vnets)
+static void
+db_vnet_print(struct vnet *vnet)
+{
+
+ db_printf("vnet = %p\n", vnet);
+ db_printf(" vnet_magic_n = %#08x (%s, orig %#08x)\n",
+ vnet->vnet_magic_n,
+ (vnet->vnet_magic_n == VNET_MAGIC_N) ?
+ "ok" : "mismatch", VNET_MAGIC_N);
+ db_printf(" vnet_ifcnt = %u\n", vnet->vnet_ifcnt);
+ db_printf(" vnet_sockcnt = %u\n", vnet->vnet_sockcnt);
+ db_printf(" vnet_data_mem = %p\n", vnet->vnet_data_mem);
+ db_printf(" vnet_data_base = %#jx\n",
+ (uintmax_t)vnet->vnet_data_base);
+ db_printf("\n");
+}
+
+DB_SHOW_ALL_COMMAND(vnets, db_show_all_vnets)
{
VNET_ITERATOR_DECL(vnet_iter);
VNET_FOREACH(vnet_iter) {
- db_printf("vnet = %p\n", vnet_iter);
- db_printf(" vnet_magic_n = 0x%x (%s, orig 0x%x)\n",
- vnet_iter->vnet_magic_n,
- (vnet_iter->vnet_magic_n == VNET_MAGIC_N) ?
- "ok" : "mismatch", VNET_MAGIC_N);
- db_printf(" vnet_ifcnt = %u\n", vnet_iter->vnet_ifcnt);
- db_printf(" vnet_sockcnt = %u\n", vnet_iter->vnet_sockcnt);
- db_printf(" vnet_data_mem = %p\n", vnet_iter->vnet_data_mem);
- db_printf(" vnet_data_base = 0x%jx\n",
- (uintmax_t)vnet_iter->vnet_data_base);
- db_printf("\n");
+ db_vnet_print(vnet_iter);
if (db_pager_quit)
break;
}
}
+DB_SHOW_COMMAND(vnet, db_show_vnet)
+{
+
+ if (!have_addr) {
+ db_printf("usage: show vnet <struct vnet *>\n");
+ return;
+ }
+
+ db_vnet_print((struct vnet *)addr);
+}
+
static void
db_show_vnet_print_vs(struct vnet_sysinit *vs, int ddb)
{
@@ -734,7 +752,7 @@ db_show_vnet_print_vs(struct vnet_sysinit *vs, int ddb)
sym = db_search_symbol((vm_offset_t)vs->func, DB_STGY_PROC, &offset);
db_symbol_values(sym, &funcname, NULL);
xprint("%s(%p)\n", (vsname != NULL) ? vsname : "", vs);
- xprint(" 0x%08x 0x%08x\n", vs->subsystem, vs->order);
+ xprint(" %#08x %#08x\n", vs->subsystem, vs->order);
xprint(" %p(%s)(%p)\n",
vs->func, (funcname != NULL) ? funcname : "", vs->arg);
#undef xprint