mm/memory_hotplug.c: fix return value of online_pages()
online_pages() is called from memory_block_action() when a user requests to online a memory block via sysfs. This function needs to return a proper error value in case of error. Signed-off-by: Toshi Kani <toshi.kani@hp.com> Cc: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com> Cc: Tang Chen <tangchen@cn.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
5f12733e9d
Коммит
0a1be15097
|
@ -914,19 +914,19 @@ int __ref online_pages(unsigned long pfn, unsigned long nr_pages, int online_typ
|
||||||
if ((zone_idx(zone) > ZONE_NORMAL || online_type == ONLINE_MOVABLE) &&
|
if ((zone_idx(zone) > ZONE_NORMAL || online_type == ONLINE_MOVABLE) &&
|
||||||
!can_online_high_movable(zone)) {
|
!can_online_high_movable(zone)) {
|
||||||
unlock_memory_hotplug();
|
unlock_memory_hotplug();
|
||||||
return -1;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (online_type == ONLINE_KERNEL && zone_idx(zone) == ZONE_MOVABLE) {
|
if (online_type == ONLINE_KERNEL && zone_idx(zone) == ZONE_MOVABLE) {
|
||||||
if (move_pfn_range_left(zone - 1, zone, pfn, pfn + nr_pages)) {
|
if (move_pfn_range_left(zone - 1, zone, pfn, pfn + nr_pages)) {
|
||||||
unlock_memory_hotplug();
|
unlock_memory_hotplug();
|
||||||
return -1;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (online_type == ONLINE_MOVABLE && zone_idx(zone) == ZONE_MOVABLE - 1) {
|
if (online_type == ONLINE_MOVABLE && zone_idx(zone) == ZONE_MOVABLE - 1) {
|
||||||
if (move_pfn_range_right(zone, zone + 1, pfn, pfn + nr_pages)) {
|
if (move_pfn_range_right(zone, zone + 1, pfn, pfn + nr_pages)) {
|
||||||
unlock_memory_hotplug();
|
unlock_memory_hotplug();
|
||||||
return -1;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче