misc: add a couple useful functions for gdb 58/28658/4
authorChristian Hopps <chopps@labn.net>
Mon, 13 Jul 2020 15:57:27 +0000 (11:57 -0400)
committerDave Barach <openvpp@barachs.net>
Thu, 10 Dec 2020 12:59:27 +0000 (12:59 +0000)
- vgb() (vlib_get_buffer)
- ph() (pool_header)

Type: feature
Signed-off-by: Christian Hopps <chopps@labn.net>
Change-Id: Ica954480a7809c918cf65b06a0333ebe246a6f3a

src/vnet/unix/gdb_funcs.c

index 29011f0..3f2d54d 100644 (file)
@@ -66,6 +66,20 @@ pe (void *v)
   return (pool_elts (v));
 }
 
+/**
+ * @brief GDB callable function: ph - call pool_header - get pool header.
+ *
+ * @param *p - void - address of pool
+ *
+ * @return pool_header_t
+ *
+ */
+pool_header_t *
+ph (void *p)
+{
+  return pool_header (p);
+}
+
 /**
  * @brief GDB callable function: pifi - call pool_is_free_index - is passed index free?
  *
@@ -288,7 +302,10 @@ show_gdb_command_fn (vlib_main_t * vm,
   vlib_cli_output (vm, "vb(b) returns vnet_buffer(b) [opaque]");
   vlib_cli_output (vm, "vb2(b) returns vnet_buffer2(b) [opaque2]");
   vlib_cli_output (vm, "vbi(b) returns b index");
+  vlib_cli_output (vm,
+                  "vgb(bi) returns vlib_get_buffer(vlib_get_main(), bi)");
   vlib_cli_output (vm, "pe(p) returns pool_elts(p)");
+  vlib_cli_output (vm, "ph(p) returns pool_header(p)");
   vlib_cli_output (vm, "pifi(p, i) returns pool_is_free_index(p, i)");
   vlib_cli_output (vm, "gdb_show_errors(0|1) dumps error counters");
   vlib_cli_output (vm, "gdb_show_session dumps session counters");
@@ -309,6 +326,12 @@ VLIB_CLI_COMMAND (show_gdb_funcs_command, static) = {
 };
 /* *INDENT-ON* */
 
+vlib_buffer_t *
+vgb (u32 bi)
+{
+  return vlib_get_buffer (vlib_get_main (), bi);
+}
+
 vnet_buffer_opaque_t *
 vb (void *vb_arg)
 {