lkml.org 
[lkml]   [2018]   [Jun]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH] locking/memory-barriers.txt/kokr: Update Korean translation to fix broken DMA vs. MMIO ordering example
On Tue, Jun 26, 2018 at 09:25:08PM +0900, SeongJae Park wrote:
> Hello Paul,
>
> On Tue, Jun 26, 2018 at 9:20 PM Paul E. McKenney
> <paulmck@linux.vnet.ibm.com> wrote:
> >
> > On Tue, Jun 26, 2018 at 03:58:27PM +0900, Byungchul Park wrote:
> > > On Tue, Jun 26, 2018 at 02:10:17PM +0900, SeongJae Park wrote:
> > > >
> > > >
> > > > On Tue, 26 Jun 2018, Byungchul Park wrote:
> > > >
> > > > > On Tue, Jun 26, 2018 at 12:21:23PM +0900, sjpark wrote:
> > > > > > Hello Byungchul,
> > > > > >
> > > > > >
> > > > > > On Tue, 26 Jun 2018, Byungchul Park wrote:
> > > > > >
> > > > > > > On Sun, Jun 17, 2018 at 02:16:08PM +0900, SeongJae Park wrote:
> > > > > > > > Translate this commit to Korean:
> > > > > > > >
> > > > > > > > 5846581e3563 ("locking/memory-barriers.txt: Fix broken DMA vs. MMIO ordering example")
> > > > > > >
> > > > > > > Hi SeongJae,
> > > > > > >
> > > > > > > You keep doing good jobs ;)
> > > > > > >
> > > > > > > I believe it would be better if you consider the little things below
> > > > > > > more. What do you think about it, SeongJae?
> > > > > >
> > > > > > Thank you for great comments!
> > > > > >
> > > > > > >
> > > > > > > > Signed-off-by: SeongJae Park <sj38.park@gmail.com>
> > > > > > > > ---
> > > > > > > > Documentation/translations/ko_KR/memory-barriers.txt | 15 +++++++--------
> > > > > > > > 1 file changed, 7 insertions(+), 8 deletions(-)
> > > > > > > >
> > > > > > > > diff --git a/Documentation/translations/ko_KR/memory-barriers.txt b/Documentation/translations/ko_KR/memory-barriers.txt
> > > > > > > > index 921739d00f69..ada0a709cce1 100644
> > > > > > > > --- a/Documentation/translations/ko_KR/memory-barriers.txt
> > > > > > > > +++ b/Documentation/translations/ko_KR/memory-barriers.txt
> > > > > > > > @@ -1891,19 +1891,18 @@ Mandatory 배리어들은 SMP 시스템에서도 UP 시스템에서도 SMP 효
> > > > > > > > /* 소유권을 수정 */
> > > > > > > > desc->status = DEVICE_OWN;
> > > > > > > >
> > > > > > > > - /* MMIO 를 통해 디바이스에 공지를 하기 전에 메모리를 동기화 */
> > > > > > > > - wmb();
> > > > > > > > -
> > > > > > > > /* 업데이트된 디스크립터의 디바이스에 공지 */
> > > > > > > > writel(DESC_NOTIFY, doorbell);
> > > > > > > > }
> > > > > > > >
> > > > > > > > dma_rmb() 는 디스크립터로부터 데이터를 읽어오기 전에 디바이스가 소유권을
> > > > > > > > - 내놓았음을 보장하게 하고, dma_wmb() 는 디바이스가 자신이 소유권을 다시
> > > > > > > > - 가졌음을 보기 전에 디스크립터에 데이터가 쓰였음을 보장합니다. wmb() 는
> > > > > > > > - 캐시 일관성이 없는 (cache incoherent) MMIO 영역에 쓰기를 시도하기 전에
> > > > > > > > - 캐시 일관성이 있는 메모리 (cache coherent memory) 쓰기가 완료되었음을
> > > > > > > > - 보장해주기 위해 필요합니다.
> > > > > > > > + 내려놓았을 것을 보장하고, dma_wmb() 는 디바이스가 자신이 소유권을 다시
> > > > > > > > + 가졌음을 보기 전에 디스크립터에 데이터가 쓰였을 것을 보장합니다. writel()
> > > > > > > ^
> > > > > > > 참고로,
> > > > > >
> > > > > > Nice comment. This will enhance the readability a lot.
> > > > >
> > > > > Could you add this, too? A quite little thing tho.
> > > >
> > > > Oops, I missed that. Sorry. Attaching the patch below.
> > > >
> > > >
> > > > Thanks, SeongJae Park
> > >
> > > Thanks a lot, SeongJae.
> > >
> > > Acked-by: Byungchul Park <byungchul.park@lge.com>
> >
> > Thank you both!
> >
> > The patch below is the complete patch, so that I should replace
> > what I have with it, correct? If not, please help me out here. ;-)
>
> Yes, correct! :)

