summaryrefslogtreecommitdiffstats
path: root/Documentation/core-api
diff options
context:
space:
mode:
authorMatthew Wilcox <willy@infradead.org>2018-10-01 20:54:59 +0200
committerMatthew Wilcox <willy@infradead.org>2018-10-21 16:46:00 +0200
commit9f14d4f1f1045f161fd4db8a8e194b7825c2874a (patch)
treefcc3e832d34116dec5dfe2e36525cbdb81cc47c8 /Documentation/core-api
parentxarray: Add xas_create_range (diff)
downloadlinux-9f14d4f1f1045f161fd4db8a8e194b7825c2874a.tar.xz
linux-9f14d4f1f1045f161fd4db8a8e194b7825c2874a.zip
xarray: Add xa_reserve and xa_release
This function reserves a slot in the XArray for users which need to acquire multiple locks before storing their entry in the tree and so cannot use a plain xa_store(). Signed-off-by: Matthew Wilcox <willy@infradead.org>
Diffstat (limited to 'Documentation/core-api')
-rw-r--r--Documentation/core-api/xarray.rst6
1 files changed, 6 insertions, 0 deletions
diff --git a/Documentation/core-api/xarray.rst b/Documentation/core-api/xarray.rst
index 4b101b4f3aa1..2b397da84bcd 100644
--- a/Documentation/core-api/xarray.rst
+++ b/Documentation/core-api/xarray.rst
@@ -293,6 +293,12 @@ to :c:func:`xas_retry`, and retry the operation if it returns ``true``.
of this RCU period. You should restart the lookup from the head
of the array.
+ * - Zero
+ - :c:func:`xa_is_zero`
+ - Zero entries appear as ``NULL`` through the Normal API, but occupy
+ an entry in the XArray which can be used to reserve the index for
+ future use.
+
Other internal entries may be added in the future. As far as possible, they
will be handled by :c:func:`xas_retry`.