Commit a02a532c authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

Pull arm64 fixes from Will Deacon:
 "Another round of mostly-benign fixes, the exception being a boot crash
  on SVE2-capable CPUs (although I don't know where you'd find such a
  thing, so maybe it's benign too).

  We're in the process of resolving some big-endian ptrace breakage, so
  I'll probably have some more for you next week.

  Summary:

   - Fix boot crash on platforms with SVE2 due to missing register
     encoding

   - Fix architected timer accessors when CONFIG_OPTIMIZE_INLINING=y

   - Move cpu_logical_map into smp.h for use by upcoming irqchip drivers

   - Trivial typo fix in comment

   - Disable some useless, noisy warnings from GCC 9"

* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
  arm64: Silence gcc warnings about arch ABI drift
  ARM64: trivial: s/TIF_SECOMP/TIF_SECCOMP/ comment typo fix
  arm64: arch_timer: mark functions as __always_inline
  arm64: smp: Moved cpu_logical_map[] to smp.h
  arm64: cpufeature: Fix missing ZFR0 in __read_sysreg_by_encoding()
parents 16d72dd4 ebcc5928
...@@ -51,6 +51,7 @@ endif ...@@ -51,6 +51,7 @@ endif
KBUILD_CFLAGS += -mgeneral-regs-only $(lseinstr) $(brokengasinst) KBUILD_CFLAGS += -mgeneral-regs-only $(lseinstr) $(brokengasinst)
KBUILD_CFLAGS += -fno-asynchronous-unwind-tables KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
KBUILD_CFLAGS += -Wno-psabi
KBUILD_AFLAGS += $(lseinstr) $(brokengasinst) KBUILD_AFLAGS += $(lseinstr) $(brokengasinst)
KBUILD_CFLAGS += $(call cc-option,-mabi=lp64) KBUILD_CFLAGS += $(call cc-option,-mabi=lp64)
......
...@@ -193,7 +193,7 @@ static inline void arch_timer_set_cntkctl(u32 cntkctl) ...@@ -193,7 +193,7 @@ static inline void arch_timer_set_cntkctl(u32 cntkctl)
: "=r" (tmp) : "r" (_val)); \ : "=r" (tmp) : "r" (_val)); \
} while (0) } while (0)
static inline u64 __arch_counter_get_cntpct_stable(void) static __always_inline u64 __arch_counter_get_cntpct_stable(void)
{ {
u64 cnt; u64 cnt;
...@@ -203,7 +203,7 @@ static inline u64 __arch_counter_get_cntpct_stable(void) ...@@ -203,7 +203,7 @@ static inline u64 __arch_counter_get_cntpct_stable(void)
return cnt; return cnt;
} }
static inline u64 __arch_counter_get_cntpct(void) static __always_inline u64 __arch_counter_get_cntpct(void)
{ {
u64 cnt; u64 cnt;
...@@ -213,7 +213,7 @@ static inline u64 __arch_counter_get_cntpct(void) ...@@ -213,7 +213,7 @@ static inline u64 __arch_counter_get_cntpct(void)
return cnt; return cnt;
} }
static inline u64 __arch_counter_get_cntvct_stable(void) static __always_inline u64 __arch_counter_get_cntvct_stable(void)
{ {
u64 cnt; u64 cnt;
...@@ -223,7 +223,7 @@ static inline u64 __arch_counter_get_cntvct_stable(void) ...@@ -223,7 +223,7 @@ static inline u64 __arch_counter_get_cntvct_stable(void)
return cnt; return cnt;
} }
static inline u64 __arch_counter_get_cntvct(void) static __always_inline u64 __arch_counter_get_cntvct(void)
{ {
u64 cnt; u64 cnt;
......
...@@ -53,6 +53,12 @@ DECLARE_PER_CPU_READ_MOSTLY(int, cpu_number); ...@@ -53,6 +53,12 @@ DECLARE_PER_CPU_READ_MOSTLY(int, cpu_number);
*/ */
#define raw_smp_processor_id() (*raw_cpu_ptr(&cpu_number)) #define raw_smp_processor_id() (*raw_cpu_ptr(&cpu_number))
/*
* Logical CPU mapping.
*/
extern u64 __cpu_logical_map[NR_CPUS];
#define cpu_logical_map(cpu) __cpu_logical_map[cpu]
struct seq_file; struct seq_file;
/* /*
......
...@@ -36,11 +36,6 @@ static inline u32 mpidr_hash_size(void) ...@@ -36,11 +36,6 @@ static inline u32 mpidr_hash_size(void)
return 1 << mpidr_hash.bits; return 1 << mpidr_hash.bits;
} }
/*
* Logical CPU mapping.
*/
extern u64 __cpu_logical_map[NR_CPUS];
#define cpu_logical_map(cpu) __cpu_logical_map[cpu]
/* /*
* Retrieve logical cpu index corresponding to a given MPIDR.Aff* * Retrieve logical cpu index corresponding to a given MPIDR.Aff*
* - mpidr: MPIDR.Aff* bits to be used for the look-up * - mpidr: MPIDR.Aff* bits to be used for the look-up
......
...@@ -75,7 +75,7 @@ void arch_release_task_struct(struct task_struct *tsk); ...@@ -75,7 +75,7 @@ void arch_release_task_struct(struct task_struct *tsk);
* TIF_SYSCALL_TRACE - syscall trace active * TIF_SYSCALL_TRACE - syscall trace active
* TIF_SYSCALL_TRACEPOINT - syscall tracepoint for ftrace * TIF_SYSCALL_TRACEPOINT - syscall tracepoint for ftrace
* TIF_SYSCALL_AUDIT - syscall auditing * TIF_SYSCALL_AUDIT - syscall auditing
* TIF_SECOMP - syscall secure computing * TIF_SECCOMP - syscall secure computing
* TIF_SIGPENDING - signal pending * TIF_SIGPENDING - signal pending
* TIF_NEED_RESCHED - rescheduling necessary * TIF_NEED_RESCHED - rescheduling necessary
* TIF_NOTIFY_RESUME - callback before returning to user * TIF_NOTIFY_RESUME - callback before returning to user
......
...@@ -830,6 +830,7 @@ static u64 __read_sysreg_by_encoding(u32 sys_id) ...@@ -830,6 +830,7 @@ static u64 __read_sysreg_by_encoding(u32 sys_id)
read_sysreg_case(SYS_ID_AA64PFR0_EL1); read_sysreg_case(SYS_ID_AA64PFR0_EL1);
read_sysreg_case(SYS_ID_AA64PFR1_EL1); read_sysreg_case(SYS_ID_AA64PFR1_EL1);
read_sysreg_case(SYS_ID_AA64ZFR0_EL1);
read_sysreg_case(SYS_ID_AA64DFR0_EL1); read_sysreg_case(SYS_ID_AA64DFR0_EL1);
read_sysreg_case(SYS_ID_AA64DFR1_EL1); read_sysreg_case(SYS_ID_AA64DFR1_EL1);
read_sysreg_case(SYS_ID_AA64MMFR0_EL1); read_sysreg_case(SYS_ID_AA64MMFR0_EL1);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment