Displaying 11 results from an estimated 11 matches for "add_to_page_cache_lru".
2012 Jul 10
6
[PATCH RFC] Btrfs: improve multi-thread buffer read
While testing with my buffer read fio jobs[1], I find that btrfs does not
perform well enough.
Here is a scenario in fio jobs:
We have 4 threads, "t1 t2 t3 t4", starting to buffer read a same file,
and all of them will race on add_to_page_cache_lru(), and if one thread
successfully puts its page into the page cache, it takes the responsibility
to read the page''s data.
And what''s more, reading a page needs a period of time to finish, in which
other threads can slide in and process rest pages:
t1 t2 t3...
2012 Jul 12
3
[PATCH v2] Btrfs: improve multi-thread buffer read
While testing with my buffer read fio jobs[1], I find that btrfs does not
perform well enough.
Here is a scenario in fio jobs:
We have 4 threads, "t1 t2 t3 t4", starting to buffer read a same file,
and all of them will race on add_to_page_cache_lru(), and if one thread
successfully puts its page into the page cache, it takes the responsibility
to read the page''s data.
And what''s more, reading a page needs a period of time to finish, in which
other threads can slide in and process rest pages:
t1 t2 t3...
2009 Feb 16
0
warn_slowpath in clean_tree_block
...ad kernel: [<ffffffff80228d7d>] warn_slowpath+0xd8/0x111
Feb 16 09:02:17 vlad kernel: [<ffffffff80251d9e>] __alloc_pages_internal+0xd2/0x3ec
Feb 16 09:02:17 vlad kernel: [<ffffffff8024d55d>] add_to_page_cache_locked+0x52/0x9e
Feb 16 09:02:17 vlad kernel: [<ffffffff8024d5e9>] add_to_page_cache_lru+0x40/0x58
Feb 16 09:02:17 vlad kernel: [<ffffffff8024dbd0>] find_or_create_page+0x62/0x88
Feb 16 09:02:17 vlad kernel: [<ffffffff80313244>] rb_insert_color+0xba/0xe2
Feb 16 09:02:17 vlad kernel: [<ffffffffa03f992a>] alloc_extent_buffer+0x268/0x2ec [btrfs]
Feb 16 09:02:17 vlad kern...
2011 Jul 08
5
btrfs hang in flush-btrfs-5
...x77/0x105
Jul 8 11:49:40 xback2 kernel: [74920.681032] [<ffffffff8122cc1d>]
radix_tree_preload+0x31/0x81
Jul 8 11:49:40 xback2 kernel: [74920.681032] [<ffffffff810d89cd>]
add_to_page_cache_locked+0x56/0x118
Jul 8 11:49:40 xback2 kernel: [74920.681032] [<ffffffff810d8ab9>]
add_to_page_cache_lru+0x2a/0x58
Jul 8 11:49:40 xback2 kernel: [74920.681032] [<ffffffff810d8d61>]
find_or_create_page+0x5a/0x8a
Jul 8 11:49:40 xback2 kernel: [74920.681032] [<ffffffffa0423620>]
prepare_pages+0xd3/0x2e7 [btrfs]
Jul 8 11:49:40 xback2 kernel: [74920.681032] [<ffffffffa040aad7>] ?...
2010 Mar 02
3
2.6.33 high cpu usage
With the ATI bug I was hitting earlier fixed, only my btrfs partition
continues to show high cpu usage for some operations.
Rsync, git pull, git checkout and svn up are typicall operations which
trigger the high cpu usage.
As an example, this perf report is from using git checkout to change to
a new branch; the change needed to checkout 208 files out of about 1600
total files. du(1) reports
2007 Apr 18
4
[patch 3/9] Guest page hinting: volatile page cache.
...r_page_dirty(struct page *page);
diff -urpN linux-2.6/include/linux/pagemap.h linux-2.6-patched/include/linux/pagemap.h
--- linux-2.6/include/linux/pagemap.h 2006-09-01 12:49:32.000000000 +0200
+++ linux-2.6-patched/include/linux/pagemap.h 2006-09-01 12:49:36.000000000 +0200
@@ -114,6 +114,7 @@ int add_to_page_cache_lru(struct page *p
unsigned long index, gfp_t gfp_mask);
extern void remove_from_page_cache(struct page *page);
extern void __remove_from_page_cache(struct page *page);
+extern void __remove_from_page_cache_nocheck(struct page *page);
/*
* Return byte-offset into filesystem object for page....
2007 Apr 18
4
[patch 3/9] Guest page hinting: volatile page cache.
...r_page_dirty(struct page *page);
diff -urpN linux-2.6/include/linux/pagemap.h linux-2.6-patched/include/linux/pagemap.h
--- linux-2.6/include/linux/pagemap.h 2006-09-01 12:49:32.000000000 +0200
+++ linux-2.6-patched/include/linux/pagemap.h 2006-09-01 12:49:36.000000000 +0200
@@ -114,6 +114,7 @@ int add_to_page_cache_lru(struct page *p
unsigned long index, gfp_t gfp_mask);
extern void remove_from_page_cache(struct page *page);
extern void __remove_from_page_cache(struct page *page);
+extern void __remove_from_page_cache_nocheck(struct page *page);
/*
* Return byte-offset into filesystem object for page....
2007 Jun 28
6
[patch 0/6] resend: guest page hinting version 5.
Greetings,
after Carsten pitched CMM2 on the kvm mini summit here is a repost
of version 5 of the guest page hinting patches. The code is still
the same but has been adapted to the latest git level.
--
blue skies,
Martin.
"Reality continues to ruin my life." - Calvin.
2007 Jun 28
6
[patch 0/6] resend: guest page hinting version 5.
Greetings,
after Carsten pitched CMM2 on the kvm mini summit here is a repost
of version 5 of the guest page hinting patches. The code is still
the same but has been adapted to the latest git level.
--
blue skies,
Martin.
"Reality continues to ruin my life." - Calvin.
2007 May 11
6
[patch 0/6] [rfc] guest page hinting version 5
After way to many months here is the fifth version of the guest page
hinting patches. Compared to version four a few improvements have been
added:
- Avoid page_host_discards() calls outside of page-states.h
- The discard list is now implemented via the page_free_discarded
hook and architecture specific code.
- PG_state_change page flag has been replaced with architecture
specficic
2007 May 11
6
[patch 0/6] [rfc] guest page hinting version 5
After way to many months here is the fifth version of the guest page
hinting patches. Compared to version four a few improvements have been
added:
- Avoid page_host_discards() calls outside of page-states.h
- The discard list is now implemented via the page_free_discarded
hook and architecture specific code.
- PG_state_change page flag has been replaced with architecture
specficic