Skip to content

Update Config::wasm_backtrace in the face of fp-based unwinding #4554

@alexcrichton

Description

@alexcrichton

With the reimplementation of backtraces in WebAssembly in #4431 there's a few updates to Config which I think would be good to do. For example:

  • Config::wasm_backtrace shouldn't be needed any longer in theory. That being said we may wish to leave it around at least temporarily in case anyone runs into issues with fp-based unwinding.
  • Emission of native debug information (e.g. .eh_frame and .xdata/.pdata) is now separable from wasm backtraces.
  • Registration of .eh_frame and native information on module load time is also separable from wasm backtraces.

I think that we should deprecate Config::wasm_backtrace with a message saying "it will always be enabled in the future, if that causes issues let us know". Additionally I think we can add something like Config::native_unwind_info which defaults to true and configures whether unwinding information is generated and/or registered with the OS. I think this should still be true by default to assist features like RUST_BACKTRACE or anyone else who reads that registered information, but the documentation for this config can indicate that disabling has no impact on Wasmtime itself in terms of features and functionality provided.

Metadata

Metadata

Assignees

No one assigned

    Labels

    wasmtimeIssues about wasmtime that don't fall into another label

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions