/linux-6.1.9/arch/powerpc/include/asm/ |
D | stackprotector.h | 24 unsigned long canary; in boot_init_stack_canary() local 27 canary = get_random_canary(); in boot_init_stack_canary() 28 canary ^= mftb(); in boot_init_stack_canary() 29 canary ^= LINUX_VERSION_CODE; in boot_init_stack_canary() 30 canary &= CANARY_MASK; in boot_init_stack_canary() 32 current->stack_canary = canary; in boot_init_stack_canary() 34 get_paca()->canary = canary; in boot_init_stack_canary()
|
D | paca.h | 277 unsigned long canary; member
|
/linux-6.1.9/arch/x86/include/asm/ |
D | stackprotector.h | 53 u64 canary; in boot_init_stack_canary() local 65 get_random_bytes(&canary, sizeof(canary)); in boot_init_stack_canary() 67 canary += tsc + (tsc << 32UL); in boot_init_stack_canary() 68 canary &= CANARY_MASK; in boot_init_stack_canary() 70 current->stack_canary = canary; in boot_init_stack_canary() 72 this_cpu_write(fixed_percpu_data.stack_canary, canary); in boot_init_stack_canary() 74 this_cpu_write(__stack_chk_guard, canary); in boot_init_stack_canary()
|
/linux-6.1.9/arch/sh/include/asm/ |
D | stackprotector.h | 18 unsigned long canary; in boot_init_stack_canary() local 21 get_random_bytes(&canary, sizeof(canary)); in boot_init_stack_canary() 22 canary ^= LINUX_VERSION_CODE; in boot_init_stack_canary() 23 canary &= CANARY_MASK; in boot_init_stack_canary() 25 current->stack_canary = canary; in boot_init_stack_canary()
|
/linux-6.1.9/arch/csky/include/asm/ |
D | stackprotector.h | 18 unsigned long canary; in boot_init_stack_canary() local 21 get_random_bytes(&canary, sizeof(canary)); in boot_init_stack_canary() 22 canary ^= LINUX_VERSION_CODE; in boot_init_stack_canary() 23 canary &= CANARY_MASK; in boot_init_stack_canary() 25 current->stack_canary = canary; in boot_init_stack_canary()
|
/linux-6.1.9/arch/riscv/include/asm/ |
D | stackprotector.h | 19 unsigned long canary; in boot_init_stack_canary() local 22 get_random_bytes(&canary, sizeof(canary)); in boot_init_stack_canary() 23 canary ^= LINUX_VERSION_CODE; in boot_init_stack_canary() 24 canary &= CANARY_MASK; in boot_init_stack_canary() 26 current->stack_canary = canary; in boot_init_stack_canary()
|
/linux-6.1.9/arch/arm64/include/asm/ |
D | stackprotector.h | 31 unsigned long canary; in boot_init_stack_canary() local 34 get_random_bytes(&canary, sizeof(canary)); in boot_init_stack_canary() 35 canary ^= LINUX_VERSION_CODE; in boot_init_stack_canary() 36 canary &= CANARY_MASK; in boot_init_stack_canary() 38 current->stack_canary = canary; in boot_init_stack_canary()
|
/linux-6.1.9/arch/xtensa/include/asm/ |
D | stackprotector.h | 30 unsigned long canary; in boot_init_stack_canary() local 33 get_random_bytes(&canary, sizeof(canary)); in boot_init_stack_canary() 34 canary ^= LINUX_VERSION_CODE; in boot_init_stack_canary() 36 current->stack_canary = canary; in boot_init_stack_canary()
|
/linux-6.1.9/arch/mips/include/asm/ |
D | stackprotector.h | 31 unsigned long canary; in boot_init_stack_canary() local 34 get_random_bytes(&canary, sizeof(canary)); in boot_init_stack_canary() 35 canary ^= LINUX_VERSION_CODE; in boot_init_stack_canary() 37 current->stack_canary = canary; in boot_init_stack_canary()
|
/linux-6.1.9/arch/arm/include/asm/ |
D | stackprotector.h | 33 unsigned long canary; in boot_init_stack_canary() local 36 get_random_bytes(&canary, sizeof(canary)); in boot_init_stack_canary() 37 canary ^= LINUX_VERSION_CODE; in boot_init_stack_canary() 39 current->stack_canary = canary; in boot_init_stack_canary()
|
/linux-6.1.9/drivers/misc/lkdtm/ |
D | bugs.c | 164 unsigned long *canary = (unsigned long *)stack; in __lkdtm_REPORT_STACK_CANARY() local 169 canary = (unsigned long *)stack + i; in __lkdtm_REPORT_STACK_CANARY() 171 if (*canary == current->stack_canary) in __lkdtm_REPORT_STACK_CANARY() 173 if (*canary == init_task.stack_canary) in __lkdtm_REPORT_STACK_CANARY() 197 canary = (unsigned long *)stack + current_offset; in __lkdtm_REPORT_STACK_CANARY() 199 stack_canary = *canary; in __lkdtm_REPORT_STACK_CANARY() 213 if (*canary == stack_canary) { in __lkdtm_REPORT_STACK_CANARY()
|
/linux-6.1.9/arch/x86/platform/pvh/ |
D | head.S | 99 mov $_pa(canary), %eax 159 SYM_DATA_LOCAL(canary, .fill 48, 1, 0)
|
/linux-6.1.9/drivers/soc/qcom/ |
D | smem.c | 224 u16 canary; /* bytes are the same so no swapping needed */ member 383 if (hdr->canary != SMEM_PRIVATE_CANARY) in qcom_smem_alloc_private() 401 hdr->canary = SMEM_PRIVATE_CANARY; in qcom_smem_alloc_private() 562 if (e->canary != SMEM_PRIVATE_CANARY) in qcom_smem_get_private() 598 if (e->canary != SMEM_PRIVATE_CANARY) in qcom_smem_get_private()
|
/linux-6.1.9/drivers/net/ipa/ |
D | ipa_mem.c | 357 __le32 *canary; in ipa_mem_config() local 363 canary = ipa->mem_virt + ipa->mem_offset + ipa->mem[i].offset; in ipa_mem_config() 365 *--canary = IPA_MEM_CANARY_VAL; in ipa_mem_config()
|
/linux-6.1.9/drivers/tty/serial/8250/ |
D | 8250_core.c | 761 unsigned char canary = 0xa5; in serial8250_suspend_port() local 763 serial_out(up, UART_SCR, canary); in serial8250_suspend_port() 764 if (serial_in(up, UART_SCR) == canary) in serial8250_suspend_port() 765 up->canary = canary; in serial8250_suspend_port() 783 up->canary = 0; in serial8250_resume_port()
|
D | 8250_port.c | 3404 if (up->canary && (up->canary != serial_port_in(port, UART_SCR))) { in serial8250_console_write() 3406 up->canary = 0; in serial8250_console_write()
|
/linux-6.1.9/include/linux/ |
D | serial_8250.h | 110 unsigned char canary; /* non-zero during system sleep member
|
/linux-6.1.9/Documentation/security/ |
D | self-protection.rst | 157 is the presence of a stack canary between the stack variables and the 207 It should be noted that things like the stack canary discussed earlier 217 different canary per stack) and high entropy (e.g. is the RNG actually 270 addresses or other sensitive things like canary values).
|
/linux-6.1.9/arch/arm/mach-at91/ |
D | pm.c | 45 phys_addr_t canary; member 184 static int canary = 0xA5A5A5A5; variable 1080 soc_pm.bu->canary = __pa_symbol(&canary); in at91_pm_backup_init()
|
/linux-6.1.9/arch/ |
D | Kconfig | 580 - it has implemented a stack canary (e.g. __stack_chk_guard) 589 feature puts, at the beginning of functions, a canary value on 593 overwrite the canary, which gets detected and the attack is then 596 Functions will have the stack-protector canary logic added if they 602 On an x86 "defconfig" build, this feature adds canary checks to 612 Functions will have the stack-protector canary logic added in any 624 On an x86 "defconfig" build, this feature adds canary checks to 1206 to the compiler, so it will attempt to add canary checks regardless
|
/linux-6.1.9/arch/arm/ |
D | Kconfig | 1449 bool "Use a unique stack canary value for each task" 1456 which to load the value of the stack canary, this value can only 1458 kernel's address space are forced to use the same canary value for 1462 different canary value for each task.
|
/linux-6.1.9/arch/powerpc/kernel/ |
D | asm-offsets.c | 84 OFFSET(PACA_CANARY, paca_struct, canary); in main()
|
/linux-6.1.9/arch/powerpc/xmon/ |
D | xmon.c | 2702 DUMP(p, canary, "%#-*lx"); in dump_one_paca()
|