[PATCH] zoned vm counters: conversion of nr_pagecache to per zone counter
Currently a single atomic variable is used to establish the size of the page cache in the whole machine. The zoned VM counters have the same method of implementation as the nr_pagecache code but also allow the determination of the pagecache size per zone. Remove the special implementation for nr_pagecache and make it a zoned counter named NR_FILE_PAGES. Updates of the page cache counters are always performed with interrupts off. We can therefore use the __ variant here. Signed-off-by: Christoph Lameter <clameter@sgi.com> Cc: Trond Myklebust <trond.myklebust@fys.uio.no> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
65ba55f500
commit
347ce434d5
@@ -2124,16 +2124,11 @@ static int page_alloc_cpu_notify(struct notifier_block *self,
|
||||
unsigned long action, void *hcpu)
|
||||
{
|
||||
int cpu = (unsigned long)hcpu;
|
||||
long *count;
|
||||
unsigned long *src, *dest;
|
||||
|
||||
if (action == CPU_DEAD) {
|
||||
int i;
|
||||
|
||||
/* Drain local pagecache count. */
|
||||
count = &per_cpu(nr_pagecache_local, cpu);
|
||||
atomic_add(*count, &nr_pagecache);
|
||||
*count = 0;
|
||||
local_irq_disable();
|
||||
__drain_pages(cpu);
|
||||
|
||||
|
Reference in New Issue
Block a user