On 07/12/15 16:48, Johannes Weiner wrote:
On Mon, Dec 07, 2015 at 02:48:12PM +0100, Michal Hocko wrote:
On Fri 04-12-15 15:58:53, Chris Wilson wrote:
Some modules, like i915.ko, use swappable objects and may try to swap
them out under memory pressure (via the shrinker). Before doing so, they
want to check using get_nr_swap_pages() to see if any swap space is
available as otherwise they will waste time purging the object from the
device without recovering any memory for the system. This requires the
nr_swap_pages counter to be exported to the modules.
I guess it should be sufficient to change get_nr_swap_pages into a real
function and export it rather than giving the access to the counter
directly?
What do you mean by "sufficient"? That is actually more work.
It should be sufficient to just export the counter.
_______________________________________________
Exporting random uncontrolled variables from the kernel to loaded
modules is not really considered best practice. It would be preferable
to provide an accessor function - which is just what the declaration
says we have; the implementation as a static inline (and/or macro) is
what causes the problem here.
.Dave.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>