diff options
author | Pekka J Enberg <penberg@cs.Helsinki.FI> | 2006-09-29 04:59:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-29 12:18:06 -0400 |
commit | c0d92cbc5849f26451f478d538b8d885ae547221 (patch) | |
tree | bf5ef7e15c6f35443a8e156f3bcd9c6642004cdd /fs/libfs.c | |
parent | cfedc920a7bca828fd4af8e203f7d8514990f999 (diff) |
[PATCH] libfs: remove page up-to-date check from simple_readpage
Remove the unnecessary PageUptodate check from simple_readpage. The only
two callers for ->readpage that don't have explicit PageUptodate check are
read_cache_pages and page_cache_read which operate on newly allocated pages
which don't have the flag set.
[akpm: use the allegedly-faster clear_page(), too]
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/libfs.c')
-rw-r--r-- | fs/libfs.c | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/fs/libfs.c b/fs/libfs.c index 8db5afb7b0a7..3793aaa14577 100644 --- a/fs/libfs.c +++ b/fs/libfs.c | |||
@@ -317,17 +317,9 @@ int simple_rename(struct inode *old_dir, struct dentry *old_dentry, | |||
317 | 317 | ||
318 | int simple_readpage(struct file *file, struct page *page) | 318 | int simple_readpage(struct file *file, struct page *page) |
319 | { | 319 | { |
320 | void *kaddr; | 320 | clear_highpage(page); |
321 | |||
322 | if (PageUptodate(page)) | ||
323 | goto out; | ||
324 | |||
325 | kaddr = kmap_atomic(page, KM_USER0); | ||
326 | memset(kaddr, 0, PAGE_CACHE_SIZE); | ||
327 | kunmap_atomic(kaddr, KM_USER0); | ||
328 | flush_dcache_page(page); | 321 | flush_dcache_page(page); |
329 | SetPageUptodate(page); | 322 | SetPageUptodate(page); |
330 | out: | ||
331 | unlock_page(page); | 323 | unlock_page(page); |
332 | return 0; | 324 | return 0; |
333 | } | 325 | } |