traps.c (48a7afe314bfc4d7f50e1608632f503dbba7e013) | traps.c (1eeb66a1bb973534dc3d064920a5ca683823372e) |
---|---|
1/* 2 * arch/s390/kernel/traps.c 3 * 4 * S390 version 5 * Copyright (C) 1999,2000 IBM Deutschland Entwicklung GmbH, IBM Corporation 6 * Author(s): Martin Schwidefsky (schwidefsky@de.ibm.com), 7 * Denis Joseph Barrow (djbarrow@de.ibm.com,barrow_dj@yahoo.com), 8 * --- 13 unchanged lines hidden (view full) --- 22#include <linux/timer.h> 23#include <linux/mm.h> 24#include <linux/smp.h> 25#include <linux/smp_lock.h> 26#include <linux/init.h> 27#include <linux/interrupt.h> 28#include <linux/delay.h> 29#include <linux/module.h> | 1/* 2 * arch/s390/kernel/traps.c 3 * 4 * S390 version 5 * Copyright (C) 1999,2000 IBM Deutschland Entwicklung GmbH, IBM Corporation 6 * Author(s): Martin Schwidefsky (schwidefsky@de.ibm.com), 7 * Denis Joseph Barrow (djbarrow@de.ibm.com,barrow_dj@yahoo.com), 8 * --- 13 unchanged lines hidden (view full) --- 22#include <linux/timer.h> 23#include <linux/mm.h> 24#include <linux/smp.h> 25#include <linux/smp_lock.h> 26#include <linux/init.h> 27#include <linux/interrupt.h> 28#include <linux/delay.h> 29#include <linux/module.h> |
30#include <linux/kdebug.h> |
|
30#include <linux/kallsyms.h> 31#include <linux/reboot.h> 32#include <linux/kprobes.h> 33#include <linux/bug.h> 34#include <asm/system.h> 35#include <asm/uaccess.h> 36#include <asm/io.h> 37#include <asm/atomic.h> 38#include <asm/mathemu.h> 39#include <asm/cpcmd.h> 40#include <asm/s390_ext.h> 41#include <asm/lowcore.h> 42#include <asm/debug.h> | 31#include <linux/kallsyms.h> 32#include <linux/reboot.h> 33#include <linux/kprobes.h> 34#include <linux/bug.h> 35#include <asm/system.h> 36#include <asm/uaccess.h> 37#include <asm/io.h> 38#include <asm/atomic.h> 39#include <asm/mathemu.h> 40#include <asm/cpcmd.h> 41#include <asm/s390_ext.h> 42#include <asm/lowcore.h> 43#include <asm/debug.h> |
43#include <asm/kdebug.h> | |
44 45/* Called from entry.S only */ 46extern void handle_per_exception(struct pt_regs *regs); 47 48typedef void pgm_check_handler_t(struct pt_regs *, long); 49pgm_check_handler_t *pgm_check_table[128]; 50 51#ifdef CONFIG_SYSCTL --- 13 unchanged lines hidden (view full) --- 65#ifndef CONFIG_64BIT 66#define FOURLONG "%08lx %08lx %08lx %08lx\n" 67static int kstack_depth_to_print = 12; 68#else /* CONFIG_64BIT */ 69#define FOURLONG "%016lx %016lx %016lx %016lx\n" 70static int kstack_depth_to_print = 20; 71#endif /* CONFIG_64BIT */ 72 | 44 45/* Called from entry.S only */ 46extern void handle_per_exception(struct pt_regs *regs); 47 48typedef void pgm_check_handler_t(struct pt_regs *, long); 49pgm_check_handler_t *pgm_check_table[128]; 50 51#ifdef CONFIG_SYSCTL --- 13 unchanged lines hidden (view full) --- 65#ifndef CONFIG_64BIT 66#define FOURLONG "%08lx %08lx %08lx %08lx\n" 67static int kstack_depth_to_print = 12; 68#else /* CONFIG_64BIT */ 69#define FOURLONG "%016lx %016lx %016lx %016lx\n" 70static int kstack_depth_to_print = 20; 71#endif /* CONFIG_64BIT */ 72 |
73ATOMIC_NOTIFIER_HEAD(s390die_chain); 74 75int register_die_notifier(struct notifier_block *nb) 76{ 77 return atomic_notifier_chain_register(&s390die_chain, nb); 78} 79EXPORT_SYMBOL(register_die_notifier); 80 81int unregister_die_notifier(struct notifier_block *nb) 82{ 83 return atomic_notifier_chain_unregister(&s390die_chain, nb); 84} 85EXPORT_SYMBOL(unregister_die_notifier); 86 | |
87/* 88 * For show_trace we have tree different stack to consider: 89 * - the panic stack which is used if the kernel stack has overflown 90 * - the asynchronous interrupt stack (cpu related) 91 * - the synchronous kernel stack (process related) 92 * The stack trace can start at any of the three stack and can potentially 93 * touch all of them. The order is: panic stack, async stack, sync stack. 94 */ --- 642 unchanged lines hidden --- | 73/* 74 * For show_trace we have tree different stack to consider: 75 * - the panic stack which is used if the kernel stack has overflown 76 * - the asynchronous interrupt stack (cpu related) 77 * - the synchronous kernel stack (process related) 78 * The stack trace can start at any of the three stack and can potentially 79 * touch all of them. The order is: panic stack, async stack, sync stack. 80 */ --- 642 unchanged lines hidden --- |