Vivek Goyal
3b034b0d08
percpu: Fix kdump failure if booted with percpu_alloc=page
...
o kdump functionality reserves a per cpu area at boot time and exports the
physical address of that area to user space through sys interface. This
area stores some dump related information like cpu register states etc
at the time of crash.
o We were assuming that per cpu area always come from linearly mapped meory
region and using __pa() to determine physical address.
With percpu_alloc=page, per cpu area can come from vmalloc region also and
__pa() breaks.
o This patch implments a new function to convert per cpu address to
physical address.
Before the patch, crash_notes addresses looked as follows.
cpu0 60fffff49800
cpu1 60fffff60800
cpu2 60fffff77800
These are bogus phsyical addresses.
After the patch, address are following.
cpu0 13eb44000
cpu1 13eb43000
cpu2 13eb42000
cpu3 13eb41000
These look fine. I got 4G of memory and /proc/iomem tell me following.
100000000-13fffffff : System RAM
tj: * added missing asm/io.h include reported by Stephen Rothwell
* repositioned per_cpu_ptr_phys() in percpu.c and added comment.
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
2009-11-25 21:49:22 +09:00
..
accessibility
acpi
ACPI: kill "unused variable ‘i’" warning
2009-09-27 11:58:36 -07:00
amba
ata
trivial: fix comment typo in drivers/ata/pata_hpt37x.c
2009-09-21 15:15:53 +02:00
atm
Merge branch 'master' of git://git.infradead.org/users/dwmw2/solos-2.6
2009-09-22 15:18:59 -07:00
auxdisplay
base
percpu: Fix kdump failure if booted with percpu_alloc=page
2009-11-25 21:49:22 +09:00
block
Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus
2009-09-23 09:23:45 -07:00
bluetooth
cdrom
sysctl: remove "struct file *" argument of ->proc_handler
2009-09-24 07:21:04 -07:00
char
tty: Fix regressions caused by commit b50989dc
2009-09-27 13:35:16 -07:00
clocksource
connector
proc connector: add event for process becoming session leader
2009-09-23 07:39:29 -07:00
cpufreq
cpuidle
cpuidle: menu governor: reduce latency on exit
2009-09-22 07:17:45 -07:00
crypto
dca
dio
dma
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx into for-linus
2009-09-23 18:31:11 +10:00
edac
edac: core: remove completion-wait for complete with rcu_barrier
2009-09-24 07:21:05 -07:00
eisa
firewire
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6
2009-09-23 09:43:22 -07:00
firmware
mm: don't use alloc_bootmem_low() where not strictly needed
2009-09-22 07:17:38 -07:00
gpio
Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging
2009-09-23 09:30:48 -07:00
gpu
const: mark struct vm_struct_operations
2009-09-27 11:39:25 -07:00
hid
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
2009-09-22 07:51:28 -07:00
hwmon
Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging
2009-09-23 15:20:16 -07:00
i2c
ACPI: i2c-scmi: don't use acpi_device_uid()
2009-09-26 01:42:07 -04:00
ide
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6
2009-09-23 09:32:11 -07:00
idle
ieee1394
const: mark struct vm_struct_operations
2009-09-27 11:39:25 -07:00
ieee802154
infiniband
const: mark struct vm_struct_operations
2009-09-27 11:39:25 -07:00
input
input: fix build failures caused by Kconfig Winbond WPCD376I Consumer IR hardware driver Kconfig entry
2009-09-24 07:20:56 -07:00
isdn
seq_file: constify seq_operations
2009-09-23 07:39:29 -07:00
leds
Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
2009-09-26 10:50:47 -07:00
lguest
Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus
2009-09-23 09:23:45 -07:00
macintosh
Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
2009-09-26 10:50:47 -07:00
mca
md
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx into for-linus
2009-09-23 18:31:11 +10:00
media
const: mark struct vm_struct_operations
2009-09-27 11:39:25 -07:00
memstick
memstick: move dev_dbg
2009-09-24 07:21:05 -07:00
message
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial
2009-09-22 07:51:45 -07:00
mfd
mfd/gpio: add a GPIO interface to the UCB1400 MFD chip driver via gpiolib
2009-09-23 07:39:48 -07:00
misc
const: mark struct vm_struct_operations
2009-09-27 11:39:25 -07:00
mmc
Merge branch 'origin' into for-linus
2009-09-24 21:22:33 +01:00
mtd
Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze
2009-09-24 09:01:44 -07:00
net
headers: kref.h redux
2009-09-26 10:17:19 -07:00
nubus
of
of: remove "stm,m25p40" alias
2009-09-23 07:39:43 -07:00
oprofile
cpumask: use zalloc_cpumask_var() where possible
2009-09-24 09:34:24 +09:30
parisc
mm: replace various uses of num_physpages by totalram_pages
2009-09-22 07:17:38 -07:00
parport
sysctl: remove "struct file *" argument of ->proc_handler
2009-09-24 07:21:04 -07:00
pci
ACPICA: fixup after acpi_get_object_info() change
2009-09-25 14:24:22 -04:00
pcmcia
Merge branch 'origin' into for-linus
2009-09-24 21:22:33 +01:00
platform
thinkpad-acpi: fix CONFIG_THINKPAD_ACPI_HOTKEY_POLL build problem
2009-09-27 02:13:06 -04:00
pnp
ACPI: remove acpi_device.flags.hardware_id
2009-09-25 15:09:48 -04:00
power
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
2009-09-23 03:49:27 +04:00
pps
ps3
rapidio
regulator
regulator: fix voltage range in da9034 ldo12
2009-09-22 13:58:23 +01:00
rtc
Merge branch 'origin' into for-linus
2009-09-24 21:22:33 +01:00
s390
headers: utsname.h redux
2009-09-23 18:13:10 -07:00
sbus
const: make block_device_operations const
2009-09-22 07:17:25 -07:00
scsi
const: mark struct vm_struct_operations
2009-09-27 11:39:25 -07:00
serial
Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
2009-09-24 17:22:31 -07:00
sfi
sh
sn
spi
Merge branch 'origin' into for-linus
2009-09-24 21:22:33 +01:00
ssb
ssb/sdio: fix printk format warnings
2009-09-23 11:35:41 -04:00
staging
Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
2009-09-24 15:13:11 -07:00
tc
telephony
thermal
uio
const: mark struct vm_struct_operations
2009-09-27 11:39:25 -07:00
usb
tty: Fix regressions caused by commit b50989dc
2009-09-27 13:35:16 -07:00
uwb
trivial: remove unnecessary semicolons
2009-09-21 15:14:58 +02:00
video
const: mark struct vm_struct_operations
2009-09-27 11:39:25 -07:00
virtio
virtio: add virtio IDs file
2009-09-23 22:26:32 +09:30
vlynq
drivers/vlynq/vlynq.c: fix resource size off by 1 error
2009-09-24 07:21:05 -07:00
w1
watchdog
[WATCHDOG] Add support for the Avionic Design Xanthos watchdog timer.
2009-09-25 08:38:16 +00:00
xen
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial
2009-09-22 07:51:45 -07:00
zorro
Kconfig
Makefile
Merge git://git.infradead.org/mtd-2.6
2009-09-23 10:07:49 -07:00