Proprietary modules should not be able to touch vm_stat or participate in shrinking.
Signed-off-by: Ben Hutchings <b...@decadent.org.uk> --- mm/vmscan.c | 4 ++-- mm/vmstat.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mm/vmscan.c b/mm/vmscan.c index 8286938..e6e7449 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -247,7 +247,7 @@ int register_shrinker(struct shrinker *shrinker) up_write(&shrinker_rwsem); return 0; } -EXPORT_SYMBOL(register_shrinker); +EXPORT_SYMBOL_GPL(register_shrinker); /* * Remove one @@ -259,7 +259,7 @@ void unregister_shrinker(struct shrinker *shrinker) up_write(&shrinker_rwsem); kfree(shrinker->nr_deferred); } -EXPORT_SYMBOL(unregister_shrinker); +EXPORT_SYMBOL_GPL(unregister_shrinker); #define SHRINK_BATCH 128 diff --git a/mm/vmstat.c b/mm/vmstat.c index 4f5cd97..6d3f8f4 100644 --- a/mm/vmstat.c +++ b/mm/vmstat.c @@ -87,7 +87,7 @@ void vm_events_fold_cpu(int cpu) * vm_stat contains the global counters */ atomic_long_t vm_stat[NR_VM_ZONE_STAT_ITEMS] __cacheline_aligned_in_smp; -EXPORT_SYMBOL(vm_stat); +EXPORT_SYMBOL_GPL(vm_stat); #ifdef CONFIG_SMP -- Ben Hutchings [W]e found...that it wasn't as easy to get programs right as we had thought. ... I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs. - Maurice Wilkes, 1949
signature.asc
Description: This is a digitally signed message part