[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH 06/28] x86/percpu: Get rid of absolute per-CPU variable placement
 
- To: Ard Biesheuvel <ardb+git@xxxxxxxxxx>
 
- From: "Christoph Lameter (Ampere)" <cl@xxxxxxxxxx>
 
- Date: Wed, 25 Sep 2024 10:56:38 -0700 (PDT)
 
- Cc: linux-kernel@xxxxxxxxxxxxxxx, Ard Biesheuvel <ardb@xxxxxxxxxx>,     x86@xxxxxxxxxx, "H. Peter Anvin" <hpa@xxxxxxxxx>,     Andy Lutomirski <luto@xxxxxxxxxx>, Peter Zijlstra <peterz@xxxxxxxxxxxxx>,     Uros Bizjak <ubizjak@xxxxxxxxx>, Dennis Zhou <dennis@xxxxxxxxxx>,     Tejun Heo <tj@xxxxxxxxxx>,     Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>,     Paolo Bonzini <pbonzini@xxxxxxxxxx>,     Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>,     Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>,     Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>,     Arnd Bergmann <arnd@xxxxxxxx>, Masahiro Yamada <masahiroy@xxxxxxxxxx>,     Kees Cook <kees@xxxxxxxxxx>, Nathan Chancellor <nathan@xxxxxxxxxx>,     Keith Packard <keithp@xxxxxxxxxx>, Justin Stitt <justinstitt@xxxxxxxxxx>,     Josh Poimboeuf <jpoimboe@xxxxxxxxxx>,     Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>,     Namhyung Kim <namhyung@xxxxxxxxxx>, Jiri Olsa <jolsa@xxxxxxxxxx>,     Ian Rogers <irogers@xxxxxxxxxx>, Adrian Hunter <adrian.hunter@xxxxxxxxx>,     Kan Liang <kan.liang@xxxxxxxxxxxxxxx>, linux-doc@xxxxxxxxxxxxxxx,     linux-pm@xxxxxxxxxxxxxxx, kvm@xxxxxxxxxxxxxxx,     xen-devel@xxxxxxxxxxxxxxxxxxxx, linux-efi@xxxxxxxxxxxxxxx,     linux-arch@xxxxxxxxxxxxxxx, linux-sparse@xxxxxxxxxxxxxxx,     linux-kbuild@xxxxxxxxxxxxxxx, linux-perf-users@xxxxxxxxxxxxxxx,     rust-for-linux@xxxxxxxxxxxxxxx, llvm@xxxxxxxxxxxxxxx
 
- Delivery-date: Wed, 25 Sep 2024 18:29:06 +0000
 
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
 
 
 
On Wed, 25 Sep 2024, Ard Biesheuvel wrote:
> The x86_64 approach was needed to accommodate per-task stack protector
> cookies, which used to live at a fixed offset of GS+40, requiring GS to
> be treated as a base register. This is no longer the case, though, and
> so GS can be repurposed as a true per-CPU offset, adopting the same
> strategy as other architectures.
>
> This also removes the need for linker tricks to emit the per-CPU ELF
> segment at a different virtual address. It also means RIP-relative
> per-CPU variables no longer need to be relocated in the opposite
> direction when KASLR is applied, which was necessary because the 0x0
> based per-CPU region remains in place even when the kernel is moved
> around.
Looks like a good cleanup. Hope it does not break anything that relies on
structures %GS points to.
Reviewed-by: Christoph Lameter <cl@xxxxxxxxx>
 
 
    
     |