Re: [RFC PATCH v2 00/12] Rewrite asm-generic/bitops/{atomic,lock}.h and use on arm64
From: Will Deacon
Date: Mon Mar 19 2018 - 13:22:10 EST
Hi Masahiro,
On Mon, Mar 12, 2018 at 12:56:28PM +0900, Masahiro Yamada wrote:
> 2018-03-01 16:16 GMT+09:00 Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>:
> > 2018-02-27 0:04 GMT+09:00 Will Deacon <will.deacon@xxxxxxx>:
> >> Hi everyone,
> >>
> >> This is version two of the RFC I previously posted here:
> >>
> >> https://www.spinics.net/lists/arm-kernel/msg634719.html
> >>
> >> Changes since v1 include:
> >>
> >> * Fixed __clear_bit_unlock to work on archs with lock-based atomics
> >> * Moved lock ops into bitops/lock.h
> >> * Fixed build breakage on lesser-spotted architectures
> >>
> >> Trying to fix the circular #includes introduced by pulling atomic.h
> >> into btops/lock.h has been driving me insane. I've ended up moving some
> >> basic BIT definitions into bits.h, but this might all be better in
> >> const.h which is being proposed by Masahiro. Feedback is especially
> >> welcome on this part.
> >
> >
> > Info for reviewers:
> >
> > You can see my patches at the following:
> >
> > 1/5: https://patchwork.kernel.org/patch/10235457/
> > 2/5: https://patchwork.kernel.org/patch/10235461/
> > 3/5: https://patchwork.kernel.org/patch/10235463/
> > 4/5: https://patchwork.kernel.org/patch/10235469/
> > 5/5: https://patchwork.kernel.org/patch/10235471/
> >
> >
> > 5/5 has conflict with Will's 2/12.
> >
> > Fortunately, it is at the tail of the series.
> > It is easy to pick/drop/change
> > when we decide how to organize it.
>
>
> No comments so far about this part.
>
> I think your approach is better
> since putting BIT* macros into a single header
> is more consistent.
>
> So, I will ask Andrew to drop mine.
Thanks.
> However, I think <linux/bits.h> will make more sense
> than <asm-generic/bits.h>
>
> These macros are really arch-agnostic.
> So, we would not expect to have <asm/bits.h>
> that could fall back to <asm-generic/bits.h>, right?
That's fair. I'll do a respin using linux/*.
Cheers,
Will