]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: gcs: use the new common vm_mmap_shadow_stack() helper
authorCatalin Marinas <catalin.marinas@arm.com>
Wed, 25 Feb 2026 16:13:59 +0000 (16:13 +0000)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 5 Apr 2026 20:53:05 +0000 (13:53 -0700)
Replace the arm64 map_shadow_stack() content with a call to
vm_mmap_shadow_stack().  There is no functional change.

Link: https://lkml.kernel.org/r/20260225161404.3157851-3-catalin.marinas@arm.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: David Hildenbrand (Arm) <david@kernel.org>
Reviewed-by: Mark Brown <broonie@kernel.org>
Cc: Will Deacon <will@kernel.org>
Cc: Albert Ou <aou@eecs.berkeley.edu>
Cc: Alexandre Ghiti <alex@ghiti.fr>
Cc: "Borislav Petkov (AMD)" <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Deepak Gupta <debug@rivosinc.com>
Cc: "Edgecombe, Rick P" <rick.p.edgecombe@intel.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "Liam R. Howlett" <Liam.Howlett@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Paul Walmsley <pjw@kernel.org>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Thomas Gleixner <tglx@kernel.org>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
arch/arm64/mm/gcs.c

index 04a23a497f2051da7676d52176ed72959f634d6f..680749611a9a08a15831af5acbcda77811f1a08d 100644 (file)
 
 static unsigned long alloc_gcs(unsigned long addr, unsigned long size)
 {
-       int flags = MAP_ANONYMOUS | MAP_PRIVATE;
-       struct mm_struct *mm = current->mm;
-       unsigned long mapped_addr, unused;
-
-       if (addr)
-               flags |= MAP_FIXED_NOREPLACE;
-
-       mmap_write_lock(mm);
-       mapped_addr = do_mmap(NULL, addr, size, PROT_READ, flags,
-                             VM_SHADOW_STACK | VM_WRITE, 0, &unused, NULL);
-       mmap_write_unlock(mm);
-
-       return mapped_addr;
+       return vm_mmap_shadow_stack(addr, size, 0);
 }
 
 static unsigned long gcs_size(unsigned long size)