Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(437)

Issue 6034048: code review 6034048: sync/atomic: fix 64-bit atomic cas for Linux/ARM (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 11 months ago by minux1
Modified:
12 years, 10 months ago
Reviewers:
CC:
bradfitz, rsc, golang-dev
Visibility:
Public.

Description

sync/atomic: fix 64-bit atomic cas for Linux/ARM This is a follow-up to CL 5978051. Use kernel cas64 helper if we can, fallback to LDREXD/STREXD if we are on ARMv6 or higher, and to lock-emulated cas64 if on ARMv5. A future CL will fix {Add,Load,Store}{Int,Uint}64 and issue 3331.

Patch Set 1 #

Patch Set 2 : diff -r 6c1797405851 https://code.google.com/p/go/ #

Patch Set 3 : diff -r 6c1797405851 https://code.google.com/p/go/ #

Patch Set 4 : diff -r 6c1797405851 https://code.google.com/p/go/ #

Patch Set 5 : diff -r 6c1797405851 https://code.google.com/p/go/ #

Patch Set 6 : diff -r 6c1797405851 https://code.google.com/p/go/ #

Total comments: 1

Patch Set 7 : diff -r 2eec2501961c https://code.google.com/p/go/ #

Total comments: 1

Patch Set 8 : diff -r 6c231e101df3 https://code.google.com/p/go/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+55 lines, -6 lines) Patch
M src/pkg/sync/atomic/asm_linux_arm.s View 1 2 3 4 5 6 1 chunk +55 lines, -6 lines 0 comments Download

Messages

Total messages: 10
minux1
Hello golang-dev@googlegroups.com (cc: golang-dev@googlegroups.com), I'd like you to review this change to https://code.google.com/p/go/
12 years, 11 months ago (2012-04-15 20:08:20 UTC) #1
minux1
any thoughts on this CL and CL 5978051? another way to get architecture information is ...
12 years, 11 months ago (2012-04-19 19:22:43 UTC) #2
bradfitz
What's the concern about parsing /proc/cpuinfo? Complexity or stability? It's Linux-specific, sure, but it's part ...
12 years, 11 months ago (2012-04-19 19:33:53 UTC) #3
minux1
On Fri, Apr 20, 2012 at 3:33 AM, Brad Fitzpatrick <bradfitz@golang.org>wrote: > What's the concern ...
12 years, 11 months ago (2012-04-19 19:42:08 UTC) #4
rsc
http://codereview.appspot.com/6034048/diff/12001/src/pkg/sync/atomic/init_arm.go File src/pkg/sync/atomic/init_arm.go (right): http://codereview.appspot.com/6034048/diff/12001/src/pkg/sync/atomic/init_arm.go#newcode9 src/pkg/sync/atomic/init_arm.go:9: func init() { sync/atomic is imported by just about ...
12 years, 10 months ago (2012-04-25 03:14:10 UTC) #5
minux1
Hello bradfitz@golang.org, rsc@golang.org (cc: golang-dev@googlegroups.com), Please take another look.
12 years, 10 months ago (2012-04-25 08:25:55 UTC) #6
rsc
http://codereview.appspot.com/6034048/diff/21003/src/pkg/sync/atomic/asm_linux_arm.s File src/pkg/sync/atomic/asm_linux_arm.s (right): http://codereview.appspot.com/6034048/diff/21003/src/pkg/sync/atomic/asm_linux_arm.s#newcode113 src/pkg/sync/atomic/asm_linux_arm.s:113: MOVB runtime·armArch(SB), R0 Where is this symbol defined?
12 years, 10 months ago (2012-05-03 21:47:43 UTC) #7
minux1
On 2012/05/03 21:47:43, rsc wrote: http://codereview.appspot.com/6034048/diff/21003/src/pkg/sync/atomic/asm_linux_arm.s#newcode113 > src/pkg/sync/atomic/asm_linux_arm.s:113: MOVB runtime·armArch(SB), R0 > Where is this ...
12 years, 10 months ago (2012-05-04 15:19:39 UTC) #8
rsc
LGTM
12 years, 10 months ago (2012-05-04 15:20:28 UTC) #9
minux1
12 years, 10 months ago (2012-05-04 18:02:53 UTC) #10
*** Submitted as http://code.google.com/p/go/source/detail?r=f59dd827d8d9 ***

sync/atomic: fix 64-bit atomic cas for Linux/ARM
    This is a follow-up to CL 5978051.
    Use kernel cas64 helper if we can, fallback to LDREXD/STREXD if
    we are on ARMv6 or higher, and to lock-emulated cas64 if on ARMv5.
    A future CL will fix {Add,Load,Store}{Int,Uint}64 and issue 3331.

R=bradfitz, rsc
CC=golang-dev
http://codereview.appspot.com/6034048
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b