mm/page_reporting: Add checks for page_reporting_order param
authorShradha Gupta <shradhagupta@linux.microsoft.com>
Fri, 30 Sep 2022 06:01:38 +0000 (23:01 -0700)
committerWei Liu <wei.liu@kernel.org>
Mon, 28 Nov 2022 16:48:19 +0000 (16:48 +0000)
commitaebb02ce8b36d20464404206b89069dc9239a7f0
tree1d7225555869eec2f5c4045dcc744f01d02bf374
parentb7b275e60bcd5f89771e865a8239325f86d9927d
mm/page_reporting: Add checks for page_reporting_order param

Current code allows the page_reporting_order parameter to be changed
via sysfs to any integer value.  The new value is used immediately
in page reporting code with no validation, which could cause incorrect
behavior.  Fix this by adding validation of the new value.
Export this parameter for use in the driver that is calling the
page_reporting_register().

This is needed by drivers like hv_balloon to know the order of the
pages reported. Traditionally the values provided in the kernel boot
line or subsequently changed via sysfs take priority therefore, if
page_reporting_order parameter's value is set, it takes precedence
over the value passed while registering with the driver.

Signed-off-by: Shradha Gupta <shradhagupta@linux.microsoft.com>
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Acked-by: Andrew Morton <akpm@linux-foundation.org>
Link: https://lore.kernel.org/r/1664517699-1085-2-git-send-email-shradhagupta@linux.microsoft.com
Signed-off-by: Wei Liu <wei.liu@kernel.org>
mm/page_reporting.c