From: Deepak Gupta <debug@rivosinc.com>
To: opensbi@lists.infradead.org
Subject: [PATCH v2 Zisslpcfi 0/2] Support for zisslpcfi in opensbi
Date: Wed, 21 Dec 2022 11:55:33 -0800 [thread overview]
Message-ID: <20221221195535.2136015-1-debug@rivosinc.com> (raw)
Zisslpcfi [1] extension extends risc-v architecture to mitigate against
control-flow integrity attacks (ROP/JOP/COP).
Zisslpcfi uses bits (b23-b29) in (m/s/vs) status CSR for enabling cfi in
lesser privileged mode and record cfi state. One such state is expected
landing pad (ELP). If forward cfi is enabled, indirect call/jmp updates
hart's ELP state (1bit) to true. ELP state is cleared only by a landing
pad instruction else trap is delivered with ELP state recorded in sstatus
CSR.
This two patch series adds following changes to opensbi
- Adds support in opensbi to detect zisslpcfi
- trap redirection updates ELP state accordingly
Qemu implementation for Zisslpcfi can be checked out on github [2]
Strawman linux kernel enabling (still very early) can be checked out on github [3]
[1] - https://github.com/riscv/riscv-cfi
[2] - https://github.com/deepak0414/qemu/tree/gh_Zisslpcfi-0.1
[3] - https://github.com/deepak0414/linux-riscv-cfi/tree/Zisslpcfi-0.1_v6.1-rc2
Deepak Gupta (2):
include: adding support for Zisslpcfi encodings
lib: sbi: Zisslpcfi detection and elp cfi state reflect back in status
include/sbi/riscv_encoding.h | 6 ++++++
include/sbi/sbi_hart.h | 2 ++
lib/sbi/sbi_hart.c | 21 +++++++++++++++++++++
lib/sbi/sbi_trap.c | 18 ++++++++++++++++++
4 files changed, 47 insertions(+)
--
2.25.1
next reply other threads:[~2022-12-21 19:55 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-21 19:55 Deepak Gupta [this message]
2022-12-21 19:55 ` [PATCH v2 Zisslpcfi 1/2] include: adding support for Zisslpcfi encodings Deepak Gupta
2022-12-21 19:55 ` [PATCH v2 Zisslpcfi 2/2] lib: sbi: Zisslpcfi detection and elp cfi state reflect back in status Deepak Gupta
2022-12-21 23:38 ` [PATCH v2 Zisslpcfi 0/2] Support for zisslpcfi in opensbi Deepak Gupta
2023-01-06 12:05 ` Anup Patel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20221221195535.2136015-1-debug@rivosinc.com \
--to=debug@rivosinc.com \
--cc=opensbi@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox