mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-26 14:25:09 +07:00
91e040a79d
Older ARC700 cores (ARC750 specifically) lack instructions to implement atomic r-w-w. This is problematic for userspace libraries such as NPTL which need atomic primitives. So enable them by providing kernel assist. This is costly but really the only sane soluton (othern than tight spinning using the otherwise availiable atomic exchange EX instruciton). Good thing is there are only a few of these cores running Linux out in the wild. This only works on UP systems. Reviewed-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
25 lines
653 B
C
25 lines
653 B
C
/*
|
|
* Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
|
|
#ifndef _ASM_ARC_SYSCALLS_H
|
|
#define _ASM_ARC_SYSCALLS_H 1
|
|
|
|
#include <linux/compiler.h>
|
|
#include <linux/linkage.h>
|
|
#include <linux/types.h>
|
|
|
|
int sys_clone_wrapper(int, int, int, int, int);
|
|
int sys_cacheflush(uint32_t, uint32_t uint32_t);
|
|
int sys_arc_settls(void *);
|
|
int sys_arc_gettls(void);
|
|
int sys_arc_usr_cmpxchg(int *, int, int);
|
|
|
|
#include <asm-generic/syscalls.h>
|
|
|
|
#endif
|