diff options
| author | Sami Tolvanen <samitolvanen@google.com> | 2026-10-19 23:34:37 +0000 |
|---|---|---|
| committer | Miguel Ojeda <ojeda@kernel.org> | 2026-10-22 15:36:01 +0200 |
| commit | 01f3e6b4b1c8c1748e59ba53631ab1f5d9ad0ea4 (patch) | |
| tree | cca936cdf2eefa94160c98588185c580741af94c /scripts/basic | |
| parent | 6b704ec9007a3f23ec5ded8f320825ac444f307d (diff) | |
| download | linux-01f3e6b4b1c8c1748e59ba53631ab1f5d9ad0ea4.tar.gz linux-01f3e6b4b1c8c1748e59ba53631ab1f5d9ad0ea4.zip | |
rust: irq: declare cfi_encoding for irqreturn
The IRQ callbacks return c_uint. C calls them through irq_handler_t,
which returns enum irqreturn. kCFI encodes enum types by name even with
integer normalization, so the type ids never match and every call fails
the CFI check.
Generate irqreturn as a newtype with a cfi_encoding, as is done for
lru_status, and return bindings::irqreturn_t from the callbacks.
Fixes: 0851d34a8cc3 ("rust: irq: add support for non-threaded IRQs and handlers")
Fixes: 135d40523244 ("rust: irq: add support for threaded IRQs and handlers")
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
Reviewed-by: Alice Ryhl <aliceryhl@google.com>
Reviewed-by: Gary Guo <gary@garyguo.net>
Acked-by: Danilo Krummrich <dakr@kernel.org>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/20261019-rust-cfi-fixes-v1-1-9503472ba738@google.com
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
Diffstat (limited to 'scripts/basic')
0 files changed, 0 insertions, 0 deletions
