-
Notifications
You must be signed in to change notification settings - Fork 132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support kCFI + BPF on arm64 #8646
base: bpf-next_base
Are you sure you want to change the base?
Conversation
Upstream branch: 157a502 |
b7965ce
to
084fae2
Compare
Upstream branch: 233732b |
57c5bc8
to
f6bcd3e
Compare
084fae2
to
474f6ed
Compare
Upstream branch: a68894a |
f6bcd3e
to
9993842
Compare
474f6ed
to
44c3a1d
Compare
Upstream branch: be741c7 |
9993842
to
0a91407
Compare
44c3a1d
to
720c696
Compare
Currently x86 and riscv open-code 4 instances of the same logic to define a u32 variable with the KCFI typeid of a given function. Replace the duplicate logic with a common macro. Signed-off-by: Mark Rutland <[email protected]> Co-Developed-by: Maxwell Bland <[email protected]> Signed-off-by: Maxwell Bland <[email protected]> Co-Developed-by: Sami Tolvanen <[email protected]> Signed-off-by: Sami Tolvanen <[email protected]>
Currently, bpf_dispatcher_*_func() is marked with `__nocfi` therefore calling BPF programs from this interface doesn't cause CFI warnings. When BPF programs are called directly from C: from BPF helpers or struct_ops, CFI warnings are generated. Implement proper CFI prologues for the BPF programs and callbacks and drop __nocfi for arm64. Fix the trampoline generation code to emit kCFI prologue when a struct_ops trampoline is being prepared. Signed-off-by: Puranjay Mohan <[email protected]> Co-Developed-by: Maxwell Bland <[email protected]> Signed-off-by: Maxwell Bland <[email protected]> Co-Developed-by: Sami Tolvanen <[email protected]> Signed-off-by: Sami Tolvanen <[email protected]>
Upstream branch: 46d38f4 |
0a91407
to
04fc3bb
Compare
Pull request for series with
subject: Support kCFI + BPF on arm64
version: 8
url: https://patchwork.kernel.org/project/netdevbpf/list/?series=942483