Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 86a66810 authored by Dan Williams's avatar Dan Williams Committed by Dave Jiang
Browse files

mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages



Given that dax / device-mapped pages are never subject to page
allocations remove them from consideration by the soft-offline
mechanism.

Reported-by: default avatarNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
Acked-by: default avatarNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: default avatarDave Jiang <dave.jiang@intel.com>
parent 73449daf
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -1751,6 +1751,14 @@ int soft_offline_page(struct page *page, int flags)
	int ret;
	unsigned long pfn = page_to_pfn(page);

	if (is_zone_device_page(page)) {
		pr_debug_ratelimited("soft_offline: %#lx page is device page\n",
				pfn);
		if (flags & MF_COUNT_INCREASED)
			put_page(page);
		return -EIO;
	}

	if (PageHWPoison(page)) {
		pr_info("soft offline: %#lx page already poisoned\n", pfn);
		if (flags & MF_COUNT_INCREASED)