OpenCloudOS-Kernel/arch/tile/include/asm
Chris Metcalf ab306cae66 arch/tile: use atomic exchange in arch_write_unlock()
This idiom is used elsewhere when we do an unlock by writing a zero,
but I missed it here.  Using an atomic operation avoids waiting
on the write buffer for the unlocking write to be sent to the home cache.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
2012-04-02 12:13:49 -04:00
..
Kbuild arch/tile: add the <arch> headers to the set of installed kernel headers 2011-11-03 16:58:48 -04:00
asm-offsets.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
atomic.h tile: fix multiple build failures from system.h dismantle 2012-04-02 11:57:37 -04:00
atomic_32.h arch/tile: revert comment for atomic64_add_unless(). 2012-04-02 12:00:15 -04:00
atomic_64.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
auxvec.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
backtrace.h arch/tile: refactor backtracing code 2011-05-02 13:49:14 -04:00
barrier.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
bitops.h arch/tile: finish enabling support for TILE-Gx 64-bit chip 2011-05-12 15:52:12 -04:00
bitops_32.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
bitops_64.h arch/tile: fix gcc 4.6 warnings in <asm/bitops_64.h> 2012-04-02 12:00:15 -04:00
bitsperlong.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
byteorder.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
cache.h arch/tile: catch up with section naming convention in 2.6.35 2011-03-01 16:18:52 -05:00
cacheflush.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
checksum.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
cmpxchg.h tile: fix multiple build failures from system.h dismantle 2012-04-02 11:57:37 -04:00
compat.h [PATCH v3] ipc: provide generic compat versions of IPC syscalls 2012-03-15 13:13:38 -04:00
current.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
delay.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
dma-mapping.h tile,mn10300: add device parameter to dma_cache_sync() 2011-05-04 14:41:36 -04:00
dma.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
edac.h drivers/edac: provide support for tile architecture 2011-03-10 13:30:14 -05:00
elf.h arch/tile: Miscellaneous cleanup changes. 2010-07-06 13:41:51 -04:00
exec.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
fixmap.h arch/tile: remove useless set_fixmap_nocache() macro 2011-06-15 10:35:38 -04:00
ftrace.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
futex.h futex: Sanitize futex ops argument types 2011-03-11 12:23:31 +01:00
hardirq.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
hardwall.h arch/tile: more /proc and /sys file support 2011-05-27 10:39:05 -04:00
highmem.h highmem: kill all __kmap_atomic() 2012-03-20 21:48:30 +08:00
homecache.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
hugetlb.h arch/tile: support 4KB page size as well as 64KB 2011-03-10 13:17:53 -05:00
hv_driver.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
hw_irq.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
ide.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
io.h tile: don't panic on iomap 2011-12-04 16:00:07 +02:00
irq.h arch/tile: use 0 for IRQ_RESCHEDULE instead of 1 2012-04-02 12:00:16 -04:00
irqflags.h arch/tile: support newer binutils assembler shift semantics 2011-03-17 14:32:06 -04:00
kexec.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
kmap_types.h arch/tile: complete migration to new kmap_atomic scheme 2010-11-01 15:30:36 -04:00
linkage.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
memprof.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
mman.h arch/tile: provide a definition of MAP_STACK 2010-10-14 15:09:02 -04:00
mmu.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
mmu_context.h tile: replace mm->cpu_vm_mask with mm_cpumask() 2011-05-04 14:41:44 -04:00
mmzone.h Fix node_start/end_pfn() definition for mm/page_cgroup.c 2011-06-27 14:13:09 -07:00
page.h arch/tile: kernel-related cleanups from removing static page size 2011-05-04 14:41:13 -04:00
pci.h Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci 2012-01-11 18:50:26 -08:00
percpu.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
pgalloc.h arch/tile: support 4KB page size as well as 64KB 2011-03-10 13:17:53 -05:00
pgtable.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
pgtable_32.h arch/tile: support 4KB page size as well as 64KB 2011-03-10 13:17:53 -05:00
pgtable_64.h arch/tile: finish enabling support for TILE-Gx 64-bit chip 2011-05-12 15:52:12 -04:00
processor.h arch/tile: support signal "exception-trace" hook 2011-05-19 22:55:59 -04:00
ptrace.h ptrace: unify show_regs() prototype 2011-07-26 16:49:43 -07:00
sections.h arch/tile: Miscellaneous cleanup changes. 2010-07-06 13:41:51 -04:00
setup.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
sigcontext.h arch/tile: avoid ISO namespace pollution with <asm/sigcontext.h> 2011-11-03 16:58:36 -04:00
sigframe.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
siginfo.h arch/tile: Fix a couple of issues with the COMPAT code for TILE-Gx. 2010-08-13 08:32:21 -04:00
signal.h UAPI: Split trivial #if defined(__KERNEL__) && X conditionals 2011-12-13 15:07:49 +00:00
smp.h smp: introduce a generic on_each_cpu_mask() function 2012-03-28 17:14:35 -07:00
spinlock.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
spinlock_32.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
spinlock_64.h arch/tile: use atomic exchange in arch_write_unlock() 2012-04-02 12:13:49 -04:00
spinlock_types.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
stack.h arch/tile: various bugs in stack backtracer 2012-04-02 12:12:45 -04:00
stat.h arch/tile: various header improvements for building drivers 2011-05-04 14:40:54 -04:00
string.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
swab.h arch/tile: various header improvements for building drivers 2011-05-04 14:40:54 -04:00
switch_to.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
syscall.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
syscalls.h arch/tile: Use <asm-generic/syscalls.h> 2010-10-14 14:34:33 -04:00
thread_info.h arch/tile: support TIF_NOTIFY_RESUME 2011-05-02 18:53:35 -04:00
tile-desc.h arch/tile: factor out <arch/opcode.h> header 2011-11-03 16:58:54 -04:00
tile-desc_32.h arch/tile: factor out <arch/opcode.h> header 2011-11-03 16:58:54 -04:00
tile-desc_64.h arch/tile: factor out <arch/opcode.h> header 2011-11-03 16:58:54 -04:00
timex.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
tlb.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
tlbflush.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
topology.h arch/tile: disable SD_WAKE_AFFINE flag on CPU/NODE scheduling domain 2011-05-04 14:40:16 -04:00
traps.h arch/tile: work around a hardware issue with the return-address stack 2012-04-02 12:12:48 -04:00
uaccess.h arch/tile: Various cleanups. 2010-08-13 08:52:19 -04:00
unaligned.h Disintegrate asm/system.h for Tile 2012-03-28 18:30:03 +01:00
unistd.h arch/tile: cleanups for tilegx compat mode 2011-05-19 22:56:13 -04:00
user.h arch/tile: core support for Tilera 32-bit chips. 2010-06-04 17:11:18 -04:00
vga.h arch/tile: various header improvements for building drivers 2011-05-04 14:40:54 -04:00