android_kernel_oneplus_msm8998/arch
Mark Salyzyn 661b6c4a47 FROMLIST: [PATCH v5 03/12] arm: vdso: inline assembler operations to compiler.h
(cherry picked from commit https://patchwork.kernel.org/patch/10044507/)

Take an effort to recode the arm64 vdso code from assembler to C
previously submitted by Andrew Pinski <apinski@cavium.com>, rework
it for use in both arm and arm64, overlapping any optimizations
for each architecture. But instead of landing it in arm64, land the
result into lib/vdso and unify both implementations to simplify
future maintenance.

Move compiler-specific code to a local compiler.h file:

- CONFIG_AEABI dependency check.
- System call fallback functions standardized into a
  DEFINE_FALLBACK macro.
- Replace arch_counter_get_cntvct() with arch_vdso_read_counter.
- Deal with architecture specific unresolved references emitted
  by GCC.
- Optimize handling of fallback calls in callers.
- For time functions that always return success, do not waste time
  checking return value for switch to fallback.
- Optimize unlikely nullptr checking in __vdso_gettimeofday,
  if tv null no need to proceed to fallback, as vdso is still
  capable of filling in the tv values.

Signed-off-by: Mark Salyzyn <salyzyn@android.com>
Cc: James Morse <james.morse@arm.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Dmitry Safonov <dsafonov@virtuozzo.com>
Cc: John Stultz <john.stultz@linaro.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Laura Abbott <labbott@redhat.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Andy Gross <andy.gross@linaro.org>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Andrew Pinski <apinski@cavium.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Bug: 63737556
Bug: 20045882
Change-Id: I468e4c32b5136d199982bf25df8967321e384d90
2020-11-03 21:30:41 +01:00
..
alpha Merge android-4.4.175 (08d5867) into msm-4.4 2019-02-22 12:13:06 +05:30
arc Merge android-4.4-p.204 (583bdda) into msm-4.4 2019-12-02 10:58:49 +05:30
arm FROMLIST: [PATCH v5 03/12] arm: vdso: inline assembler operations to compiler.h 2020-11-03 21:30:41 +01:00
arm64 FROMLIST: [PATCH v2 3/3] arm64: compat: Add CONFIG_KUSER_HELPERS 2020-11-03 21:30:40 +01:00
avr32
blackfin
c6x
cris This is the 4.4.168 stable release 2018-12-19 19:22:06 +01:00
frv Merge android-4.4.133 (3f51ea2) into msm-4.4 2018-05-31 12:28:38 +05:30
h8300 This is the 4.4.179 stable release 2019-04-30 14:00:18 +02:00
hexagon Merge android-4.4.160 (a94efb1) into msm-4.4 2018-10-15 14:30:20 +05:30
ia64 Merge android-4.4-p.195 (4af3204) into msm-4.4 2019-10-30 16:27:01 +05:30
m32r
m68k This is the 4.4.185 stable release 2019-07-10 12:57:28 +02:00
metag
microblaze Merge android-4.4.146 (13962260) into msm-4.4 2018-08-07 15:36:56 +05:30
mips Merge android-4.4-p.203 (40ef73d) into msm-4.4 2019-11-26 10:42:36 +05:30
mn10300
nios2
openrisc Merge android-4.4.157 (c139ea66) into msm-4.4 2018-09-28 12:12:40 +05:30
parisc Merge android-4.4-p.198 (dbd0162) into msm-4.4 2019-10-30 16:41:31 +05:30
powerpc Merge android-4.4-p.204 (583bdda) into msm-4.4 2019-12-02 10:58:49 +05:30
s390 Merge android-4.4-p.204 (583bdda) into msm-4.4 2019-12-02 10:58:49 +05:30
score
sh Merge android-4.4.190 (ac7fbca) into msm-4.4 2019-08-26 11:17:20 +05:30
sparc Merge android-4.4-p.204 (583bdda) into msm-4.4 2019-12-02 10:58:49 +05:30
tile Merge android-4.4.166 (4c4bedf) into msm-4.4 2018-12-03 11:29:54 +05:30
um Merge android-4.4-p.204 (583bdda) into msm-4.4 2019-12-02 10:58:49 +05:30
unicore32
x86 Merge android-4.4-p.204 (583bdda) into msm-4.4 2019-12-02 10:58:49 +05:30
xtensa Merge android-4.4-p.198 (dbd0162) into msm-4.4 2019-10-30 16:41:31 +05:30
.gitignore
Kconfig