Re: [PATCH v2] Documentation/barriers/kokr: Remove references to [smp_]read_barrier_depends()
From: SeongJae Park
Date: Fri Dec 06 2019 - 16:30:23 EST
On Fri, Dec 6, 2019 at 9:44 PM Paul E. McKenney <paulmck@xxxxxxxxxx> wrote:
>
> On Fri, Dec 06, 2019 at 06:20:51PM +0100, SeongJae Park wrote:
> > Hello Paul and Will,
> >
> > On Fri, Nov 29, 2019 at 7:09 PM SeongJae Park <sj38.park@xxxxxxxxx> wrote:
> > >
> > > Paul, thank you for waiting long. I got reviewed by another Korean
> > > hacker, Yunjae.
> > >
> > > Changes from v1 (https://lore.kernel.org/lkml/20191121193209.15687-1-sj38.park@xxxxxxxxx/)
> > > - Get a review from Yunjae
> > > - Minor wordsmith based on the review comment
> > > - Rebased on git://git.lwn.net/linux.git tags/docs-5.5
> > > - Update author's email address
> >
> > May I ask your comments?
>
> I thought that Jon Corbet had already queued these. Did I miss some?
This patch has not queued by Jon, indeed. I haven't CC-ed neither Jon, nor
linux-doc for the 1st version of this patch because this is a followup of
Will's patch[1] and the Will's patch also have not CC-ed them.
I sent another patchset[2] for documents simultaneously but CC-ed Jon and
linux-doc for the patch, because the patchset is a followup of the commits
which already merged in Torvalds's tree. The patchset has queued by both of
you and then you agreed to merge it by Jon's tree. I guess I made the
confusion in this way. Sorry for making such confusion. Anyway, this patch
is not queued in any tree, AFIK.
Thanks,
SeongJae Park
[1] https://lore.kernel.org/lkml/20191108170120.22331-10-will@xxxxxxxxxx/
[2] https://lore.kernel.org/linux-doc/20191121234125.28032-1-sj38.park@xxxxxxxxx/
>
> Thanx, Paul
>
> > Thanks,
> > SeongJae Park
> >
> > >
> > > --------------------------------- >8 -----------------------------------------
> > >
> > > This commit translates commit 8088616d4ca6 ("Documentation/barriers:
> > > Remove references to [smp_]read_barrier_depends()") of Will's tree[1]
> > > into Korean.
> > >
> > > [1] https://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git/commit/Documentation/memory-barriers.txt?h=lto&id=8088616d4ca61cd6b770225f30fec66c6f6767fb
> > >
> > > Signed-off-by: SeongJae Park <sjpark@xxxxxxxxx>
> > > Reviewed-by: Yunjae Lee <lyj7694@xxxxxxxxx>
> > >
> > > ---
> > > .../translations/ko_KR/memory-barriers.txt | 146 +-----------------
> > > 1 file changed, 3 insertions(+), 143 deletions(-)
> > >
> > > diff --git a/Documentation/translations/ko_KR/memory-barriers.txt b/Documentation/translations/ko_KR/memory-barriers.txt
> > > index f07c40a068b5..a8d26df9360b 100644
> > > --- a/Documentation/translations/ko_KR/memory-barriers.txt
> > > +++ b/Documentation/translations/ko_KR/memory-barriers.txt
> > > @@ -577,7 +577,7 @@ ACQUIRE ë íë ìíëììì ëë ëëìë ììëê RELEASE
> > > ëìí ììì ëëì (ììì)
> > > -----------------------------
> > >
> > > -ëëì ìë v4.15 êììë, smp_read_barrier_depends() ê READ_ONCE() ì
> > > +ëëì ìë v4.15 êììë, smp_mb() ê DEC Alpha ì READ_ONCE() ìëì
> > > ìêëìëë, ìë ì ììì ììë êììì íë ìëëì DEC Alpha ìííì
> > > ìì ìëë ëëë ìëëê READ_ONCE() ììë ëëë ìëë ëìì ìëíëë.
> > > êë ëëì ìí, êëê ììì êì ìë ëëì ìí, ìê ëìí ììì
> > > @@ -2661,144 +2661,6 @@ CPU ììë íëêëì ìêìì ììëëêë ìêìëë
> > > ìë ììëë.
> > >
> > >
> > > -ìì ìêì
> > > ------------
> > > -
> > > -íìë ìì ììì ììêí êìë ëìíì ììëë: ììëì ìêìì êìë
> > > -êëëìë, ê ìêìì ìììë ììë êëë ëìì ììëë. í CPU ìì
> > > -ëëìì ëê ìíì ììììëë ììíì ëë CPU ìê ëììê ëìë, ëë
> > > -CPU ëìêë êì ììë ëìê ë êëë ëìì ìëë ëìëë.
> > > -
> > > -
> > > -ëêì CPU (1 & 2) ê ëë ìê, ê CPU ì ëêì ëìí ìì(CPU 1 ì A/B ë,
> > > -CPU 2 ë C/D ë êìëë)ê ëëë ìêëì ìë ììíì ëëëê ìêí
> > > -ëìë:
> > > -
> > > - :
> > > - : +--------+
> > > - : +---------+ | |
> > > - +--------+ : +--->| Cache A |<------->| |
> > > - | | : | +---------+ | |
> > > - | CPU 1 |<---+ | |
> > > - | | : | +---------+ | |
> > > - +--------+ : +--->| Cache B |<------->| |
> > > - : +---------+ | |
> > > - : | Memory |
> > > - : +---------+ | System |
> > > - +--------+ : +--->| Cache C |<------->| |
> > > - | | : | +---------+ | |
> > > - | CPU 2 |<---+ | |
> > > - | | : | +---------+ | |
> > > - +--------+ : +--->| Cache D |<------->| |
> > > - : +---------+ | |
> > > - : +--------+
> > > - :
> > > -
> > > -ì ììíì ëìê êì íìì êëë ìêí ëìë:
> > > -
> > > - (*) íìë ììëìì ìì A, ìì C ëë ëëëì ììí ì ìì;
> > > -
> > > - (*) ììë ììëìì ìì B, ìì D ëë ëëëì ììí ì ìì;
> > > -
> > > - (*) CPU ììê íêì ììì ìêíë ëì, ëë ììë - ëí ììëìì
> > > - ëëëì ëëêë ììì ëëë íêë íê ìí - ììíì ëë ëëì
> > > - ììì íê ìí ëìë ììí ì ìì;
> > > -
> > > - (*) ê ììë ììíì ëëì ëëëê ìêìì ëìê ìí íë ììì
> > > - ììëìì í ìíëììëì íë êì;
> > > -
> > > - (*) ì ìêì íë ììì ìë ììíë ëìì êíìë íëí ëëì ìíìë
> > > - ëììì ìëë, íì ìíëììëì ì ëëì êêì ìíì ëì ì ìë
> > > - íìëë êëí.
> > > -
> > > -ìì, ìëì CPU ìì ëêì ìê ìíëììì ëëëë, íë CPU ì ììì
> > > -ììë ììë ìíëììì ëëëì ëìíê ìí ë ìíëìì ììì ìê
> > > -ëëìë ììíë ìíì ììí ëìë:
> > > -
> > > - CPU 1 CPU 2 COMMENT
> > > - =============== =============== =======================================
> > > - u == 0, v == 1 and p == &u, q == &u
> > > - v = 2;
> > > - smp_wmb(); v ì ëêì p ì ëê ìì ëì êì
> > > - ëëí í
> > > - <A:modify v=2> v ë ìì ìì A ì ëìììë ììí
> > > - p = &v;
> > > - <B:modify p=&v> p ë ìì ìì B ì ëìììë ììí
> > > -
> > > -ìêìì ìê ëëë ëëìë CPU 1 ì ììê ìëë ììë ìëìí ë êìë
> > > -ììíì ëë CPU ëì ììíê ëëëë. íìë, ìì ëëì CPU ê ê êëì
> > > -ììë íë ìíì ìêí ëìë:
> > > -
> > > - CPU 1 CPU 2 COMMENT
> > > - =============== =============== =======================================
> > > - ...
> > > - q = p;
> > > - x = *q;
> > > -
> > > -ìì ëêì ìê ìíëììì ììë ììë ììëì ëí ì ìëë, ëëì CPU
> > > -ì í ììì ëë ìì ìëíê ëìí v ë ëê ìë ììëìì íë ìììì
> > > -ìëìíê ììëë ìì, p ë ëê ìë ììëìì ëëì CPU ì ëë ììì
> > > -ìëìí ëìëëì ì ìê ëëìëë.
> > > -
> > > - CPU 1 CPU 2 COMMENT
> > > - =============== =============== =======================================
> > > - u == 0, v == 1 and p == &u, q == &u
> > > - v = 2;
> > > - smp_wmb();
> > > - <A:modify v=2> <C:busy>
> > > - <C:queue v=2>
> > > - p = &v; q = p;
> > > - <D:request p>
> > > - <B:modify p=&v> <D:commit p=&v>
> > > - <D:read p>
> > > - x = *q;
> > > - <C:read *q> ììì ìëìí ëê ìì v ë ìì
> > > - <C:unbusy>
> > > - <C:commit v=2>
> > > -
> > > -êëììë, ëêì ììëì ëë CPU 2 ì ììììëë ìëìí ë êììë,
> > > -ëëì êì ììë, ìëìíì ììê CPU 1 ìì ëëìì ììì ëìí
> > > -êìëë ëìì ììëë.
> > > -
> > > -
> > > -ìêì êìíê ìíì, ëìí ììì ëëìë ìê ëëìë ëë ìíëììë
> > > -ììì ëìì íëë (v4.15 ëíë READ_ONCE() ëíëì ìí ëìêììë
> > > -êëê ëëë). ìëê íìëì ììê ëì ììì ìëíê ìì ìêì íë
> > > -ìëíëë êìíê ëëë.
> > > -
> > > - CPU 1 CPU 2 COMMENT
> > > - =============== =============== =======================================
> > > - u == 0, v == 1 and p == &u, q == &u
> > > - v = 2;
> > > - smp_wmb();
> > > - <A:modify v=2> <C:busy>
> > > - <C:queue v=2>
> > > - p = &v; q = p;
> > > - <D:request p>
> > > - <B:modify p=&v> <D:commit p=&v>
> > > - <D:read p>
> > > - smp_read_barrier_depends()
> > > - <C:unbusy>
> > > - <C:commit v=2>
> > > - x = *q;
> > > - <C:read *q> ììì ìëìí ë v ë ìì
> > > -
> > > -
> > > -ìë ëëì ëìë DEC Alpha êì íëììëìì ëêë ì ìëë, ìëì
> > > -ëìí ëìë ì ë ì ììí ìëì êìí ì ìë, ëíë ììë êìê ìê
> > > -ëëìëë. ëëëì CPU ë íëì ìê ìíëììì ëëë ìììê ëë ìê
> > > -ìíëììì ììììëë ëìí ììì ëëìë ëíìíëëë, ëëê êëê
> > > -ìëê ëëì ììì ììíì ìëëë.
> > > -
> > > -ëë CPU ëë ëíë ììë êìê ìì ì ììë, êë CPU ëì íëí ëëë
> > > -ìììë ìíìë ì ëíë ììë ììì ììì íìë íëë. Alpha ë êì
> > > -ìí ëëë ìì ìëí (semantic) ì ìííìëì ëëë ëëìê ëìììë
> > > -ììëì ììì ëìë êë ììì íìíì ìê íìë, ìë Alpha ê ëìì
> > > -ë ëì CPU íë ìëë êì ì ìê íìëë. íìë, (ëì ëíêë, v4.15
> > > -ìíëíë) Alpha ìííì ìì ìëì READ_ONCE() ëíë ëëììë ììíêë
> > > -smp_read_barrier_depends() ê ììëì ììì íì ììëìê ëëëë.
> > > -
> > > -
> > > ìì ìêì VS DMA
> > > ------------------
> > >
> > > @@ -2959,10 +2821,8 @@ Alpha CPU ì ìë ëìì ëíë ëìí ììë êìê ììì
> > > ëìíì ëêì ìëë ììë ììëê íê ëëìëë.
> > >
> > > ëëì ìëì ëëë ëëì ëëì Alpha ì êìíì ììëììëëë, v4.15
> > > -ëíë ëëì ìëì READ_ONCE() ëì smp_read_barrier_depends() ë ìêíì
> > > -Alpha ì ëëë ëëëì ìíëì íê ììëê íìëë.
> > > -
> > > -ìì "ìì ìêì" ìëììì ìêíìì.
> > > +ëíë Alpha ì READ_ONCE() ìë ëì smp_mb() ê ìêëìì ëëë ëëëì
> > > +Alpha ì ìíëì íê ììëììëë.
> > >
> > >
> > > êì ëì êìí
> > > --
> > > 2.17.2
> > >