| .. | .. |
|---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * Copyright (C) 1995-2003 Russell King |
|---|
| 3 | 4 | * 2001-2002 Keith Owens |
|---|
| .. | .. |
|---|
| 5 | 6 | * Generate definitions needed by assembly language modules. |
|---|
| 6 | 7 | * This code generates raw asm output which is post-processed to extract |
|---|
| 7 | 8 | * and format the required data. |
|---|
| 8 | | - * |
|---|
| 9 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 10 | | - * it under the terms of the GNU General Public License version 2 as |
|---|
| 11 | | - * published by the Free Software Foundation. |
|---|
| 12 | 9 | */ |
|---|
| 13 | 10 | #include <linux/compiler.h> |
|---|
| 14 | 11 | #include <linux/sched.h> |
|---|
| 15 | 12 | #include <linux/mm.h> |
|---|
| 16 | 13 | #include <linux/dma-mapping.h> |
|---|
| 17 | | -#ifdef CONFIG_KVM_ARM_HOST |
|---|
| 18 | | -#include <linux/kvm_host.h> |
|---|
| 19 | | -#endif |
|---|
| 20 | 14 | #include <asm/cacheflush.h> |
|---|
| 21 | 15 | #include <asm/kexec-internal.h> |
|---|
| 22 | 16 | #include <asm/glue-df.h> |
|---|
| .. | .. |
|---|
| 38 | 32 | */ |
|---|
| 39 | 33 | #if defined(__APCS_26__) |
|---|
| 40 | 34 | #error Sorry, your compiler targets APCS-26 but this kernel requires APCS-32 |
|---|
| 41 | | -#endif |
|---|
| 42 | | -/* |
|---|
| 43 | | - * GCC 4.8.0-4.8.2: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854 |
|---|
| 44 | | - * miscompiles find_get_entry(), and can result in EXT3 and EXT4 |
|---|
| 45 | | - * filesystem corruption (possibly other FS too). |
|---|
| 46 | | - */ |
|---|
| 47 | | -#if defined(GCC_VERSION) && GCC_VERSION >= 40800 && GCC_VERSION < 40803 |
|---|
| 48 | | -#error Your compiler is too buggy; it is known to miscompile kernels |
|---|
| 49 | | -#error and result in filesystem corruption and oopses. |
|---|
| 50 | 35 | #endif |
|---|
| 51 | 36 | |
|---|
| 52 | 37 | int main(void) |
|---|
| .. | .. |
|---|
| 81 | 66 | #ifdef CONFIG_CRUNCH |
|---|
| 82 | 67 | DEFINE(TI_CRUNCH_STATE, offsetof(struct thread_info, crunchstate)); |
|---|
| 83 | 68 | #endif |
|---|
| 69 | +#ifdef CONFIG_STACKPROTECTOR_PER_TASK |
|---|
| 70 | + DEFINE(TI_STACK_CANARY, offsetof(struct thread_info, stack_canary)); |
|---|
| 71 | +#endif |
|---|
| 72 | + DEFINE(THREAD_SZ_ORDER, THREAD_SIZE_ORDER); |
|---|
| 84 | 73 | BLANK(); |
|---|
| 85 | 74 | DEFINE(S_R0, offsetof(struct pt_regs, ARM_r0)); |
|---|
| 86 | 75 | DEFINE(S_R1, offsetof(struct pt_regs, ARM_r1)); |
|---|
| .. | .. |
|---|
| 169 | 158 | BLANK(); |
|---|
| 170 | 159 | DEFINE(CACHE_WRITEBACK_ORDER, __CACHE_WRITEBACK_ORDER); |
|---|
| 171 | 160 | DEFINE(CACHE_WRITEBACK_GRANULE, __CACHE_WRITEBACK_GRANULE); |
|---|
| 172 | | - BLANK(); |
|---|
| 173 | | -#ifdef CONFIG_KVM_ARM_HOST |
|---|
| 174 | | - DEFINE(VCPU_GUEST_CTXT, offsetof(struct kvm_vcpu, arch.ctxt)); |
|---|
| 175 | | - DEFINE(VCPU_HOST_CTXT, offsetof(struct kvm_vcpu, arch.host_cpu_context)); |
|---|
| 176 | | - DEFINE(CPU_CTXT_VFP, offsetof(struct kvm_cpu_context, vfp)); |
|---|
| 177 | | - DEFINE(CPU_CTXT_GP_REGS, offsetof(struct kvm_cpu_context, gp_regs)); |
|---|
| 178 | | - DEFINE(GP_REGS_USR, offsetof(struct kvm_regs, usr_regs)); |
|---|
| 179 | | -#endif |
|---|
| 180 | 161 | BLANK(); |
|---|
| 181 | 162 | #ifdef CONFIG_VDSO |
|---|
| 182 | 163 | DEFINE(VDSO_DATA_SIZE, sizeof(union vdso_data_store)); |
|---|