summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bcachefs.rs2
-rw-r--r--src/dump_stack.rs6
2 files changed, 8 insertions, 0 deletions
diff --git a/src/bcachefs.rs b/src/bcachefs.rs
index 9774ddca..f49f9195 100644
--- a/src/bcachefs.rs
+++ b/src/bcachefs.rs
@@ -1,5 +1,6 @@
mod commands;
mod key;
+mod dump_stack;
mod logging;
mod wrappers;
@@ -49,6 +50,7 @@ fn handle_c_command(mut argv: Vec<String>, symlink_cmd: Option<&str>) -> i32 {
"format" => c::cmd_format(argc, argv),
"fs" => c::fs_cmds(argc, argv),
"fsck" => c::cmd_fsck(argc, argv),
+ "recovery-pass" => c::cmd_recovery_pass(argc, argv),
"image" => c::image_cmds(argc, argv),
"list_journal" => c::cmd_list_journal(argc, argv),
"kill_btree_node" => c::cmd_kill_btree_node(argc, argv),
diff --git a/src/dump_stack.rs b/src/dump_stack.rs
new file mode 100644
index 00000000..35f0ee27
--- /dev/null
+++ b/src/dump_stack.rs
@@ -0,0 +1,6 @@
+// This will show C frames in the backtrace
+#[no_mangle]
+pub extern "C" fn dump_stack() {
+ let bt = std::backtrace::Backtrace::force_capture();
+ println!("{}", bt);
+}