Thread (22 messages) 22 messages, 5 authors, 2017-01-03

Re: [PATCH 3/6] ubifs: Use 64bit readdir cookies

From: Richard Weinberger <richard@nod.at>
Date: 2016-12-29 15:50:00
Also in: linux-fsdevel, lkml

Bruce,

On 29.12.2016 16:34, J. Bruce Fields wrote:
quoted
That way UBIFS can provide a 64bit readdir() cookie which is required for NFS3.
Sounds good.  And if a matching entry isn't found (as in the case of a
concurrent unlink), what happens?  The answer must be the same as for
ext4, but I've forgotten the details....  I guess it must find the next
highest cookie (thinking of the cookie as a 64-bit integer of some kind)
that exists in the directory.  And that must be the same order that
readdir normally returns entries in.
If a 64bit cookie is not found, the lookup function returns -ENOENT.
In UBIFS we cannot just select a higher or lower key (cookie in this case),
since it is the B-tree key and would point to a completely different
entry.

So, in case of a concurrent unlink() one would succeed and one fail with
-ENOENT. Unless I miss something that seems okay to me.

Thanks,
//richard
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help