diff options
Diffstat (limited to 'drivers/base/node.c')
| -rw-r--r-- | drivers/base/node.c | 11 | 
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/base/node.c b/drivers/base/node.c index cd13ef287011..c19094481630 100644 --- a/drivers/base/node.c +++ b/drivers/base/node.c @@ -7,6 +7,7 @@  #include <linux/init.h>  #include <linux/mm.h>  #include <linux/memory.h> +#include <linux/mempolicy.h>  #include <linux/vmstat.h>  #include <linux/notifier.h>  #include <linux/node.h> @@ -214,6 +215,14 @@ void node_set_perf_attrs(unsigned int nid, struct access_coordinate *coord,  			break;  		}  	} + +	/* When setting CPU access coordinates, update mempolicy */ +	if (access == ACCESS_COORDINATE_CPU) { +		if (mempolicy_set_node_perf(nid, coord)) { +			pr_info("failed to set mempolicy attrs for node %d\n", +				nid); +		} +	}  }  EXPORT_SYMBOL_GPL(node_set_perf_attrs); @@ -468,7 +477,7 @@ static ssize_t node_read_meminfo(struct device *dev,  			     nid, K(node_page_state(pgdat, NR_PAGETABLE)),  			     nid, K(node_page_state(pgdat, NR_SECONDARY_PAGETABLE)),  			     nid, 0UL, -			     nid, K(sum_zone_node_page_state(nid, NR_BOUNCE)), +			     nid, 0UL,  			     nid, K(node_page_state(pgdat, NR_WRITEBACK_TEMP)),  			     nid, K(sreclaimable +  				    node_page_state(pgdat, NR_KERNEL_MISC_RECLAIMABLE)),  | 
