[patch 0/7] lockless pagecache 2

From: Nick Piggin
Date: Thu Aug 11 2005 - 07:18:56 EST


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 -
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/