linux/include/asm-s390
Simon Horman 6672f76a5a kdump/kexec: calculate note size at compile time
Currently the size of the per-cpu region reserved to save crash notes is
set by the per-architecture value MAX_NOTE_BYTES.  Which in turn is
currently set to 1024 on all supported architectures.

While testing ia64 I recently discovered that this value is in fact too
small.  The particular setup I was using actually needs 1172 bytes.  This
lead to very tedious failure mode where the tail of one elf note would
overwrite the head of another if they ended up being alocated sequentially
by kmalloc, which was often the case.

It seems to me that a far better approach is to caclculate the size that
the area needs to be.  This patch does just that.

If a simpler stop-gap patch for ia64 to be squeezed into 2.6.21(.X) is
needed then this should be as easy as making MAX_NOTE_BYTES larger in
arch/asm-ia64/kexec.h.  Perhaps 2048 would be a good choice.  However, I
think that the approach in this patch is a much more robust idea.

Acked-by:  Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:15:07 -07:00
..
Kbuild [S390] Unexport <asm/z90crypt.h>, export <asm/zcrypt.h> in its place. 2006-09-24 22:07:25 +01:00
a.out.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
appldata.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
atomic.h [S390] add atomic64_xchg to s390 2007-02-21 10:55:59 +01:00
auxvec.h [PATCH] auxiliary vector cleanups 2005-09-07 16:57:21 -07:00
bitops.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
bug.h [S390] Use generic bug. 2007-04-27 16:01:42 +02:00
bugs.h [S390] check_bugs() should be inline. 2007-03-05 23:35:50 +01:00
byteorder.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
cache.h [PATCH] s390: add read_mostly optimization 2006-04-28 08:33:48 -07:00
cacheflush.h [PATCH] Optimize D-cache alias handling on fork 2006-12-13 09:27:08 -08:00
ccwdev.h [S390] cio: Deprecate read_dev_chars() and read_conf_data{,_lpm}(). 2007-05-04 18:48:25 +02:00
ccwgroup.h [S390] cio: ccwgroup register vs. unregister. 2007-04-27 16:01:41 +02:00
checksum.h [S390] Fix TCP/UDP pseudo header checksum computation. 2007-03-26 20:43:46 +02:00
chpid.h [S390] cio: Channel-path configure function. 2007-04-27 16:01:39 +02:00
cio.h [S390] cio: Channel-path configure function. 2007-04-27 16:01:39 +02:00
cmb.h [S390] rework of channel measurement facility. 2006-06-29 15:08:41 +02:00
compat.h [S390] noexec protection 2007-02-05 21:18:17 +01:00
cpcmd.h [S390] cpcmd <-> __cpcmd calling issues 2006-12-04 15:40:30 +01:00
cputime.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
current.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dasd.h [S390] New DASD feature for ERP related logging 2006-12-08 15:54:15 +01:00
debug.h [PATCH] Fix 'make headers_check' on s390 2006-09-16 12:54:31 -07:00
delay.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
device.h Driver core: add dev_archdata to struct device 2006-12-01 14:52:01 -08:00
div64.h [S390] __div64_32 for 31 bit. 2006-09-28 16:55:39 +02:00
dma-mapping.h Introduce CONFIG_HAS_DMA 2007-05-07 12:12:51 -07:00
dma.h [S390] empty function defines. 2006-09-20 15:58:51 +02:00
ebcdic.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
elf.h [S390] add hardware capability support (ELF_HWCAP). 2007-05-04 18:48:35 +02:00
emergency-restart.h [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
errno.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
etr.h [S390] ETR support. 2007-02-05 21:18:19 +01:00
extmem.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
fcntl.h [PATCH] Clean up struct flock64 definitions 2005-09-07 16:57:38 -07:00
futex.h [S390] don't call handle_mm_fault() if in an atomic context. 2007-01-09 10:18:50 +01:00
hardirq.h [S390] ETR support. 2007-02-05 21:18:19 +01:00
idals.h Don't include linux/config.h from anywhere else in include/ 2006-04-26 12:56:16 +01:00
io.h [S390] remove __io_virt and mmiowb. 2007-02-12 15:49:57 +01:00
ioctl.h [PATCH] Generic ioctl.h 2006-01-10 08:01:34 -08:00
ioctls.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipcbuf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipl.h [S390] zfcpdump support. 2007-04-27 16:01:44 +02:00
irq.h [PATCH] Make touch_nmi_watchdog imply touch_softlockup_watchdog on all archs 2006-09-29 09:18:05 -07:00
irq_regs.h [S390] irq change build fixes. 2006-10-06 16:38:35 +02:00
irqflags.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
kdebug.h move die notifier handling to common code 2007-05-08 11:15:04 -07:00
kexec.h kdump/kexec: calculate note size at compile time 2007-05-08 11:15:07 -07:00
kmap_types.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
kprobes.h [S390] get rid of kprobes notifier call chain. 2007-05-04 18:48:24 +02:00
linkage.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
local.h [S390] local_t cleanup : use asm-generic/local.h. 2007-02-21 10:55:55 +01:00
lowcore.h [S390] add hardware capability support (ELF_HWCAP). 2007-05-04 18:48:35 +02:00
mathemu.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mman.h [PATCH] add asm-generic/mman.h 2006-02-15 15:32:22 -08:00
mmu.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mmu_context.h [PATCH] x86: PARAVIRT: add hooks to intercept mm creation and destruction 2007-05-02 19:27:14 +02:00
module.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
monwriter.h [S390] Linux API for writing z/VM APPLDATA Monitor records. 2006-09-20 15:59:34 +02:00
msgbuf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mutex.h [PATCH] mutex subsystem, add default include/asm-*/mutex.h files 2006-01-09 15:59:19 -08:00
namei.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
page.h [S390] Virtual memmap for s390. 2006-12-08 15:56:07 +01:00
param.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pci.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
percpu.h [PATCH] Fix typo in "syntax error if percpu macros are incorrectly used" patch 2006-10-06 08:53:41 -07:00
pgalloc.h [S390] noexec protection 2007-02-05 21:18:17 +01:00
pgtable.h [S390] split page_test_and_clear_dirty. 2007-04-27 16:01:46 +02:00
poll.h [PATCH] POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications 2006-03-25 08:22:56 -08:00
posix_types.h [PATCH] FD_ZERO build fix 2007-01-11 18:18:22 -08:00
processor.h [S390] Processor degradation notification. 2007-04-27 16:01:46 +02:00
ptrace.h [S390] noexec protection 2007-02-05 21:18:17 +01:00
qdio.h [S390] Hipersocket multicast queue: make sure outbound handler is called 2006-12-15 17:18:14 +01:00
qeth.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
reset.h [S390] Convert memory detection into C code. 2007-02-05 21:18:37 +01:00
resource.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rwsem.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
s390_ext.h [S390] irq change build fixes. 2006-10-06 16:38:35 +02:00
s390_rdev.h [PATCH] s390: email-address change 2006-01-14 18:27:10 -08:00
scatterlist.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sclp.h [S390] zfcpdump support. 2007-04-27 16:01:44 +02:00
sections.h [S390] nss: Free unused memory in kernel image. 2007-02-21 10:55:37 +01:00
segment.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
semaphore.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
sembuf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
setup.h [S390] zfcpdump support. 2007-04-27 16:01:44 +02:00
sfp-machine.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
sfp-util.h [S390] Calibrate delay and bogomips. 2007-02-05 21:18:31 +01:00
shmbuf.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
shmparam.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sigcontext.h [PATCH] s390: sigcontext.h vs __user 2006-01-14 18:27:08 -08:00
siginfo.h [PATCH] consolidate SIGEV_PAD_SIZE 2005-05-01 08:59:08 -07:00
signal.h [PATCH] irq-flags: S390: Use the new IRQF_ constants 2006-07-02 13:58:48 -07:00
sigp.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
smp.h [S390] Clean up smp code in preparation for some larger changes. 2007-04-27 16:01:47 +02:00
socket.h [NET]: Adding SO_TIMESTAMPNS / SCM_TIMESTAMPNS support 2007-04-25 22:24:21 -07:00
sockios.h [NET]: Introduce SIOCGSTAMPNS ioctl to get timestamps with nanosec resolution 2007-04-25 22:24:04 -07:00
spinlock.h [S390] incorrect placement of include. 2006-10-04 20:02:12 +02:00
spinlock_types.h [PATCH] Directed yield: direct yield of spinlocks for s390. 2006-10-01 00:39:22 -07:00
stat.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
statfs.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
string.h [S390] Inline assembly cleanup. 2006-09-28 16:56:43 +02:00
suspend.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
system.h [S390] noexec protection 2007-02-05 21:18:17 +01:00
tape390.h [S390] Add crypto support for 3592 tape devices 2007-02-05 21:18:26 +01:00
termbits.h [PATCH] tty: preparatory structures for termios revamp 2006-12-08 08:28:56 -08:00
termios.h [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
thread_info.h [S390] preempt_count initialization. 2006-06-29 15:02:47 +02:00
timer.h [S390] Get rid of a lot of sparse warnings. 2007-02-05 21:16:47 +01:00
timex.h [S390] Support for s390 Pseudo Random Number Generator 2007-02-05 21:18:22 +01:00
tlb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tlbflush.h [S390] noexec protection 2007-02-05 21:18:17 +01:00
todclk.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
topology.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
types.h [PATCH] Centralise definitions of sector_t and blkcnt_t 2006-12-04 19:41:15 -08:00
uaccess.h [S390] noexec protection 2007-02-05 21:18:17 +01:00
ucontext.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
unaligned.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
unistd.h [S390] Wire up sys_utimes. 2007-03-19 13:19:07 +01:00
user.h [PATCH] s390: uml ptrace fixes 2005-06-04 17:13:00 -07:00
vtoc.h Use __uXX types for S390 DASD volume label definitions which are user-visible 2006-05-04 01:18:33 +01:00
xor.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
zcrypt.h [S390] update interface notes in zcrypt.h 2006-12-04 15:40:00 +01:00