[PATCH] blkmtd: use clear_page_dirty()
SetPageDirty() and ClearPageDirty() are low-level thing which filesystems shouldn't be using. They bypass dirty page accounting. Cc: David Woodhouse <dwmw2@infradead.org> Acked-by: Thomas Gleixner <tglx@linutronix.de> 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
67121172f9
commit
3fe968f167
@@ -113,7 +113,7 @@ static int bi_write_complete(struct bio *bio, unsigned int bytes_done, int error
|
|||||||
ClearPageUptodate(page);
|
ClearPageUptodate(page);
|
||||||
SetPageError(page);
|
SetPageError(page);
|
||||||
}
|
}
|
||||||
ClearPageDirty(page);
|
clear_page_dirty(page);
|
||||||
unlock_page(page);
|
unlock_page(page);
|
||||||
page_cache_release(page);
|
page_cache_release(page);
|
||||||
} while (bvec >= bio->bi_io_vec);
|
} while (bvec >= bio->bi_io_vec);
|
||||||
@@ -289,7 +289,7 @@ static int write_pages(struct blkmtd_dev *dev, const u_char *buf, loff_t to,
|
|||||||
BUG();
|
BUG();
|
||||||
}
|
}
|
||||||
memcpy(page_address(page)+offset, buf, start_len);
|
memcpy(page_address(page)+offset, buf, start_len);
|
||||||
SetPageDirty(page);
|
set_page_dirty(page);
|
||||||
SetPageUptodate(page);
|
SetPageUptodate(page);
|
||||||
buf += start_len;
|
buf += start_len;
|
||||||
thislen = start_len;
|
thislen = start_len;
|
||||||
@@ -336,7 +336,7 @@ static int write_pages(struct blkmtd_dev *dev, const u_char *buf, loff_t to,
|
|||||||
}
|
}
|
||||||
pagenr++;
|
pagenr++;
|
||||||
pagecnt--;
|
pagecnt--;
|
||||||
SetPageDirty(page);
|
set_page_dirty(page);
|
||||||
SetPageUptodate(page);
|
SetPageUptodate(page);
|
||||||
pagesc--;
|
pagesc--;
|
||||||
thislen += PAGE_SIZE;
|
thislen += PAGE_SIZE;
|
||||||
@@ -357,7 +357,7 @@ static int write_pages(struct blkmtd_dev *dev, const u_char *buf, loff_t to,
|
|||||||
BUG();
|
BUG();
|
||||||
}
|
}
|
||||||
memcpy(page_address(page), buf, end_len);
|
memcpy(page_address(page), buf, end_len);
|
||||||
SetPageDirty(page);
|
set_page_dirty(page);
|
||||||
SetPageUptodate(page);
|
SetPageUptodate(page);
|
||||||
DEBUG(3, "blkmtd: write: writing out partial end\n");
|
DEBUG(3, "blkmtd: write: writing out partial end\n");
|
||||||
thislen += end_len;
|
thislen += end_len;
|
||||||
|
Reference in New Issue
Block a user