Cargo Features

per-CPU has no features set by default.

[dependencies]
percpu = { version = "0.4.0", features = ["sp-naive", "preempt", "arm-el2", "non-zero-vma"] }
sp-naive

For single CPU use, just make the per-CPU data a global variable.

Enables sp-naive of percpu_macros

preempt

Whether the system enables preemption.

Enables kernel_guard, preempt of percpu_macros

arm-el2

ARM specific, whether to run at the EL2 privilege level.

Enables arm-el2 of percpu_macros

non-zero-vma

Allow using non-zero VMA addresses for .percpu section. Required for testing on Linux user-space. May reduce performance slightly.

Enables non-zero-vma of percpu_macros