, and the application doesn't
need to worry about how soon to retry an fstatat which failed with
EWOULDBLOCK.
Thanks for raising this issue again. I hope it gets fixed one day...
NeilBrown
signature.asc
Description: PGP signature
ep further and deprecate GFP_ATOMIC in favour of some
in_atomic() test? Maybe that is going too far.
Thanks,
NeilBrown
>
> Any feedback is highly appreciated.
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
> the body of a message to
On Sat, Apr 30 2016, Dave Chinner wrote:
> On Fri, Apr 29, 2016 at 03:35:42PM +1000, NeilBrown wrote:
>> On Tue, Apr 26 2016, Michal Hocko wrote:
>>
>> > Hi,
>> > we have discussed this topic at LSF/MM this year. There was a general
>> > interest in t
ff Layton <jlay...@redhat.com>
I like that this is a separate lib/*.c - nicely structured too.
Reviewed-by: NeilBrown <ne...@suse.com>
Thanks,
NeilBrown
> ---
> include/linux/errseq.h | 19 +
> lib/Makefile | 2 +-
> lib/errseq.c | 199
> ++
returned object remains in the table until the next ->start,
then you can reliably walk the table with no duplicates or omissions
(unless a concurrent rehash causes duplicates)
If you don't keep the object in the table and it gets removed, then
the 'skip' counter is used to find your place, and you might get
duplicates or omissions.
NeilBrown
signature.asc
Description: PGP signature
s a bit fragile to me.
gfs2_glock_iter_next() (And hence gfs2_glock_seq_start()) will sometimes
exit with gl_held true, and sometimes with it false.
gfs2_glock_seq_stop() assumes that it is false.
Normally gfs2_glock_seq_next() will normally be called between these
two and will clear gl_held, but I don't think the
nction just does
last_pos = *ppos;
*ppos += 1;
do p = rhashtable_walk_next(); while (IS_ERR(p));
return p;
It might be OK to have a function call instead of expecting people to
use iter.p directly.
static inline void *rhashtable_walk_prev(struct rhashtable_iter *iter)
{
return iter->p