Unverified Commit 181ab232 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!4459 v2 Introduce page eject for arm64

Merge Pull Request from: @ci-robot 
 
PR sync from: Wupeng Ma <mawupeng1@huawei.com>
https://mailweb.openeuler.org/hyperkitty/list/kernel@openeuler.org/message/SAMH7P5EFNF4WW35MQFWVVJQBMCGLLIC/ 
From: Ma Wupeng <mawupeng1@huawei.com>

Page ejection is achieved by soft_offline_page and unpoison_memory. A
linked list is maintained to log the pfns which are offlined by this
module. Only the pfns present in the list is allowed to go online.

The follow sysfs is introduced to online/offline page via this
module, since there is a internal linked list to record all
offlined pages, remove_page is introduce to remove this page
from list.

- /sys/kernel/page_eject/online_page
- /sys/kernel/page_eject/offline_page
- /sys/kernel/page_eject/remove_page

Changelog since v1:
- move page_eject.c to drivers/ras/hisilicon

Ma Wupeng (4):
  mm/hwpoison: Export symbol soft_offline_page
  mm/memory-failure: introduce soft_online_page
  mm: page_eject: Introuduce page ejection
  config: update defconfig for PAGE_EJECT


-- 
2.25.1
 
https://gitee.com/openeuler/kernel/issues/I90COS 
 
Link:https://gitee.com/openeuler/kernel/pulls/4459

 

Reviewed-by: default avatarLiu Chao <liuchao173@huawei.com>
Reviewed-by: default avatarKefeng Wang <wangkefeng.wang@huawei.com>
Reviewed-by: default avatarXiaoFei Tan <tanxiaofei@huawei.com>
Signed-off-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
parents 930f0c02 35c73243
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -6756,6 +6756,7 @@ CONFIG_HNS3_PMU=m
# end of Performance monitor support

CONFIG_RAS=y
CONFIG_PAGE_EJECT=m
CONFIG_USB4=m
# CONFIG_USB4_DEBUGFS_WRITE is not set
# CONFIG_USB4_DMA_TEST is not set
+1 −0
Original line number Diff line number Diff line
@@ -32,5 +32,6 @@ menuconfig RAS
if RAS

source "arch/x86/ras/Kconfig"
source "drivers/ras/hisilicon/Kconfig"

endif
+2 −0
Original line number Diff line number Diff line
@@ -2,3 +2,5 @@
obj-$(CONFIG_RAS)	+= ras.o
obj-$(CONFIG_DEBUG_FS)	+= debugfs.o
obj-$(CONFIG_RAS_CEC)	+= cec.o

obj-$(CONFIG_ARCH_HISI)	+= hisilicon/
+10 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
config PAGE_EJECT
	tristate "page eject"
	default m
	depends on ARM64 && ARCH_HISI && MEMORY_FAILURE
	help
	  Used to eject page, which is achieved by soft_offline_page and
	  unpoison_memory. A linked list is maintained to log the pfns
	  which are offlined by this module. Only the pfns present in the
	  list is allowed to go online.
+2 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only
obj-$(CONFIG_PAGE_EJECT)	+= page_eject.o
Loading