> On Jun 28, 2019, at 12:41 PM, Yu-cheng Yu <yu-cheng.yu@xxxxxxxxx> wrote: > > The previous discussion of the IBT legacy code bitmap is here: > > https://lkml.org/lkml/2019/6/6/1032 > > When CET Indirect Branch Tracking (IBT) is enabled, the processor expects > every branch target is an ENDBR instruction, or the target's address is > marked as legacy in the legacy code bitmap. The bitmap covers the whole > user-mode address space (TASK_SIZE_MAX for 64-bit, TASK_SIZE for IA32), > and each bit represents one page of linear address range. > > This patch introduces VM_IBT for the bitmap. There’s no need to allocate a bit for this and to clutter up the fault code with special cases. Use _install_special_mapping(), please. If you need to make it more flexible to cover your use case, please do so.