Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 6 May 2021 16:28:07 +0000 (09:28 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 6 May 2021 16:28:07 +0000 (09:28 -0700)
Pull ARM updates from Russell King:

 - Fix BSS size calculation for LLVM

 - Improve robustness of kernel entry around v7_invalidate_l1

 - Fix and update kprobes assembly

 - Correct breakpoint overflow handler check

 - Pause function graph tracer when suspending a CPU

 - Switch to generic syscallhdr.sh and syscalltbl.sh

 - Remove now unused set_kernel_text_r[wo] functions

 - Updates for ptdump (__init marking and using DEFINE_SHOW_ATTRIBUTE)

 - Fix for interrupted SMC (secure) calls

 - Remove Compaq Personal Server platform

* tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
  ARM: footbridge: remove personal server platform
  ARM: 9075/1: kernel: Fix interrupted SMC calls
  ARM: 9074/1: ptdump: convert to DEFINE_SHOW_ATTRIBUTE
  ARM: 9073/1: ptdump: add __init section marker to three functions
  ARM: 9072/1: mm: remove set_kernel_text_r[ow]()
  ARM: 9067/1: syscalls: switch to generic syscallhdr.sh
  ARM: 9068/1: syscalls: switch to generic syscalltbl.sh
  ARM: 9066/1: ftrace: pause/unpause function graph tracer in cpu_suspend()
  ARM: 9064/1: hw_breakpoint: Do not directly check the event's overflow_handler hook
  ARM: 9062/1: kprobes: rewrite test-arm.c in UAL
  ARM: 9061/1: kprobes: fix UNPREDICTABLE warnings
  ARM: 9060/1: kexec: Remove unused kexec_reinit callback
  ARM: 9059/1: cache-v7: get rid of mini-stack
  ARM: 9058/1: cache-v7: refactor v7_invalidate_l1 to avoid clobbering r5/r6
  ARM: 9057/1: cache-v7: add missing ISB after cache level selection
  ARM: 9056/1: decompressor: fix BSS size calculation for LLVM ld.lld

1  2 
arch/arm/mm/init.c

diff --combined arch/arm/mm/init.c
index 1ba9f9f9dbd8e458607d819fcd3287453b165646,039c19597c7a4d2bbbfa3eb1af373311a3f52616..9d4744a632c60623dc1a6ef277bda4f6c94dd4d4
@@@ -301,11 -301,7 +301,11 @@@ static void __init free_highpages(void
  void __init mem_init(void)
  {
  #ifdef CONFIG_ARM_LPAE
 -      swiotlb_init(1);
 +      if (swiotlb_force == SWIOTLB_FORCE ||
 +          max_pfn > arm_dma_pfn_limit)
 +              swiotlb_init(1);
 +      else
 +              swiotlb_force = SWIOTLB_NO_FORCE;
  #endif
  
        set_max_mapnr(pfn_to_page(max_pfn) - mem_map);
  
        free_highpages();
  
 -      mem_init_print_info(NULL);
 -
        /*
         * Check boundaries twice: Some fundamental inconsistencies can
         * be detected at build time already.
@@@ -489,33 -487,12 +489,12 @@@ static int __mark_rodata_ro(void *unuse
        return 0;
  }
  
- static int kernel_set_to_readonly __read_mostly;
  void mark_rodata_ro(void)
  {
-       kernel_set_to_readonly = 1;
        stop_machine(__mark_rodata_ro, NULL, NULL);
        debug_checkwx();
  }
  
- void set_kernel_text_rw(void)
- {
-       if (!kernel_set_to_readonly)
-               return;
-       set_section_perms(ro_perms, ARRAY_SIZE(ro_perms), false,
-                               current->active_mm);
- }
- void set_kernel_text_ro(void)
- {
-       if (!kernel_set_to_readonly)
-               return;
-       set_section_perms(ro_perms, ARRAY_SIZE(ro_perms), true,
-                               current->active_mm);
- }
  #else
  static inline void fix_kernmem_perms(void) { }
  #endif /* CONFIG_STRICT_KERNEL_RWX */