bytecodealliance / bytecodealliance/rustix

speculative_feature_state should not return Ok(None)

Open
#1,470 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
2.1k
Forks
294
Avg merge
4h 7m
Merged PRs (30d)
2

Description

The return type of `speculative_feature_state` is `Result>`.

The return logic is
- error -> `Err(Errno)`
- success, value known by rustix -> `Ok(Some(SpeculationFeatureState))`
- success, value not known by rustix -> `Ok(None)`

The third cases isn't useful at all. We should either return the raw kernel answer, possibly inside SpeculationFeatureState, or treat this as an error. The only thing you know is that the operation was successful (known by the kernel and no permission error).

I presume this was meant to return the "not vulnerable" case. However this is indistinguishable from "new kernel value".

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.