]> www.infradead.org Git - users/jedix/linux-maple.git/commit
arch/sparc: Introduce cmpxchg_u8 SPARC
authorBabu Moger <babu.moger@oracle.com>
Wed, 24 May 2017 23:55:12 +0000 (17:55 -0600)
committerAllen Pais <allen.pais@oracle.com>
Fri, 16 Jun 2017 08:47:03 +0000 (14:17 +0530)
commit5db16613a63c77d363bcb45fb4ae592d42f897c9
tree389a0145f07530b3884adaea9137dcb346f9d9d9
parent6e89f566d32e4fae3fc608a29508fbc6770172a8
arch/sparc: Introduce cmpxchg_u8 SPARC

SPARC supports 32 bit and 64 bit cmpxchg right now. Add support
for 8 bit (1 byte) cmpxchg. This is required to support queued
rwlocks feature  which uses 1 byte cmpxchg.

The function __cmpxchg_u8 here uses the 4 byte cas instruction with a
byte manipulation to achieve 1 byte cmpxchg.

Signed-off-by: Babu Moger <babu.moger@oracle.com>
Reviewed-by: HÃ¥kon Bugge <haakon.bugge@oracle.com>
Reviewed-by: Steve Sistare <steven.sistare@oracle.com>
Reviewed-by: Shannon Nelson <shannon.nelson@oracle.com>
Reviewed-by: Jane Chu <jane.chu@oracle.com>
Reviewed-by: Vijay Kumar <vijay.ac.kumar@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit a12ee2349312d7112b9b7c6ac2e70c5ec2ca334e)

Signed-off-by: Babu Moger <babu.moger@oracle.com>
Orabug: 26183741
Signed-off-by: Allen Pais <allen.pais@oracle.com>
arch/sparc/include/asm/cmpxchg_64.h