Like this, then?

Thanx, Paul

------------------------------------------------------------------------

commit 3cb0d7701c4ce6668fb5096c90ec6d5b4bf71638
Author: SeongJae Park <sj38.park@gmail.com>
Date: Sun Jun 17 14:16:08 2018 +0900

locking/memory-barriers.txt/kokr: Update Korean translation to fix broken DMA vs. MMIO ordering example

Translate this commit to Korean:

5846581e3563 ("locking/memory-barriers.txt: Fix broken DMA vs. MMIO ordering example")

Signed-off-by: SeongJae Park <sj38.park@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
[ paulmck: Updated based on feedback from Byungchul Park. ]
Acked-by: Byungchul Park <byungchul.park@lge.com>

diff --git a/Documentation/translations/ko_KR/memory-barriers.txt b/Documentation/translations/ko_KR/memory-barriers.txt
index 921739d00f69..7f01fb1c1084 100644
--- a/Documentation/translations/ko_KR/memory-barriers.txt
+++ b/Documentation/translations/ko_KR/memory-barriers.txt
@@ -1891,22 +1891,22 @@ Mandatory 배리어들은 SMP 시스템에서도 UP 시스템에서도 SMP 효
/* 소유권을 수정 */
desc->status = DEVICE_OWN;

- /* MMIO 를 통해 디바이스에 공지를 하기 전에 메모리를 동기화 */
- wmb();
-
/* 업데이트된 디스크립터의 디바이스에 공지 */
writel(DESC_NOTIFY, doorbell);
}

dma_rmb() 는 디스크립터로부터 데이터를 읽어오기 전에 디바이스가 소유권을
- 내놓았음을 보장하게 하고, dma_wmb() 는 디바이스가 자신이 소유권을 다시
- 가졌음을 보기 전에 디스크립터에 데이터가 쓰였음을 보장합니다. wmb() 는
- 캐시 일관성이 없는 (cache incoherent) MMIO 영역에 쓰기를 시도하기 전에
- 캐시 일관성이 있는 메모리 (cache coherent memory) 쓰기가 완료되었음을
- 보장해주기 위해 필요합니다.
-
- consistent memory 에 대한 자세한 내용을 위해선 Documentation/DMA-API.txt
- 문서를 참고하세요.
+ 내려놓았을 것을 보장하고, dma_wmb() 는 디바이스가 자신이 소유권을 다시
+ 가졌음을 보기 전에 디스크립터에 데이터가 쓰였을 것을 보장합니다. 참고로,
+ writel() 을 사용하면 캐시 일관성이 있는 메모리 (cache coherent memory)
+ 쓰기가 MMIO 영역에의 쓰기 전에 완료되었을 것을 보장하므로 writel() 앞에
+ wmb() 를 실행할 필요가 없음을 알아두시기 바랍니다. writel() 보다 비용이
+ 저렴한 writel_relaxed() 는 이런 보장을 제공하지 않으므로 여기선 사용되지
+ 않아야 합니다.
+
+ writel_relaxed() 와 같은 완화된 I/O 접근자들에 대한 자세한 내용을 위해서는
+ "커널 I/O 배리어의 효과" 섹션을, consistent memory 에 대한 자세한 내용을
+ 위해선 Documentation/DMA-API.txt 문서를 참고하세요.


MMIO 쓰기 배리어
\
 
 \ /
  Last update: 2018-06-27 00:05    [W:0.304 / U:0.480 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site