From: LABBE Corentin <clabbe@baylibre•com>
To: Russell King - ARM Linux <linux@armlinux•org.uk>
Cc: Gilles.Muller@lip6•fr, Julia.Lawall@lip6•fr, agust@denx•de,
airlied@linux•ie, alexandre.torgue@st•com, alistair@popple•id.au,
benh@kernel•crashing.org, carlo@caione•org, davem@davemloft•net,
galak@kernel•crashing.org, joabreu@synopsys•com,
khilman@baylibre•com, matthias.bgg@gmail•com,
maxime.ripard@bootlin•com, michal.lkml@markovi•net,
mpe@ellerman•id.au, mporter@kernel•crashing.org,
narmstrong@baylibre•com, nicolas.palix@imag•fr, oss@buserror•net,
paulus@samba•org, peppe.cavallaro@st•com, tj@kernel•org,
vitb@kernel•crashing.org, wens@csie•org, netdev@vger•kernel.org,
linux-kernel@vger•kernel.org, dri-devel@lists•freedesktop.org,
linux-ide@vger•kernel.org, linux-sunxi@googlegroups•com,
linux-mediatek@lists•infradead.org,
linux-amlogic@lists•infradead.org, linuxppc-dev@lists•ozlabs.
Subject: Re: [PATCH v3 0/7] include: add setbits32/clrbits32/clrsetbits32/setbits64/clrbits64/clrsetbits64
Date: Thu, 15 Nov 2018 13:24:44 +0100 [thread overview]
Message-ID: <20181115122444.GA29281@Red> (raw)
In-Reply-To: <20181115093348.GV30658@n2100.armlinux.org.uk>
On Thu, Nov 15, 2018 at 09:33:48AM +0000, Russell King - ARM Linux wrote:
> On Thu, Nov 15, 2018 at 10:30:34AM +0100, LABBE Corentin wrote:
> > On Wed, Oct 24, 2018 at 09:57:00AM +0100, Russell King - ARM Linux wrote:
> > > On Wed, Oct 24, 2018 at 07:35:46AM +0000, Corentin Labbe wrote:
> > > > This patchset adds a new set of functions which are open-coded in lot of
> > > > place.
> > > > Basicly the pattern is always the same, "read, modify a bit, write"
> > > > some driver and the powerpc arch already have thoses pattern them as functions. (like ahci_sunxi.c or dwmac-meson8b)
> > >
> > > The advantage of them being open-coded is that it's _obvious_ to the
> > > reviewer that there is a read-modify-write going on which, in a multi-
> > > threaded environment, may need some locking (so it should trigger a
> > > review of the locking around that code.)
> > >
> > > With it hidden inside a helper which has no locking itself, it becomes
> > > much easier to pass over in review, which means that races are much
> > > more likely to go unspotted - and that is bad news.
> > >
> >
> > Hello
> >
> > I understand your fear, but I think the benefit overhaul thoses.
> > Furthermore, drivers which I have converted does not need such locking.
> >
> > If you want I can rename the header to linux/setbits-non-atomic.h for making obvious the lack of locking.
>
> It'd probably be better in the function name - it then doesn't get
> "lost" that it's non-atomic when it's included via other headers.
>
I proposed that way for doing like writeq have do it with io-64-nonatomic-hi-lo.h
prev parent reply other threads:[~2018-11-15 12:24 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-24 7:35 [PATCH v3 0/7] include: add setbits32/clrbits32/clrsetbits32/setbits64/clrbits64/clrsetbits64 Corentin Labbe
2018-10-24 7:35 ` [PATCH v3 1/7] powerpc: rename setbits32/clrbits32 to setbits_be32/clrbits_be32 Corentin Labbe
2018-10-24 7:35 ` [PATCH v3 2/7] include: add setbits_leXX/clrbits_leXX/clrsetbits_leXX in linux/setbits.h Corentin Labbe
2018-10-24 22:46 ` Jakub Kicinski
2018-10-24 7:35 ` [PATCH v3 3/7 DONOTMERGE] coccinelle: add xxxsetbits_leXX converting spatch Corentin Labbe
2018-10-24 7:35 ` [PATCH v3 4/7] ata: ahci_sunxi: use xxxsetbitsi_le32 functions Corentin Labbe
[not found] ` <1540366553-18541-5-git-send-email-clabbe-rdvid1DuHRBWk0Htik3J/w@public.gmane.org>
2018-10-24 7:57 ` Sergei Shtylyov
2018-10-24 7:35 ` [PATCH v3 5/7] net: ethernet: stmmac: dwmac-sun8i: use xxxsetbits_le32 Corentin Labbe
2018-10-24 7:35 ` [PATCH v3 6/7] drm: meson: " Corentin Labbe
2018-10-24 7:35 ` [PATCH v3 7/7] net: stmmac: dwmac-meson8b: " Corentin Labbe
2018-10-24 8:57 ` [PATCH v3 0/7] include: add setbits32/clrbits32/clrsetbits32/setbits64/clrbits64/clrsetbits64 Russell King - ARM Linux
2018-11-15 9:30 ` LABBE Corentin
2018-11-15 9:33 ` Russell King - ARM Linux
2018-11-15 12:24 ` LABBE Corentin [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181115122444.GA29281@Red \
--to=clabbe@baylibre$(echo .)com \
--cc=Gilles.Muller@lip6$(echo .)fr \
--cc=Julia.Lawall@lip6$(echo .)fr \
--cc=agust@denx$(echo .)de \
--cc=airlied@linux$(echo .)ie \
--cc=alexandre.torgue@st$(echo .)com \
--cc=alistair@popple$(echo .)id.au \
--cc=benh@kernel$(echo .)crashing.org \
--cc=carlo@caione$(echo .)org \
--cc=davem@davemloft$(echo .)net \
--cc=dri-devel@lists$(echo .)freedesktop.org \
--cc=galak@kernel$(echo .)crashing.org \
--cc=joabreu@synopsys$(echo .)com \
--cc=khilman@baylibre$(echo .)com \
--cc=linux-amlogic@lists$(echo .)infradead.org \
--cc=linux-ide@vger$(echo .)kernel.org \
--cc=linux-kernel@vger$(echo .)kernel.org \
--cc=linux-mediatek@lists$(echo .)infradead.org \
--cc=linux-sunxi@googlegroups$(echo .)com \
--cc=linux@armlinux$(echo .)org.uk \
--cc=linuxppc-dev@lists$(echo .)ozlabs. \
--cc=matthias.bgg@gmail$(echo .)com \
--cc=maxime.ripard@bootlin$(echo .)com \
--cc=michal.lkml@markovi$(echo .)net \
--cc=mpe@ellerman$(echo .)id.au \
--cc=mporter@kernel$(echo .)crashing.org \
--cc=narmstrong@baylibre$(echo .)com \
--cc=netdev@vger$(echo .)kernel.org \
--cc=nicolas.palix@imag$(echo .)fr \
--cc=oss@buserror$(echo .)net \
--cc=paulus@samba$(echo .)org \
--cc=peppe.cavallaro@st$(echo .)com \
--cc=tj@kernel$(echo .)org \
--cc=vitb@kernel$(echo .)crashing.org \
--cc=wens@csie$(echo .)org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox