[PATCH 0/3] RFC improvements to radix-tree related to DAX

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

While pondering some issues with DAX and how it uses the radix tree I
conceived the following patches.  I don't know if they'll be useful
but I thought I would post them in case they are helpful.

The first is quite independent of the others - it removes some DAX
specific #defines from radix-tree.h which is a generic ADT.

The second makes an extra bit available when exception data is
stored in the radix tree.

The third uses this bit to provide a sleeping lock.  With this
it should be possible to delete exceptional entries from the radix
tree in a race-free way without external locking.
Like the page lock it requires an external set of wait_queue_heads.
The same ones used for page_lock would be suitable.

Note that this code is only compile tested.

NeilBrown


---

NeilBrown (3):
      DAX: move RADIX_DAX_ definitions to dax.c
      radix-tree: make 'indirect' bit available to exception entries.
      radix-tree: support locking of individual exception entries.


 fs/dax.c                   |    9 ++
 include/linux/radix-tree.h |   28 +++++---
 lib/radix-tree.c           |  160 ++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 185 insertions(+), 12 deletions(-)

--
Signature

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]