Skip to content

cmpxchg_local and cmpxchg64_local patches, cleaned up

Mathieu Desnoyers linux-arch linuxppc-dev lkml sparclinux 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest28 patches 0 repliesNew

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/28Add cmpxchg_local to asm-generic for per cpu atomic operationsinclude/asm-generic/cmpxchg-local.h include/asm-generic/cmpxchg.h+87 -00 replies
2/28Fall back on interrupt disable in cmpxchg8b on 80386 and 80486arch/i386/kernel/cpu/intel.c include/asm-i386/cmpxchg.h+96 -430 replies
3/28Add cmpxchg64 and cmpxchg64_local to alphainclude/asm-alpha/system.h+13 -20 replies
4/28Add cmpxchg64 and cmpxchg64_local to mipsinclude/asm-mips/cmpxchg.h+17 -00 replies
5/28Add cmpxchg64 and cmpxchg64_local to powerpcinclude/asm-powerpc/system.h+16 -20 replies
6/28Add cmpxchg64 and cmpxchg64_local to x86_64include/asm-x86_64/cmpxchg.h+16 -60 replies
7/28Add cmpxchg_local to arminclude/asm-arm/system.h+15 -00 replies
8/28Add cmpxchg_local to avr32include/asm-avr32/system.h+23 -00 replies
9/28Add cmpxchg_local to blackfin, replace __cmpxchg by generic cmpxchginclude/asm-blackfin/system.h+12 -470 replies
10/28Add cmpxchg_local to crisinclude/asm-cris/system.h+15 -00 replies
11/28Add cmpxchg_local to frvinclude/asm-frv/system.h+24 -00 replies
12/28Add cmpxchg_local to h8300include/asm-h8300/system.h+15 -00 replies
13/28Add cmpxchg_local, cmpxchg64 and cmpxchg64_local to ia64include/asm-ia64/intrinsics.h+9 -30 replies
14/28New cmpxchg_local (optimized for UP case) for m32rinclude/asm-m32r/system.h+101 -100 replies
15/28Fix m32r __xchginclude/asm-m32r/system.h+1 -30 replies
16/28m32r: build fix of arch/m32r/kernel/smpboot.carch/m32r/kernel/smpboot.c+1 -00 replies
17/28local_t m32r use architecture specific cmpxchg_localinclude/asm-m32r/local.h+361 -10 replies
18/28Add cmpxchg_local to m86kinclude/asm-m68k/system.h+24 -30 replies
19/28Add cmpxchg_local to m68knommuinclude/asm-m68knommu/system.h+11 -170 replies
20/28Add cmpxchg_local to pariscinclude/asm-parisc/atomic.h+33 -00 replies
21/28Add cmpxchg_local to ppcinclude/asm-ppc/system.h+49 -20 replies
22/28Add cmpxchg_local to s390include/asm-s390/system.h+41 -30 replies
23/28Add cmpxchg_local to sh, use generic cmpxchg() instead of cmpxchg_u32include/asm-sh/system.h+14 -380 replies
24/28Add cmpxchg_local to sh64include/asm-sh64/system.h+15 -00 replies
25/28Add cmpxchg_local to sparc, move __cmpxchg to system.hinclude/asm-sparc/atomic.h include/asm-sparc/system.h+48 -360 replies
26/28Add cmpxchg_local to sparc64include/asm-sparc64/system.h+29 -00 replies
27/28Add cmpxchg_local to v850include/asm-v850/system.h+15 -00 replies
28/28Add cmpxchg_local to xtensainclude/asm-xtensa/system.h+22 -00 replies

Reviews trailers per patch

6 of 28 patches have a Reviewed-by or Acked-by.

PatchMathieu DesnoyersChristoph LameterPaul MackerrasHirokazu TakataHaavard Skinnemoen
1/28T-b T-b T-b
2/28
3/28
4/28
5/28A-b
6/28
7/28
8/28A-b
9/28
10/28
11/28
12/28
13/28A-b
14/28A-b
15/28A-b
16/28
17/28A-b
18/28
19/28
20/28
21/28
22/28
23/28
24/28
25/28
26/28
27/28
28/28

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 5 reviewers.

Read the v1 thread

Cover letter [patch 00/28] cmpxchg_local and cmpxchg64_local patches, cleaned up

Hi,

Here is a repost of those patches after running them through checkpatch.

I added a compile check to each architecture implementing cmpxchg64_local that verifies if the argument size is 8 bytes.

Sorry about the coding style state in which those patches were : I tried to follow the coding style of the existing header code, which is, to be polite, disappointing.

I left the "volatile" in the function headers, since I do not want to take any decision in that aspect without being fully aware of the consequences. If we remove them in those functions, we should clean up the surrounding, already existing, functions as well.

The only checkpatch errors left are related to inline assembly code, which does not seem to follow the same rules.

Mathieu

Signature · 3 lines
Mathieu Desnoyers
Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68