Messages in this thread | | | Date | Mon, 26 Apr 2021 19:52:49 +0000 | From | Al Viro <> | Subject | Re: [PATCH v7 01/31] iov_iter: Add ITER_XARRAY |
| |
On Mon, Apr 26, 2021 at 08:23:31PM +0100, David Howells wrote:
> I really need to defer this question to Willy, but as I understand it, > xas_retry() only restarts the current iteration. Referring to the comment on > xas_reset(): > > * Resets the error or walk state of the @xas so future walks of the > * array will start from the root. Use this if you have dropped the > * xarray lock and want to reuse the xa_state. > > I think that the walk returns to the bottom of the tree and whilst xarray > presents an interface that appears to be a contiguous array, it's actually a > tree internally - and 'root' is the root of the tree, not the head of the > array. > > Basically, I think it throws away its cached iteration state - which might > have been modified - and rewalks the tree to get back to the same index.
From RTFS(lib/xarray.c) that looks right. Nevermind the question, then...
Anyway,
Reviewed-by: Al Viro <viro@zeniv.linux.org.uk>
on the xarray-related bits (this patch + followups)
| |