[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180523125542.GT12198@hirez.programming.kicks-ass.net>
Date: Wed, 23 May 2018 14:55:42 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Cc: linux-kernel@...r.kernel.org, tglx@...utronix.de,
Ingo Molnar <mingo@...hat.com>, linux-mm@...ck.org,
Shaohua Li <shli@...nel.org>, linux-raid@...r.kernel.org,
Anna-Maria Gleixner <anna-maria@...utronix.de>
Subject: Re: [PATCH 3/8] md: raid5: use refcount_t for reference counting
instead atomic_t
On Wed, May 23, 2018 at 02:50:07PM +0200, Sebastian Andrzej Siewior wrote:
> On 2018-05-23 14:36:15 [+0200], Peter Zijlstra wrote:
> > > Most changes are 1:1 replacements except for
> > > BUG_ON(atomic_inc_return(&sh->count) != 1);
> >
> > That doesn't look right, 'inc_return == 1' implies inc-from-zero, which
> > is not allowed by refcount.
> >
> > > which has been turned into
> > > refcount_inc(&sh->count);
> > > BUG_ON(refcount_read(&sh->count) != 1);
> >
> > And that is racy, you can have additional increments in between.
>
> so do we stay with the atomic* API here or do we extend refcount* API?
Stay with the atomic; I'll look at the rest of these patches, but raid5
looks like a usage-count, not a reference count.
I'll probably ack your initial set and parts of this.. but let me get to
the end of this first.
Powered by blists - more mailing lists