linux/drivers
Michael Holzheu 8741ce6d11 s390/mm: Fix memory hotplug for unaligned standby memory
Commit 27356f54c8 ("mm/hotplug: verify hotplug memory range")
introduced a check that makes add_memory() only accept section size
aligned memory.

Therefore on z/VM systems, where standby memory is not aligned, no
standby memory is registered at all.

Example:

 #cp def store 3504M standby 2336M
 00: CP Q V STORE
 00: STORAGE = 3504M MAX = 6G INC = 8M STANDBY = 2336M RESERVED = 0

For this setup the following error message is printed:

 Section-unaligned hotplug range: start 0xdb000000, size 0x92000000

So fix this and register aligned memory in "sclp_cmd.c". This means
that for the corner cases where the standby memory is not aligned we
loose some memory.

In order to inform the user about the potential loss of standby memory,
we add a new message for each added standby block and print how
much of the standby memory is usable, for example:

 sclp_cmd.4336b4: Standby memory at 0x50000000 (256M of 256M usable)
 sclp_cmd.4336b4: Standby memory at 0xb0000000 (256M of 256M usable)
 sclp_cmd.4336b4: Standby memory at 0xdb000000 (2048M of 2336M usable)

We also ensure that a potential memory block that contains both "assigned"
and "standby" memory cannot be setup offline.

Reviewed-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2015-04-15 12:23:49 +02:00
..
accessibility
acpi Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
amba ARM: 8334/1: amba: tegra-ahb: detect and correct bogus base address 2015-04-02 10:03:55 +01:00
android
ata Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
atm
auxdisplay
base Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
bcma
block Merge branch 'linus' into irq/core to get the GIC updates which 2015-04-08 23:26:21 +02:00
bluetooth
bus
cdrom
char Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
clk
clocksource ARM, clocksource/drivers: Provide read_boot_clock64() and read_persistent_clock64() and use them 2015-04-03 08:18:23 +02:00
connector
coresight
cpufreq intel_pstate: Knights Landing support 2015-04-11 02:13:29 +02:00
cpuidle Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
crypto
dca
devfreq PM / devfreq: tegra: Register governor on module init 2015-03-31 13:17:15 +09:00
dio
dma Staging driver patches for 4.1-rc1 2015-04-13 17:37:33 -07:00
dma-buf
edac
eisa
extcon
firewire
firmware Merge branch 'core-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2015-04-13 10:22:30 -07:00
fmc
gpio Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
gpu Some clean ups and small fixes, but the biggest change is the addition 2015-04-14 10:49:03 -07:00
hid Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2015-04-14 18:25:15 -07:00
hsi HSI: cmt_speech: fix error return code 2015-04-05 14:45:27 +02:00
hv
hwmon hwmon: (pwm-fan) Update the duty cycle inorder to control the pwm-fan 2015-04-12 15:59:11 -07:00
hwspinlock
i2c Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
ide Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
idle Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
iio Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2015-04-14 09:50:27 -07:00
infiniband Merge branch 'for-linus-1' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2015-04-14 15:31:03 -07:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2015-04-14 18:25:15 -07:00
iommu Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
ipack
irqchip irqchip core change for v4.1 (round 3) 2015-04-11 11:17:28 +02:00
isdn Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2015-04-14 09:50:27 -07:00
leds
lguest lguest: now needs PCI_DIRECT. 2015-04-01 10:29:05 -07:00
macintosh
mailbox
mcb
md md/raid0: fix bug with chunksize not a power of 2. 2015-04-10 15:36:31 +10:00
media Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
memory
memstick
message
mfd == Changes to existing drivers == 2015-04-14 17:29:55 -07:00
misc Merge branch 'for-linus-1' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2015-04-14 15:31:03 -07:00
mmc Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2015-04-14 09:50:27 -07:00
mtd Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2015-04-14 09:50:27 -07:00
net Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
nfc
ntb
nubus
of Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2015-04-14 18:10:45 -07:00
oprofile
parisc Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2015-04-14 09:50:27 -07:00
parport
pci PCI changes for the v4.1 merge window: 2015-04-13 15:45:47 -07:00
pcmcia
phy USB patches for 4.1-rc1 2015-04-13 17:07:21 -07:00
pinctrl This is the bulk of pin control changes for the v4.1 development 2015-04-14 17:58:15 -07:00
platform Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
pnp Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
power power: twl4030_madc_battery: Add missing MODULE_ALIAS 2015-04-06 19:39:57 +02:00
powercap powercap / RAPL: mark rapl_ids array as __initconst 2015-04-11 02:21:15 +02:00
pps
ps3
ptp
pwm
rapidio
ras
regulator == Changes to existing drivers == 2015-04-14 17:29:55 -07:00
remoteproc
reset
rpmsg
rtc == Changes to existing drivers == 2015-04-14 17:29:55 -07:00
s390 s390/mm: Fix memory hotplug for unaligned standby memory 2015-04-15 12:23:49 +02:00
sbus
scsi Merge branch 'for-linus-1' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2015-04-14 15:31:03 -07:00
sfi
sh
sn
soc
spi Merge remote-tracking branches 'spi/topic/spidev' and 'spi/topic/spidev-test' into spi-next 2015-04-11 23:09:31 +01:00
spmi
ssb
staging Merge branch 'akpm' (patches from Andrew) 2015-04-14 16:49:17 -07:00
target iscsi target: fix oops when adding reject pdu 2015-04-10 12:33:55 -07:00
tc
thermal drivers: thermal: st: remove several sparse warnings 2015-04-07 13:43:28 -07:00
thunderbolt
tty Power management and ACPI updates for v4.1-rc1 2015-04-14 20:21:54 -07:00
uio
usb Merge branch 'for-linus-1' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2015-04-14 15:31:03 -07:00
uwb
vfio vfio-pci: Fix use after free 2015-04-08 08:11:51 -06:00
vhost
video == Changes to existing drivers == 2015-04-14 17:54:22 -07:00
virt
virtio
vlynq
vme
w1
watchdog Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2015-04-14 20:51:44 -07:00
xen cleancache: forbid overriding cleancache_ops 2015-04-14 16:49:03 -07:00
zorro
Kconfig
Makefile