Skip to contentSkip to conversation

MCE: fix an error of mce_bad_pages statistics

PATCH Superseded Xishi Qiu 1 participant 1 message Dec 11, 2012 Memory management

v3 of 4 Superseded Latest is v4 →

lore
Share & tools
lore

Xishi Qiu

author
#0 lore raw

v3 cover MCE: fix an error of mce_bad_pages statistics

When we use "/sys/devices/system/memory/soft_offline_page" to offline a *free* page, the value of mce_bad_pages will be added, and the page is set HWPoison flag, but it is still managed by page buddy alocator.

$ cat /proc/meminfo | grep HardwareCorrupted shows the value.

If we offline the same page, the value of mce_bad_pages will be added *again*, this means the value is incorrect now. Assume the page is still free during this short time.

soft_offline_page()

	get_any_page()
		"else if (is_free_buddy_page(p))" branch return 0
			"goto done";
				"atomic_long_add(1, &mce_bad_pages);"

Changelog:
V3:
-add page lock when set HWPoison flag
-adjust the function structure
V2 and V1:
-fix the error

Xishi Qiu (2):
move poisoned page check at the beginning of the function fix the function structure

 mm/memory-failure.c |   69 ++++++++++++++++++++++++++++-----------------------
 1 files changed, 38 insertions(+), 31 deletions(-)

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>