Debug helpers for BNX2X Poor-ftrace is too noisy without some blacklisted functions, at least for bnx2x. The FP / PC print is useful if you're concerned about running off the stack.
diff --git a/kern/arch/x86/kdebug.c b/kern/arch/x86/kdebug.c index 1e6178e..0a145e2 100644 --- a/kern/arch/x86/kdebug.c +++ b/kern/arch/x86/kdebug.c
@@ -314,6 +314,7 @@ while (fp && nr_pcs < nr_slots) { /* could put some sanity checks in here... */ pcs[nr_pcs++] = pc; + printd("PC %p FP %p\n", pc, fp); if (!is_kaddr((void*)fp)) break; /* PC becomes the retaddr - 1. the -1 is to put our PC back inside the
diff --git a/kern/src/kdebug.c b/kern/src/kdebug.c index 87f8132..5890731 100644 --- a/kern/src/kdebug.c +++ b/kern/src/kdebug.c
@@ -62,6 +62,26 @@ "limborexmit", "rangecompare", "walkadd", + "bnx2x_alloc_rx_data", + "bnx2x_frag_alloc", + "__dma_map_single", + "__dma_mapping_error", + "__dma_zalloc_coherent", + "__dma_alloc_coherent", + "bnx2x_ilt_line_mem_op", + "bnx2x_ilt_line_init_op", + "bnx2x_ilt_line_wr", + "bnx2x_wr_64", + "pci_write_config_dword", + "bnx2x_init_str_wr", + "bnx2x_init_fill", + "bnx2x_init_block", + "bnx2x_write_big_buf", + "bnx2x_init_wr_wb", + "bnx2x_write_big_buf_wb", + "bnx2x_cl45_read", + "bnx2x_cl45_write", + "bnx2x_set_mdio_clk", }; static bool is_blacklisted(const char *s)