public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [patch 0/7] lockless pagecache 2
@ 2005-08-11 12:18 Nick Piggin
  2005-08-11 12:21 ` [patch 1/7] mm: remove PageReserved rollup Nick Piggin
  0 siblings, 1 reply; 16+ messages in thread
From: Nick Piggin @ 2005-08-11 12:18 UTC (permalink / raw)
  To: Paul McKenney, Dipankar Sarma, Ingo Molnar, linux-kernel

This is my second attempt at a lockless pagecache.

Patches are against 2.6.13-rc6, and have had reasonable
stressing (albeit on small SMPs).

Main changes since last seen:
* Code clarity and commenting improvement.

* Fix race where multiple concurrent failed speculative
   reference takers could be confused into thinking a free
   page wasn't free, due to the elevated refcounts.

* Convert radix tree node freeing over to RCU. I completely
   missed this problem in my first attempt. (My first real
   RCU attempt - completely wrong?).

* page_cache_get_speculative previously used only preempt_
   disable to stop the current CPU from entering the page
   allocator. Needs to turn off interrupts too.

   Paul picked this bug up without seeing the code, just a
   vague description of what I was trying to do. All I
   picked up was my jaw from the ground ;)

-- 
SUSE Labs, Novell Inc.

Send instant messages to your online friends http://au.messenger.yahoo.com 

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2005-08-12  7:53 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-08-11 12:18 [patch 0/7] lockless pagecache 2 Nick Piggin
2005-08-11 12:21 ` [patch 1/7] mm: remove PageReserved rollup Nick Piggin
2005-08-11 12:22   ` [patch 2/7] mm: PG_free flag Nick Piggin
2005-08-11 12:22     ` [patch 3/7] mm: speculative get_page Nick Piggin
2005-08-11 12:25       ` [patch 4/7] radix-tree: lookup_slot Nick Piggin
2005-08-11 12:25         ` [patch 5/7] radix-tree: lockless readside Nick Piggin
2005-08-11 12:28           ` [patch 6/7] mm: lockless pagecache Nick Piggin
2005-08-11 12:28             ` [patch 7/7] mm: spinlock tree_lock Nick Piggin
2005-08-11 13:58             ` [patch 6/7] mm: lockless pagecache Pekka Enberg
2005-08-11 14:06               ` Nick Piggin
2005-08-12  1:49             ` Paul E. McKenney
2005-08-12  4:04               ` Nick Piggin
2005-08-12  1:37           ` [patch 5/7] radix-tree: lockless readside Paul E. McKenney
2005-08-12  3:59             ` Nick Piggin
2005-08-12  4:38             ` Nick Piggin
2005-08-12  7:53               ` Nick Piggin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox