Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Conflicts: arch/x86/kernel/io_apic.c
This commit is contained in:
@@ -15,8 +15,6 @@ header-y += signal_32.h
|
||||
header-y += signal_64.h
|
||||
header-y += stat_32.h
|
||||
header-y += stat_64.h
|
||||
header-y += unistd_32.h
|
||||
header-y += unistd_64.h
|
||||
|
||||
header-y += apc.h
|
||||
header-y += asi.h
|
||||
|
||||
40
arch/sparc/include/asm/asm.h
Normal file
40
arch/sparc/include/asm/asm.h
Normal file
@@ -0,0 +1,40 @@
|
||||
#ifndef _SPARC_ASM_H
|
||||
#define _SPARC_ASM_H
|
||||
|
||||
/* Macros to assist the sharing of assembler code between 32-bit and
|
||||
* 64-bit sparc.
|
||||
*/
|
||||
|
||||
#ifdef CONFIG_SPARC64
|
||||
#define BRANCH32(TYPE, PREDICT, DEST) \
|
||||
TYPE,PREDICT %icc, DEST
|
||||
#define BRANCH32_ANNUL(TYPE, PREDICT, DEST) \
|
||||
TYPE,a,PREDICT %icc, DEST
|
||||
#define BRANCH_REG_ZERO(PREDICT, REG, DEST) \
|
||||
brz,PREDICT REG, DEST
|
||||
#define BRANCH_REG_ZERO_ANNUL(PREDICT, REG, DEST) \
|
||||
brz,a,PREDICT REG, DEST
|
||||
#define BRANCH_REG_NOT_ZERO(PREDICT, REG, DEST) \
|
||||
brnz,PREDICT REG, DEST
|
||||
#define BRANCH_REG_NOT_ZERO_ANNUL(PREDICT, REG, DEST) \
|
||||
brnz,a,PREDICT REG, DEST
|
||||
#else
|
||||
#define BRANCH32(TYPE, PREDICT, DEST) \
|
||||
TYPE DEST
|
||||
#define BRANCH32_ANNUL(TYPE, PREDICT, DEST) \
|
||||
TYPE,a DEST
|
||||
#define BRANCH_REG_ZERO(PREDICT, REG, DEST) \
|
||||
cmp REG, 0; \
|
||||
be DEST
|
||||
#define BRANCH_REG_ZERO_ANNUL(PREDICT, REG, DEST) \
|
||||
cmp REG, 0; \
|
||||
be,a DEST
|
||||
#define BRANCH_REG_NOT_ZERO(PREDICT, REG, DEST) \
|
||||
cmp REG, 0; \
|
||||
bne DEST
|
||||
#define BRANCH_REG_NOT_ZERO_ANNUL(PREDICT, REG, DEST) \
|
||||
cmp REG, 0; \
|
||||
bne,a DEST
|
||||
#endif
|
||||
|
||||
#endif /* _SPARC_ASM_H */
|
||||
@@ -112,17 +112,10 @@ static inline int atomic64_add_unless(atomic64_t *v, long a, long u)
|
||||
#define atomic64_inc_not_zero(v) atomic64_add_unless((v), 1, 0)
|
||||
|
||||
/* Atomic operations are already serializing */
|
||||
#ifdef CONFIG_SMP
|
||||
#define smp_mb__before_atomic_dec() membar_storeload_loadload();
|
||||
#define smp_mb__after_atomic_dec() membar_storeload_storestore();
|
||||
#define smp_mb__before_atomic_inc() membar_storeload_loadload();
|
||||
#define smp_mb__after_atomic_inc() membar_storeload_storestore();
|
||||
#else
|
||||
#define smp_mb__before_atomic_dec() barrier()
|
||||
#define smp_mb__after_atomic_dec() barrier()
|
||||
#define smp_mb__before_atomic_inc() barrier()
|
||||
#define smp_mb__after_atomic_inc() barrier()
|
||||
#endif
|
||||
|
||||
#include <asm-generic/atomic.h>
|
||||
#endif /* !(__ARCH_SPARC64_ATOMIC__) */
|
||||
|
||||
@@ -23,13 +23,8 @@ extern void change_bit(unsigned long nr, volatile unsigned long *addr);
|
||||
|
||||
#include <asm-generic/bitops/non-atomic.h>
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
#define smp_mb__before_clear_bit() membar_storeload_loadload()
|
||||
#define smp_mb__after_clear_bit() membar_storeload_storestore()
|
||||
#else
|
||||
#define smp_mb__before_clear_bit() barrier()
|
||||
#define smp_mb__after_clear_bit() barrier()
|
||||
#endif
|
||||
|
||||
#include <asm-generic/bitops/ffz.h>
|
||||
#include <asm-generic/bitops/__ffs.h>
|
||||
|
||||
@@ -2713,6 +2713,30 @@ extern unsigned long sun4v_ldc_revoke(unsigned long channel,
|
||||
*/
|
||||
#define HV_FAST_SET_PERFREG 0x101
|
||||
|
||||
#define HV_N2_PERF_SPARC_CTL 0x0
|
||||
#define HV_N2_PERF_DRAM_CTL0 0x1
|
||||
#define HV_N2_PERF_DRAM_CNT0 0x2
|
||||
#define HV_N2_PERF_DRAM_CTL1 0x3
|
||||
#define HV_N2_PERF_DRAM_CNT1 0x4
|
||||
#define HV_N2_PERF_DRAM_CTL2 0x5
|
||||
#define HV_N2_PERF_DRAM_CNT2 0x6
|
||||
#define HV_N2_PERF_DRAM_CTL3 0x7
|
||||
#define HV_N2_PERF_DRAM_CNT3 0x8
|
||||
|
||||
#define HV_FAST_N2_GET_PERFREG 0x104
|
||||
#define HV_FAST_N2_SET_PERFREG 0x105
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
extern unsigned long sun4v_niagara_getperf(unsigned long reg,
|
||||
unsigned long *val);
|
||||
extern unsigned long sun4v_niagara_setperf(unsigned long reg,
|
||||
unsigned long val);
|
||||
extern unsigned long sun4v_niagara2_getperf(unsigned long reg,
|
||||
unsigned long *val);
|
||||
extern unsigned long sun4v_niagara2_setperf(unsigned long reg,
|
||||
unsigned long val);
|
||||
#endif
|
||||
|
||||
/* MMU statistics services.
|
||||
*
|
||||
* The hypervisor maintains MMU statistics and privileged code provides
|
||||
|
||||
@@ -12,4 +12,5 @@
|
||||
|
||||
#define irq_canonicalize(irq) (irq)
|
||||
|
||||
extern void __init init_IRQ(void);
|
||||
#endif
|
||||
|
||||
@@ -66,6 +66,9 @@ extern void virt_irq_free(unsigned int virt_irq);
|
||||
extern void __init init_IRQ(void);
|
||||
extern void fixup_irqs(void);
|
||||
|
||||
extern int register_perfctr_intr(void (*handler)(struct pt_regs *));
|
||||
extern void release_perfctr_intr(void (*handler)(struct pt_regs *));
|
||||
|
||||
static inline void set_softint(unsigned long bits)
|
||||
{
|
||||
__asm__ __volatile__("wr %0, 0x0, %%set_softint"
|
||||
|
||||
@@ -10,6 +10,8 @@
|
||||
#ifndef _ASM_IRQFLAGS_H
|
||||
#define _ASM_IRQFLAGS_H
|
||||
|
||||
#include <asm/pil.h>
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
static inline unsigned long __raw_local_save_flags(void)
|
||||
@@ -40,9 +42,9 @@ static inline void raw_local_irq_restore(unsigned long flags)
|
||||
static inline void raw_local_irq_disable(void)
|
||||
{
|
||||
__asm__ __volatile__(
|
||||
"wrpr 15, %%pil"
|
||||
"wrpr %0, %%pil"
|
||||
: /* no outputs */
|
||||
: /* no inputs */
|
||||
: "i" (PIL_NORMAL_MAX)
|
||||
: "memory"
|
||||
);
|
||||
}
|
||||
|
||||
@@ -1,8 +1,24 @@
|
||||
#ifndef ___ASM_SPARC_MODULE_H
|
||||
#define ___ASM_SPARC_MODULE_H
|
||||
#if defined(__sparc__) && defined(__arch64__)
|
||||
#include <asm/module_64.h>
|
||||
#else
|
||||
#include <asm/module_32.h>
|
||||
#endif
|
||||
#endif
|
||||
#ifndef __SPARC_MODULE_H
|
||||
#define __SPARC_MODULE_H
|
||||
struct mod_arch_specific { };
|
||||
|
||||
/*
|
||||
* Use some preprocessor magic to define the correct symbol
|
||||
* for sparc32 and sparc64.
|
||||
* Elf_Addr becomes Elf32_Addr for sparc32 and Elf64_Addr for sparc64
|
||||
*/
|
||||
#define ___ELF(a, b, c) a##b##c
|
||||
#define __ELF(a, b, c) ___ELF(a, b, c)
|
||||
#define _Elf(t) __ELF(Elf, CONFIG_BITS, t)
|
||||
#define _ELF(t) __ELF(ELF, CONFIG_BITS, t)
|
||||
|
||||
#define Elf_Shdr _Elf(_Shdr)
|
||||
#define Elf_Sym _Elf(_Sym)
|
||||
#define Elf_Ehdr _Elf(_Ehdr)
|
||||
#define Elf_Rela _Elf(_Rela)
|
||||
#define Elf_Addr _Elf(_Addr)
|
||||
|
||||
#define ELF_R_SYM _ELF(_R_SYM)
|
||||
#define ELF_R_TYPE _ELF(_R_TYPE)
|
||||
|
||||
#endif /* __SPARC_MODULE_H */
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#ifndef _ASM_SPARC_MODULE_H
|
||||
#define _ASM_SPARC_MODULE_H
|
||||
struct mod_arch_specific { };
|
||||
#define Elf_Shdr Elf32_Shdr
|
||||
#define Elf_Sym Elf32_Sym
|
||||
#define Elf_Ehdr Elf32_Ehdr
|
||||
#endif /* _ASM_SPARC_MODULE_H */
|
||||
@@ -1,7 +0,0 @@
|
||||
#ifndef _ASM_SPARC64_MODULE_H
|
||||
#define _ASM_SPARC64_MODULE_H
|
||||
struct mod_arch_specific { };
|
||||
#define Elf_Shdr Elf64_Shdr
|
||||
#define Elf_Sym Elf64_Sym
|
||||
#define Elf_Ehdr Elf64_Ehdr
|
||||
#endif /* _ASM_SPARC64_MODULE_H */
|
||||
@@ -170,9 +170,9 @@ struct linux_romvec {
|
||||
struct linux_nodeops {
|
||||
int (*no_nextnode)(int node);
|
||||
int (*no_child)(int node);
|
||||
int (*no_proplen)(int node, char *name);
|
||||
int (*no_getprop)(int node, char *name, char *val);
|
||||
int (*no_setprop)(int node, char *name, char *val, int len);
|
||||
int (*no_proplen)(int node, const char *name);
|
||||
int (*no_getprop)(int node, const char *name, char *val);
|
||||
int (*no_setprop)(int node, const char *name, char *val, int len);
|
||||
char * (*no_nextprop)(int node, char *name);
|
||||
};
|
||||
|
||||
|
||||
@@ -136,7 +136,7 @@ extern char prom_getchar(void);
|
||||
extern void prom_putchar(char character);
|
||||
|
||||
/* Prom's internal routines, don't use in kernel/boot code. */
|
||||
extern void prom_printf(char *fmt, ...);
|
||||
extern void prom_printf(const char *fmt, ...);
|
||||
extern void prom_write(const char *buf, unsigned int len);
|
||||
|
||||
/* Multiprocessor operations... */
|
||||
@@ -199,12 +199,12 @@ extern int prom_getsibling(int node);
|
||||
/* Get the length, at the passed node, of the given property type.
|
||||
* Returns -1 on error (ie. no such property at this node).
|
||||
*/
|
||||
extern int prom_getproplen(int thisnode, char *property);
|
||||
extern int prom_getproplen(int thisnode, const char *property);
|
||||
|
||||
/* Fetch the requested property using the given buffer. Returns
|
||||
* the number of bytes the prom put into your buffer or -1 on error.
|
||||
*/
|
||||
extern int __must_check prom_getproperty(int thisnode, char *property,
|
||||
extern int __must_check prom_getproperty(int thisnode, const char *property,
|
||||
char *prop_buffer, int propbuf_size);
|
||||
|
||||
/* Acquire an integer property. */
|
||||
@@ -246,7 +246,7 @@ extern int prom_node_has_property(int node, char *property);
|
||||
/* Set the indicated property at the given node with the passed value.
|
||||
* Returns the number of bytes of your value that the prom took.
|
||||
*/
|
||||
extern int prom_setprop(int node, char *prop_name, char *prop_value,
|
||||
extern int prom_setprop(int node, const char *prop_name, char *prop_value,
|
||||
int value_size);
|
||||
|
||||
extern int prom_pathtoinode(char *path);
|
||||
|
||||
@@ -10,7 +10,12 @@
|
||||
*
|
||||
* In fact any XCALL which has to etrap/rtrap has a problem because
|
||||
* it is difficult to prevent rtrap from running BH's, and that would
|
||||
* need to be done if the XCALL arrived while %pil==15.
|
||||
* need to be done if the XCALL arrived while %pil==PIL_NORMAL_MAX.
|
||||
*
|
||||
* Finally, in order to handle profiling events even when a
|
||||
* local_irq_disable() is in progress, we only disable up to level 14
|
||||
* interrupts. Profile counter overflow interrupts arrive at level
|
||||
* 15.
|
||||
*/
|
||||
#define PIL_SMP_CALL_FUNC 1
|
||||
#define PIL_SMP_RECEIVE_SIGNAL 2
|
||||
@@ -18,5 +23,7 @@
|
||||
#define PIL_SMP_CTX_NEW_VERSION 4
|
||||
#define PIL_DEVICE_IRQ 5
|
||||
#define PIL_SMP_CALL_FUNC_SNGL 6
|
||||
#define PIL_NORMAL_MAX 14
|
||||
#define PIL_NMI 15
|
||||
|
||||
#endif /* !(_SPARC64_PIL_H) */
|
||||
|
||||
@@ -1,8 +1,27 @@
|
||||
#ifndef ___ASM_SPARC_SCATTERLIST_H
|
||||
#define ___ASM_SPARC_SCATTERLIST_H
|
||||
#if defined(__sparc__) && defined(__arch64__)
|
||||
#include <asm/scatterlist_64.h>
|
||||
#else
|
||||
#include <asm/scatterlist_32.h>
|
||||
#endif
|
||||
#ifndef _SPARC_SCATTERLIST_H
|
||||
#define _SPARC_SCATTERLIST_H
|
||||
|
||||
#include <asm/page.h>
|
||||
#include <asm/types.h>
|
||||
|
||||
struct scatterlist {
|
||||
#ifdef CONFIG_DEBUG_SG
|
||||
unsigned long sg_magic;
|
||||
#endif
|
||||
unsigned long page_link;
|
||||
unsigned int offset;
|
||||
|
||||
unsigned int length;
|
||||
|
||||
dma_addr_t dma_address;
|
||||
__u32 dma_length;
|
||||
};
|
||||
|
||||
#define sg_dma_address(sg) ((sg)->dma_address)
|
||||
#define sg_dma_len(sg) ((sg)->dma_length)
|
||||
|
||||
#define ISA_DMA_THRESHOLD (~0UL)
|
||||
|
||||
#define ARCH_HAS_SG_CHAIN
|
||||
|
||||
#endif /* !(_SPARC_SCATTERLIST_H) */
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
#ifndef _SPARC_SCATTERLIST_H
|
||||
#define _SPARC_SCATTERLIST_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
struct scatterlist {
|
||||
#ifdef CONFIG_DEBUG_SG
|
||||
unsigned long sg_magic;
|
||||
#endif
|
||||
unsigned long page_link;
|
||||
unsigned int offset;
|
||||
|
||||
unsigned int length;
|
||||
|
||||
__u32 dvma_address; /* A place to hang host-specific addresses at. */
|
||||
__u32 dvma_length;
|
||||
};
|
||||
|
||||
#define sg_dma_address(sg) ((sg)->dvma_address)
|
||||
#define sg_dma_len(sg) ((sg)->dvma_length)
|
||||
|
||||
#define ISA_DMA_THRESHOLD (~0UL)
|
||||
|
||||
#define ARCH_HAS_SG_CHAIN
|
||||
|
||||
#endif /* !(_SPARC_SCATTERLIST_H) */
|
||||
@@ -1,27 +0,0 @@
|
||||
#ifndef _SPARC64_SCATTERLIST_H
|
||||
#define _SPARC64_SCATTERLIST_H
|
||||
|
||||
#include <asm/page.h>
|
||||
#include <asm/types.h>
|
||||
|
||||
struct scatterlist {
|
||||
#ifdef CONFIG_DEBUG_SG
|
||||
unsigned long sg_magic;
|
||||
#endif
|
||||
unsigned long page_link;
|
||||
unsigned int offset;
|
||||
|
||||
unsigned int length;
|
||||
|
||||
dma_addr_t dma_address;
|
||||
__u32 dma_length;
|
||||
};
|
||||
|
||||
#define sg_dma_address(sg) ((sg)->dma_address)
|
||||
#define sg_dma_len(sg) ((sg)->dma_length)
|
||||
|
||||
#define ISA_DMA_THRESHOLD (~0UL)
|
||||
|
||||
#define ARCH_HAS_SG_CHAIN
|
||||
|
||||
#endif /* !(_SPARC64_SCATTERLIST_H) */
|
||||
@@ -1,8 +1,10 @@
|
||||
#ifndef ___ASM_SPARC_SECTIONS_H
|
||||
#define ___ASM_SPARC_SECTIONS_H
|
||||
#if defined(__sparc__) && defined(__arch64__)
|
||||
#include <asm/sections_64.h>
|
||||
#else
|
||||
#include <asm/sections_32.h>
|
||||
#endif
|
||||
#ifndef __SPARC_SECTIONS_H
|
||||
#define __SPARC_SECTIONS_H
|
||||
|
||||
/* nothing to see, move along */
|
||||
#include <asm-generic/sections.h>
|
||||
|
||||
/* sparc entry point */
|
||||
extern char _start[];
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
#ifndef _SPARC_SECTIONS_H
|
||||
#define _SPARC_SECTIONS_H
|
||||
|
||||
#include <asm-generic/sections.h>
|
||||
|
||||
#endif
|
||||
@@ -1,9 +0,0 @@
|
||||
#ifndef _SPARC64_SECTIONS_H
|
||||
#define _SPARC64_SECTIONS_H
|
||||
|
||||
/* nothing to see, move along */
|
||||
#include <asm-generic/sections.h>
|
||||
|
||||
extern char _start[];
|
||||
|
||||
#endif
|
||||
@@ -13,17 +13,12 @@
|
||||
* and rebuild your kernel.
|
||||
*/
|
||||
|
||||
/* All of these locking primitives are expected to work properly
|
||||
* even in an RMO memory model, which currently is what the kernel
|
||||
* runs in.
|
||||
*
|
||||
* There is another issue. Because we play games to save cycles
|
||||
* in the non-contention case, we need to be extra careful about
|
||||
* branch targets into the "spinning" code. They live in their
|
||||
* own section, but the newer V9 branches have a shorter range
|
||||
* than the traditional 32-bit sparc branch variants. The rule
|
||||
* is that the branches that go into and out of the spinner sections
|
||||
* must be pre-V9 branches.
|
||||
/* Because we play games to save cycles in the non-contention case, we
|
||||
* need to be extra careful about branch targets into the "spinning"
|
||||
* code. They live in their own section, but the newer V9 branches
|
||||
* have a shorter range than the traditional 32-bit sparc branch
|
||||
* variants. The rule is that the branches that go into and out of
|
||||
* the spinner sections must be pre-V9 branches.
|
||||
*/
|
||||
|
||||
#define __raw_spin_is_locked(lp) ((lp)->lock != 0)
|
||||
@@ -38,12 +33,10 @@ static inline void __raw_spin_lock(raw_spinlock_t *lock)
|
||||
|
||||
__asm__ __volatile__(
|
||||
"1: ldstub [%1], %0\n"
|
||||
" membar #StoreLoad | #StoreStore\n"
|
||||
" brnz,pn %0, 2f\n"
|
||||
" nop\n"
|
||||
" .subsection 2\n"
|
||||
"2: ldub [%1], %0\n"
|
||||
" membar #LoadLoad\n"
|
||||
" brnz,pt %0, 2b\n"
|
||||
" nop\n"
|
||||
" ba,a,pt %%xcc, 1b\n"
|
||||
@@ -59,7 +52,6 @@ static inline int __raw_spin_trylock(raw_spinlock_t *lock)
|
||||
|
||||
__asm__ __volatile__(
|
||||
" ldstub [%1], %0\n"
|
||||
" membar #StoreLoad | #StoreStore"
|
||||
: "=r" (result)
|
||||
: "r" (lock)
|
||||
: "memory");
|
||||
@@ -70,7 +62,6 @@ static inline int __raw_spin_trylock(raw_spinlock_t *lock)
|
||||
static inline void __raw_spin_unlock(raw_spinlock_t *lock)
|
||||
{
|
||||
__asm__ __volatile__(
|
||||
" membar #StoreStore | #LoadStore\n"
|
||||
" stb %%g0, [%0]"
|
||||
: /* No outputs */
|
||||
: "r" (lock)
|
||||
@@ -83,14 +74,12 @@ static inline void __raw_spin_lock_flags(raw_spinlock_t *lock, unsigned long fla
|
||||
|
||||
__asm__ __volatile__(
|
||||
"1: ldstub [%2], %0\n"
|
||||
" membar #StoreLoad | #StoreStore\n"
|
||||
" brnz,pn %0, 2f\n"
|
||||
" nop\n"
|
||||
" .subsection 2\n"
|
||||
"2: rdpr %%pil, %1\n"
|
||||
" wrpr %3, %%pil\n"
|
||||
"3: ldub [%2], %0\n"
|
||||
" membar #LoadLoad\n"
|
||||
" brnz,pt %0, 3b\n"
|
||||
" nop\n"
|
||||
" ba,pt %%xcc, 1b\n"
|
||||
@@ -113,12 +102,10 @@ static void inline __read_lock(raw_rwlock_t *lock)
|
||||
"4: add %0, 1, %1\n"
|
||||
" cas [%2], %0, %1\n"
|
||||
" cmp %0, %1\n"
|
||||
" membar #StoreLoad | #StoreStore\n"
|
||||
" bne,pn %%icc, 1b\n"
|
||||
" nop\n"
|
||||
" .subsection 2\n"
|
||||
"2: ldsw [%2], %0\n"
|
||||
" membar #LoadLoad\n"
|
||||
" brlz,pt %0, 2b\n"
|
||||
" nop\n"
|
||||
" ba,a,pt %%xcc, 4b\n"
|
||||
@@ -139,7 +126,6 @@ static int inline __read_trylock(raw_rwlock_t *lock)
|
||||
" add %0, 1, %1\n"
|
||||
" cas [%2], %0, %1\n"
|
||||
" cmp %0, %1\n"
|
||||
" membar #StoreLoad | #StoreStore\n"
|
||||
" bne,pn %%icc, 1b\n"
|
||||
" mov 1, %0\n"
|
||||
"2:"
|
||||
@@ -155,7 +141,6 @@ static void inline __read_unlock(raw_rwlock_t *lock)
|
||||
unsigned long tmp1, tmp2;
|
||||
|
||||
__asm__ __volatile__(
|
||||
" membar #StoreLoad | #LoadLoad\n"
|
||||
"1: lduw [%2], %0\n"
|
||||
" sub %0, 1, %1\n"
|
||||
" cas [%2], %0, %1\n"
|
||||
@@ -179,12 +164,10 @@ static void inline __write_lock(raw_rwlock_t *lock)
|
||||
"4: or %0, %3, %1\n"
|
||||
" cas [%2], %0, %1\n"
|
||||
" cmp %0, %1\n"
|
||||
" membar #StoreLoad | #StoreStore\n"
|
||||
" bne,pn %%icc, 1b\n"
|
||||
" nop\n"
|
||||
" .subsection 2\n"
|
||||
"2: lduw [%2], %0\n"
|
||||
" membar #LoadLoad\n"
|
||||
" brnz,pt %0, 2b\n"
|
||||
" nop\n"
|
||||
" ba,a,pt %%xcc, 4b\n"
|
||||
@@ -197,7 +180,6 @@ static void inline __write_lock(raw_rwlock_t *lock)
|
||||
static void inline __write_unlock(raw_rwlock_t *lock)
|
||||
{
|
||||
__asm__ __volatile__(
|
||||
" membar #LoadStore | #StoreStore\n"
|
||||
" stw %%g0, [%0]"
|
||||
: /* no outputs */
|
||||
: "r" (lock)
|
||||
@@ -217,7 +199,6 @@ static int inline __write_trylock(raw_rwlock_t *lock)
|
||||
" or %0, %4, %1\n"
|
||||
" cas [%3], %0, %1\n"
|
||||
" cmp %0, %1\n"
|
||||
" membar #StoreLoad | #StoreStore\n"
|
||||
" bne,pn %%icc, 1b\n"
|
||||
" nop\n"
|
||||
" mov 1, %2\n"
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
#ifndef _SPARC64_SPITFIRE_H
|
||||
#define _SPARC64_SPITFIRE_H
|
||||
|
||||
#ifdef CONFIG_SPARC64
|
||||
|
||||
#include <asm/asi.h>
|
||||
|
||||
/* The following register addresses are accessible via ASI_DMMU
|
||||
@@ -338,5 +340,5 @@ static inline void cheetah_put_itlb_data(int entry, unsigned long data)
|
||||
}
|
||||
|
||||
#endif /* !(__ASSEMBLY__) */
|
||||
|
||||
#endif /* CONFIG_SPARC64 */
|
||||
#endif /* !(_SPARC64_SPITFIRE_H) */
|
||||
|
||||
@@ -15,6 +15,11 @@
|
||||
|
||||
#include <linux/irqflags.h>
|
||||
|
||||
static inline unsigned int probe_irq_mask(unsigned long val)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Sparc (general) CPU types
|
||||
*/
|
||||
|
||||
@@ -59,20 +59,9 @@ do { __asm__ __volatile__("ba,pt %%xcc, 1f\n\t" \
|
||||
: : : "memory"); \
|
||||
} while (0)
|
||||
|
||||
#define mb() \
|
||||
membar_safe("#LoadLoad | #LoadStore | #StoreStore | #StoreLoad")
|
||||
#define rmb() \
|
||||
membar_safe("#LoadLoad")
|
||||
#define wmb() \
|
||||
membar_safe("#StoreStore")
|
||||
#define membar_storeload() \
|
||||
membar_safe("#StoreLoad")
|
||||
#define membar_storeload_storestore() \
|
||||
membar_safe("#StoreLoad | #StoreStore")
|
||||
#define membar_storeload_loadload() \
|
||||
membar_safe("#StoreLoad | #LoadLoad")
|
||||
#define membar_storestore_loadstore() \
|
||||
membar_safe("#StoreStore | #LoadStore")
|
||||
#define mb() membar_safe("#StoreLoad")
|
||||
#define rmb() __asm__ __volatile__("":::"memory")
|
||||
#define wmb() __asm__ __volatile__("":::"memory")
|
||||
|
||||
#endif
|
||||
|
||||
@@ -80,20 +69,20 @@ do { __asm__ __volatile__("ba,pt %%xcc, 1f\n\t" \
|
||||
|
||||
#define read_barrier_depends() do { } while(0)
|
||||
#define set_mb(__var, __value) \
|
||||
do { __var = __value; membar_storeload_storestore(); } while(0)
|
||||
do { __var = __value; membar_safe("#StoreLoad"); } while(0)
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
#define smp_mb() mb()
|
||||
#define smp_rmb() rmb()
|
||||
#define smp_wmb() wmb()
|
||||
#define smp_read_barrier_depends() read_barrier_depends()
|
||||
#else
|
||||
#define smp_mb() __asm__ __volatile__("":::"memory")
|
||||
#define smp_rmb() __asm__ __volatile__("":::"memory")
|
||||
#define smp_wmb() __asm__ __volatile__("":::"memory")
|
||||
#define smp_read_barrier_depends() do { } while(0)
|
||||
#endif
|
||||
|
||||
#define smp_read_barrier_depends() do { } while(0)
|
||||
|
||||
#define flushi(addr) __asm__ __volatile__ ("flush %0" : : "r" (addr) : "memory")
|
||||
|
||||
#define flushw_all() __asm__ __volatile__("flushw")
|
||||
@@ -107,11 +96,12 @@ do { __asm__ __volatile__("ba,pt %%xcc, 1f\n\t" \
|
||||
* arch/sparc64/kernel/smp.c:smp_percpu_timer_interrupt()
|
||||
* for more information.
|
||||
*/
|
||||
#define reset_pic() \
|
||||
__asm__ __volatile__("ba,pt %xcc, 99f\n\t" \
|
||||
#define write_pic(__p) \
|
||||
__asm__ __volatile__("ba,pt %%xcc, 99f\n\t" \
|
||||
".align 64\n" \
|
||||
"99:wr %g0, 0x0, %pic\n\t" \
|
||||
"rd %pic, %g0")
|
||||
"99:wr %0, 0x0, %%pic\n\t" \
|
||||
"rd %%pic, %%g0" : : "r" (__p))
|
||||
#define reset_pic() write_pic(0)
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
@@ -170,6 +160,7 @@ do { if (test_thread_flag(TIF_PERFCTR)) { \
|
||||
"stb %%o5, [%%g6 + %5]\n\t" \
|
||||
"rdpr %%cwp, %%o5\n\t" \
|
||||
"stb %%o5, [%%g6 + %8]\n\t" \
|
||||
"wrpr %%g0, 15, %%pil\n\t" \
|
||||
"mov %4, %%g6\n\t" \
|
||||
"ldub [%4 + %8], %%g1\n\t" \
|
||||
"wrpr %%g1, %%cwp\n\t" \
|
||||
@@ -180,6 +171,7 @@ do { if (test_thread_flag(TIF_PERFCTR)) { \
|
||||
"ldx [%%sp + 2047 + 0x70], %%i6\n\t" \
|
||||
"ldx [%%sp + 2047 + 0x78], %%i7\n\t" \
|
||||
"ldx [%%g6 + %9], %%g4\n\t" \
|
||||
"wrpr %%g0, 14, %%pil\n\t" \
|
||||
"brz,pt %%o7, switch_to_pc\n\t" \
|
||||
" mov %%g7, %0\n\t" \
|
||||
"sethi %%hi(ret_from_syscall), %%g1\n\t" \
|
||||
@@ -209,14 +201,12 @@ static inline unsigned long xchg32(__volatile__ unsigned int *m, unsigned int va
|
||||
unsigned long tmp1, tmp2;
|
||||
|
||||
__asm__ __volatile__(
|
||||
" membar #StoreLoad | #LoadLoad\n"
|
||||
" mov %0, %1\n"
|
||||
"1: lduw [%4], %2\n"
|
||||
" cas [%4], %2, %0\n"
|
||||
" cmp %2, %0\n"
|
||||
" bne,a,pn %%icc, 1b\n"
|
||||
" mov %1, %0\n"
|
||||
" membar #StoreLoad | #StoreStore\n"
|
||||
: "=&r" (val), "=&r" (tmp1), "=&r" (tmp2)
|
||||
: "0" (val), "r" (m)
|
||||
: "cc", "memory");
|
||||
@@ -228,14 +218,12 @@ static inline unsigned long xchg64(__volatile__ unsigned long *m, unsigned long
|
||||
unsigned long tmp1, tmp2;
|
||||
|
||||
__asm__ __volatile__(
|
||||
" membar #StoreLoad | #LoadLoad\n"
|
||||
" mov %0, %1\n"
|
||||
"1: ldx [%4], %2\n"
|
||||
" casx [%4], %2, %0\n"
|
||||
" cmp %2, %0\n"
|
||||
" bne,a,pn %%xcc, 1b\n"
|
||||
" mov %1, %0\n"
|
||||
" membar #StoreLoad | #StoreStore\n"
|
||||
: "=&r" (val), "=&r" (tmp1), "=&r" (tmp2)
|
||||
: "0" (val), "r" (m)
|
||||
: "cc", "memory");
|
||||
@@ -272,9 +260,7 @@ extern void die_if_kernel(char *str, struct pt_regs *regs) __attribute__ ((noret
|
||||
static inline unsigned long
|
||||
__cmpxchg_u32(volatile int *m, int old, int new)
|
||||
{
|
||||
__asm__ __volatile__("membar #StoreLoad | #LoadLoad\n"
|
||||
"cas [%2], %3, %0\n\t"
|
||||
"membar #StoreLoad | #StoreStore"
|
||||
__asm__ __volatile__("cas [%2], %3, %0"
|
||||
: "=&r" (new)
|
||||
: "0" (new), "r" (m), "r" (old)
|
||||
: "memory");
|
||||
@@ -285,9 +271,7 @@ __cmpxchg_u32(volatile int *m, int old, int new)
|
||||
static inline unsigned long
|
||||
__cmpxchg_u64(volatile long *m, unsigned long old, unsigned long new)
|
||||
{
|
||||
__asm__ __volatile__("membar #StoreLoad | #LoadLoad\n"
|
||||
"casx [%2], %3, %0\n\t"
|
||||
"membar #StoreLoad | #StoreStore"
|
||||
__asm__ __volatile__("casx [%2], %3, %0"
|
||||
: "=&r" (new)
|
||||
: "0" (new), "r" (m), "r" (old)
|
||||
: "memory");
|
||||
|
||||
@@ -50,8 +50,6 @@
|
||||
#define TSB_TAG_INVALID_BIT 46
|
||||
#define TSB_TAG_INVALID_HIGH (1 << (TSB_TAG_INVALID_BIT - 32))
|
||||
|
||||
#define TSB_MEMBAR membar #StoreStore
|
||||
|
||||
/* Some cpus support physical address quad loads. We want to use
|
||||
* those if possible so we don't need to hard-lock the TSB mapping
|
||||
* into the TLB. We encode some instruction patching in order to
|
||||
@@ -128,13 +126,11 @@ extern struct tsb_phys_patch_entry __tsb_phys_patch, __tsb_phys_patch_end;
|
||||
cmp REG1, REG2; \
|
||||
bne,pn %icc, 99b; \
|
||||
nop; \
|
||||
TSB_MEMBAR
|
||||
|
||||
#define TSB_WRITE(TSB, TTE, TAG) \
|
||||
add TSB, 0x8, TSB; \
|
||||
TSB_STORE(TSB, TTE); \
|
||||
sub TSB, 0x8, TSB; \
|
||||
TSB_MEMBAR; \
|
||||
TSB_STORE(TSB, TAG);
|
||||
|
||||
#define KTSB_LOAD_QUAD(TSB, REG) \
|
||||
@@ -153,13 +149,11 @@ extern struct tsb_phys_patch_entry __tsb_phys_patch, __tsb_phys_patch_end;
|
||||
cmp REG1, REG2; \
|
||||
bne,pn %icc, 99b; \
|
||||
nop; \
|
||||
TSB_MEMBAR
|
||||
|
||||
#define KTSB_WRITE(TSB, TTE, TAG) \
|
||||
add TSB, 0x8, TSB; \
|
||||
stxa TTE, [TSB] ASI_N; \
|
||||
sub TSB, 0x8, TSB; \
|
||||
TSB_MEMBAR; \
|
||||
stxa TAG, [TSB] ASI_N;
|
||||
|
||||
/* Do a kernel page table walk. Leaves physical PTE pointer in
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define _SPARC64_TTABLE_H
|
||||
|
||||
#include <asm/utrap.h>
|
||||
#include <asm/pil.h>
|
||||
|
||||
#ifdef __ASSEMBLY__
|
||||
#include <asm/thread_info.h>
|
||||
@@ -123,7 +124,7 @@
|
||||
|
||||
#define TRAP_IRQ(routine, level) \
|
||||
rdpr %pil, %g2; \
|
||||
wrpr %g0, 15, %pil; \
|
||||
wrpr %g0, PIL_NORMAL_MAX, %pil; \
|
||||
sethi %hi(1f-4), %g7; \
|
||||
ba,pt %xcc, etrap_irq; \
|
||||
or %g7, %lo(1f-4), %g7; \
|
||||
@@ -143,7 +144,7 @@
|
||||
|
||||
#define TRAP_IRQ(routine, level) \
|
||||
rdpr %pil, %g2; \
|
||||
wrpr %g0, 15, %pil; \
|
||||
wrpr %g0, PIL_NORMAL_MAX, %pil; \
|
||||
ba,pt %xcc, etrap_irq; \
|
||||
rd %pc, %g7; \
|
||||
mov level, %o0; \
|
||||
@@ -153,6 +154,16 @@
|
||||
|
||||
#endif
|
||||
|
||||
#define TRAP_NMI_IRQ(routine, level) \
|
||||
rdpr %pil, %g2; \
|
||||
wrpr %g0, PIL_NMI, %pil; \
|
||||
ba,pt %xcc, etrap_irq; \
|
||||
rd %pc, %g7; \
|
||||
mov level, %o0; \
|
||||
call routine; \
|
||||
add %sp, PTREGS_OFF, %o1; \
|
||||
ba,a,pt %xcc, rtrap_nmi;
|
||||
|
||||
#define TRAP_IVEC TRAP_NOSAVE(do_ivec)
|
||||
|
||||
#define BTRAP(lvl) TRAP_ARG(bad_trap, lvl)
|
||||
|
||||
@@ -1,8 +1,444 @@
|
||||
#ifndef ___ASM_SPARC_UNISTD_H
|
||||
#define ___ASM_SPARC_UNISTD_H
|
||||
#if defined(__sparc__) && defined(__arch64__)
|
||||
#include <asm/unistd_64.h>
|
||||
#ifndef _SPARC_UNISTD_H
|
||||
#define _SPARC_UNISTD_H
|
||||
|
||||
/*
|
||||
* System calls under the Sparc.
|
||||
*
|
||||
* Don't be scared by the ugly clobbers, it is the only way I can
|
||||
* think of right now to force the arguments into fixed registers
|
||||
* before the trap into the system call with gcc 'asm' statements.
|
||||
*
|
||||
* Copyright (C) 1995, 2007 David S. Miller (davem@davemloft.net)
|
||||
*
|
||||
* SunOS compatibility based upon preliminary work which is:
|
||||
*
|
||||
* Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu)
|
||||
*/
|
||||
#ifndef __32bit_syscall_numbers__
|
||||
#ifndef __arch64__
|
||||
#define __32bit_syscall_numbers__
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define __NR_restart_syscall 0 /* Linux Specific */
|
||||
#define __NR_exit 1 /* Common */
|
||||
#define __NR_fork 2 /* Common */
|
||||
#define __NR_read 3 /* Common */
|
||||
#define __NR_write 4 /* Common */
|
||||
#define __NR_open 5 /* Common */
|
||||
#define __NR_close 6 /* Common */
|
||||
#define __NR_wait4 7 /* Common */
|
||||
#define __NR_creat 8 /* Common */
|
||||
#define __NR_link 9 /* Common */
|
||||
#define __NR_unlink 10 /* Common */
|
||||
#define __NR_execv 11 /* SunOS Specific */
|
||||
#define __NR_chdir 12 /* Common */
|
||||
#define __NR_chown 13 /* Common */
|
||||
#define __NR_mknod 14 /* Common */
|
||||
#define __NR_chmod 15 /* Common */
|
||||
#define __NR_lchown 16 /* Common */
|
||||
#define __NR_brk 17 /* Common */
|
||||
#define __NR_perfctr 18 /* Performance counter operations */
|
||||
#define __NR_lseek 19 /* Common */
|
||||
#define __NR_getpid 20 /* Common */
|
||||
#define __NR_capget 21 /* Linux Specific */
|
||||
#define __NR_capset 22 /* Linux Specific */
|
||||
#define __NR_setuid 23 /* Implemented via setreuid in SunOS */
|
||||
#define __NR_getuid 24 /* Common */
|
||||
#define __NR_vmsplice 25 /* ENOSYS under SunOS */
|
||||
#define __NR_ptrace 26 /* Common */
|
||||
#define __NR_alarm 27 /* Implemented via setitimer in SunOS */
|
||||
#define __NR_sigaltstack 28 /* Common */
|
||||
#define __NR_pause 29 /* Is sigblock(0)->sigpause() in SunOS */
|
||||
#define __NR_utime 30 /* Implemented via utimes() under SunOS */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_lchown32 31 /* Linux sparc32 specific */
|
||||
#define __NR_fchown32 32 /* Linux sparc32 specific */
|
||||
#endif
|
||||
#define __NR_access 33 /* Common */
|
||||
#define __NR_nice 34 /* Implemented via get/setpriority() in SunOS */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_chown32 35 /* Linux sparc32 specific */
|
||||
#endif
|
||||
#define __NR_sync 36 /* Common */
|
||||
#define __NR_kill 37 /* Common */
|
||||
#define __NR_stat 38 /* Common */
|
||||
#define __NR_sendfile 39 /* Linux Specific */
|
||||
#define __NR_lstat 40 /* Common */
|
||||
#define __NR_dup 41 /* Common */
|
||||
#define __NR_pipe 42 /* Common */
|
||||
#define __NR_times 43 /* Implemented via getrusage() in SunOS */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_getuid32 44 /* Linux sparc32 specific */
|
||||
#endif
|
||||
#define __NR_umount2 45 /* Linux Specific */
|
||||
#define __NR_setgid 46 /* Implemented via setregid() in SunOS */
|
||||
#define __NR_getgid 47 /* Common */
|
||||
#define __NR_signal 48 /* Implemented via sigvec() in SunOS */
|
||||
#define __NR_geteuid 49 /* SunOS calls getuid() */
|
||||
#define __NR_getegid 50 /* SunOS calls getgid() */
|
||||
#define __NR_acct 51 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_getgid32 53 /* Linux sparc32 specific */
|
||||
#else
|
||||
#include <asm/unistd_32.h>
|
||||
#define __NR_memory_ordering 52 /* Linux Specific */
|
||||
#endif
|
||||
#define __NR_ioctl 54 /* Common */
|
||||
#define __NR_reboot 55 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_mmap2 56 /* Linux sparc32 Specific */
|
||||
#endif
|
||||
#define __NR_symlink 57 /* Common */
|
||||
#define __NR_readlink 58 /* Common */
|
||||
#define __NR_execve 59 /* Common */
|
||||
#define __NR_umask 60 /* Common */
|
||||
#define __NR_chroot 61 /* Common */
|
||||
#define __NR_fstat 62 /* Common */
|
||||
#define __NR_fstat64 63 /* Linux Specific */
|
||||
#define __NR_getpagesize 64 /* Common */
|
||||
#define __NR_msync 65 /* Common in newer 1.3.x revs... */
|
||||
#define __NR_vfork 66 /* Common */
|
||||
#define __NR_pread64 67 /* Linux Specific */
|
||||
#define __NR_pwrite64 68 /* Linux Specific */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_geteuid32 69 /* Linux sparc32, sbrk under SunOS */
|
||||
#define __NR_getegid32 70 /* Linux sparc32, sstk under SunOS */
|
||||
#endif
|
||||
#define __NR_mmap 71 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_setreuid32 72 /* Linux sparc32, vadvise under SunOS */
|
||||
#endif
|
||||
#define __NR_munmap 73 /* Common */
|
||||
#define __NR_mprotect 74 /* Common */
|
||||
#define __NR_madvise 75 /* Common */
|
||||
#define __NR_vhangup 76 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_truncate64 77 /* Linux sparc32 Specific */
|
||||
#endif
|
||||
#define __NR_mincore 78 /* Common */
|
||||
#define __NR_getgroups 79 /* Common */
|
||||
#define __NR_setgroups 80 /* Common */
|
||||
#define __NR_getpgrp 81 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_setgroups32 82 /* Linux sparc32, setpgrp under SunOS */
|
||||
#endif
|
||||
#define __NR_setitimer 83 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_ftruncate64 84 /* Linux sparc32 Specific */
|
||||
#endif
|
||||
#define __NR_swapon 85 /* Common */
|
||||
#define __NR_getitimer 86 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_setuid32 87 /* Linux sparc32, gethostname under SunOS */
|
||||
#endif
|
||||
#define __NR_sethostname 88 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_setgid32 89 /* Linux sparc32, getdtablesize under SunOS */
|
||||
#endif
|
||||
#define __NR_dup2 90 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_setfsuid32 91 /* Linux sparc32, getdopt under SunOS */
|
||||
#endif
|
||||
#define __NR_fcntl 92 /* Common */
|
||||
#define __NR_select 93 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_setfsgid32 94 /* Linux sparc32, setdopt under SunOS */
|
||||
#endif
|
||||
#define __NR_fsync 95 /* Common */
|
||||
#define __NR_setpriority 96 /* Common */
|
||||
#define __NR_socket 97 /* Common */
|
||||
#define __NR_connect 98 /* Common */
|
||||
#define __NR_accept 99 /* Common */
|
||||
#define __NR_getpriority 100 /* Common */
|
||||
#define __NR_rt_sigreturn 101 /* Linux Specific */
|
||||
#define __NR_rt_sigaction 102 /* Linux Specific */
|
||||
#define __NR_rt_sigprocmask 103 /* Linux Specific */
|
||||
#define __NR_rt_sigpending 104 /* Linux Specific */
|
||||
#define __NR_rt_sigtimedwait 105 /* Linux Specific */
|
||||
#define __NR_rt_sigqueueinfo 106 /* Linux Specific */
|
||||
#define __NR_rt_sigsuspend 107 /* Linux Specific */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_setresuid32 108 /* Linux Specific, sigvec under SunOS */
|
||||
#define __NR_getresuid32 109 /* Linux Specific, sigblock under SunOS */
|
||||
#define __NR_setresgid32 110 /* Linux Specific, sigsetmask under SunOS */
|
||||
#define __NR_getresgid32 111 /* Linux Specific, sigpause under SunOS */
|
||||
#define __NR_setregid32 112 /* Linux sparc32, sigstack under SunOS */
|
||||
#else
|
||||
#define __NR_setresuid 108 /* Linux Specific, sigvec under SunOS */
|
||||
#define __NR_getresuid 109 /* Linux Specific, sigblock under SunOS */
|
||||
#define __NR_setresgid 110 /* Linux Specific, sigsetmask under SunOS */
|
||||
#define __NR_getresgid 111 /* Linux Specific, sigpause under SunOS */
|
||||
#endif
|
||||
#define __NR_recvmsg 113 /* Common */
|
||||
#define __NR_sendmsg 114 /* Common */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_getgroups32 115 /* Linux sparc32, vtrace under SunOS */
|
||||
#endif
|
||||
#define __NR_gettimeofday 116 /* Common */
|
||||
#define __NR_getrusage 117 /* Common */
|
||||
#define __NR_getsockopt 118 /* Common */
|
||||
#define __NR_getcwd 119 /* Linux Specific */
|
||||
#define __NR_readv 120 /* Common */
|
||||
#define __NR_writev 121 /* Common */
|
||||
#define __NR_settimeofday 122 /* Common */
|
||||
#define __NR_fchown 123 /* Common */
|
||||
#define __NR_fchmod 124 /* Common */
|
||||
#define __NR_recvfrom 125 /* Common */
|
||||
#define __NR_setreuid 126 /* Common */
|
||||
#define __NR_setregid 127 /* Common */
|
||||
#define __NR_rename 128 /* Common */
|
||||
#define __NR_truncate 129 /* Common */
|
||||
#define __NR_ftruncate 130 /* Common */
|
||||
#define __NR_flock 131 /* Common */
|
||||
#define __NR_lstat64 132 /* Linux Specific */
|
||||
#define __NR_sendto 133 /* Common */
|
||||
#define __NR_shutdown 134 /* Common */
|
||||
#define __NR_socketpair 135 /* Common */
|
||||
#define __NR_mkdir 136 /* Common */
|
||||
#define __NR_rmdir 137 /* Common */
|
||||
#define __NR_utimes 138 /* SunOS Specific */
|
||||
#define __NR_stat64 139 /* Linux Specific */
|
||||
#define __NR_sendfile64 140 /* adjtime under SunOS */
|
||||
#define __NR_getpeername 141 /* Common */
|
||||
#define __NR_futex 142 /* gethostid under SunOS */
|
||||
#define __NR_gettid 143 /* ENOSYS under SunOS */
|
||||
#define __NR_getrlimit 144 /* Common */
|
||||
#define __NR_setrlimit 145 /* Common */
|
||||
#define __NR_pivot_root 146 /* Linux Specific, killpg under SunOS */
|
||||
#define __NR_prctl 147 /* ENOSYS under SunOS */
|
||||
#define __NR_pciconfig_read 148 /* ENOSYS under SunOS */
|
||||
#define __NR_pciconfig_write 149 /* ENOSYS under SunOS */
|
||||
#define __NR_getsockname 150 /* Common */
|
||||
#define __NR_inotify_init 151 /* Linux specific */
|
||||
#define __NR_inotify_add_watch 152 /* Linux specific */
|
||||
#define __NR_poll 153 /* Common */
|
||||
#define __NR_getdents64 154 /* Linux specific */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_fcntl64 155 /* Linux sparc32 Specific */
|
||||
#endif
|
||||
#define __NR_inotify_rm_watch 156 /* Linux specific */
|
||||
#define __NR_statfs 157 /* Common */
|
||||
#define __NR_fstatfs 158 /* Common */
|
||||
#define __NR_umount 159 /* Common */
|
||||
#define __NR_sched_set_affinity 160 /* Linux specific, async_daemon under SunOS */
|
||||
#define __NR_sched_get_affinity 161 /* Linux specific, getfh under SunOS */
|
||||
#define __NR_getdomainname 162 /* SunOS Specific */
|
||||
#define __NR_setdomainname 163 /* Common */
|
||||
#ifndef __32bit_syscall_numbers__
|
||||
#define __NR_utrap_install 164 /* SYSV ABI/v9 required */
|
||||
#endif
|
||||
#define __NR_quotactl 165 /* Common */
|
||||
#define __NR_set_tid_address 166 /* Linux specific, exportfs under SunOS */
|
||||
#define __NR_mount 167 /* Common */
|
||||
#define __NR_ustat 168 /* Common */
|
||||
#define __NR_setxattr 169 /* SunOS: semsys */
|
||||
#define __NR_lsetxattr 170 /* SunOS: msgsys */
|
||||
#define __NR_fsetxattr 171 /* SunOS: shmsys */
|
||||
#define __NR_getxattr 172 /* SunOS: auditsys */
|
||||
#define __NR_lgetxattr 173 /* SunOS: rfssys */
|
||||
#define __NR_getdents 174 /* Common */
|
||||
#define __NR_setsid 175 /* Common */
|
||||
#define __NR_fchdir 176 /* Common */
|
||||
#define __NR_fgetxattr 177 /* SunOS: fchroot */
|
||||
#define __NR_listxattr 178 /* SunOS: vpixsys */
|
||||
#define __NR_llistxattr 179 /* SunOS: aioread */
|
||||
#define __NR_flistxattr 180 /* SunOS: aiowrite */
|
||||
#define __NR_removexattr 181 /* SunOS: aiowait */
|
||||
#define __NR_lremovexattr 182 /* SunOS: aiocancel */
|
||||
#define __NR_sigpending 183 /* Common */
|
||||
#define __NR_query_module 184 /* Linux Specific */
|
||||
#define __NR_setpgid 185 /* Common */
|
||||
#define __NR_fremovexattr 186 /* SunOS: pathconf */
|
||||
#define __NR_tkill 187 /* SunOS: fpathconf */
|
||||
#define __NR_exit_group 188 /* Linux specific, sysconf undef SunOS */
|
||||
#define __NR_uname 189 /* Linux Specific */
|
||||
#define __NR_init_module 190 /* Linux Specific */
|
||||
#define __NR_personality 191 /* Linux Specific */
|
||||
#define __NR_remap_file_pages 192 /* Linux Specific */
|
||||
#define __NR_epoll_create 193 /* Linux Specific */
|
||||
#define __NR_epoll_ctl 194 /* Linux Specific */
|
||||
#define __NR_epoll_wait 195 /* Linux Specific */
|
||||
#define __NR_ioprio_set 196 /* Linux Specific */
|
||||
#define __NR_getppid 197 /* Linux Specific */
|
||||
#define __NR_sigaction 198 /* Linux Specific */
|
||||
#define __NR_sgetmask 199 /* Linux Specific */
|
||||
#define __NR_ssetmask 200 /* Linux Specific */
|
||||
#define __NR_sigsuspend 201 /* Linux Specific */
|
||||
#define __NR_oldlstat 202 /* Linux Specific */
|
||||
#define __NR_uselib 203 /* Linux Specific */
|
||||
#define __NR_readdir 204 /* Linux Specific */
|
||||
#define __NR_readahead 205 /* Linux Specific */
|
||||
#define __NR_socketcall 206 /* Linux Specific */
|
||||
#define __NR_syslog 207 /* Linux Specific */
|
||||
#define __NR_lookup_dcookie 208 /* Linux Specific */
|
||||
#define __NR_fadvise64 209 /* Linux Specific */
|
||||
#define __NR_fadvise64_64 210 /* Linux Specific */
|
||||
#define __NR_tgkill 211 /* Linux Specific */
|
||||
#define __NR_waitpid 212 /* Linux Specific */
|
||||
#define __NR_swapoff 213 /* Linux Specific */
|
||||
#define __NR_sysinfo 214 /* Linux Specific */
|
||||
#define __NR_ipc 215 /* Linux Specific */
|
||||
#define __NR_sigreturn 216 /* Linux Specific */
|
||||
#define __NR_clone 217 /* Linux Specific */
|
||||
#define __NR_ioprio_get 218 /* Linux Specific */
|
||||
#define __NR_adjtimex 219 /* Linux Specific */
|
||||
#define __NR_sigprocmask 220 /* Linux Specific */
|
||||
#define __NR_create_module 221 /* Linux Specific */
|
||||
#define __NR_delete_module 222 /* Linux Specific */
|
||||
#define __NR_get_kernel_syms 223 /* Linux Specific */
|
||||
#define __NR_getpgid 224 /* Linux Specific */
|
||||
#define __NR_bdflush 225 /* Linux Specific */
|
||||
#define __NR_sysfs 226 /* Linux Specific */
|
||||
#define __NR_afs_syscall 227 /* Linux Specific */
|
||||
#define __NR_setfsuid 228 /* Linux Specific */
|
||||
#define __NR_setfsgid 229 /* Linux Specific */
|
||||
#define __NR__newselect 230 /* Linux Specific */
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
#define __NR_time 231 /* Linux Specific */
|
||||
#else
|
||||
#ifdef __KERNEL__
|
||||
#define __NR_time 231 /* Linux sparc32 */
|
||||
#endif
|
||||
#endif
|
||||
#define __NR_splice 232 /* Linux Specific */
|
||||
#define __NR_stime 233 /* Linux Specific */
|
||||
#define __NR_statfs64 234 /* Linux Specific */
|
||||
#define __NR_fstatfs64 235 /* Linux Specific */
|
||||
#define __NR__llseek 236 /* Linux Specific */
|
||||
#define __NR_mlock 237
|
||||
#define __NR_munlock 238
|
||||
#define __NR_mlockall 239
|
||||
#define __NR_munlockall 240
|
||||
#define __NR_sched_setparam 241
|
||||
#define __NR_sched_getparam 242
|
||||
#define __NR_sched_setscheduler 243
|
||||
#define __NR_sched_getscheduler 244
|
||||
#define __NR_sched_yield 245
|
||||
#define __NR_sched_get_priority_max 246
|
||||
#define __NR_sched_get_priority_min 247
|
||||
#define __NR_sched_rr_get_interval 248
|
||||
#define __NR_nanosleep 249
|
||||
#define __NR_mremap 250
|
||||
#define __NR__sysctl 251
|
||||
#define __NR_getsid 252
|
||||
#define __NR_fdatasync 253
|
||||
#define __NR_nfsservctl 254
|
||||
#define __NR_sync_file_range 255
|
||||
#define __NR_clock_settime 256
|
||||
#define __NR_clock_gettime 257
|
||||
#define __NR_clock_getres 258
|
||||
#define __NR_clock_nanosleep 259
|
||||
#define __NR_sched_getaffinity 260
|
||||
#define __NR_sched_setaffinity 261
|
||||
#define __NR_timer_settime 262
|
||||
#define __NR_timer_gettime 263
|
||||
#define __NR_timer_getoverrun 264
|
||||
#define __NR_timer_delete 265
|
||||
#define __NR_timer_create 266
|
||||
/* #define __NR_vserver 267 Reserved for VSERVER */
|
||||
#define __NR_io_setup 268
|
||||
#define __NR_io_destroy 269
|
||||
#define __NR_io_submit 270
|
||||
#define __NR_io_cancel 271
|
||||
#define __NR_io_getevents 272
|
||||
#define __NR_mq_open 273
|
||||
#define __NR_mq_unlink 274
|
||||
#define __NR_mq_timedsend 275
|
||||
#define __NR_mq_timedreceive 276
|
||||
#define __NR_mq_notify 277
|
||||
#define __NR_mq_getsetattr 278
|
||||
#define __NR_waitid 279
|
||||
#define __NR_tee 280
|
||||
#define __NR_add_key 281
|
||||
#define __NR_request_key 282
|
||||
#define __NR_keyctl 283
|
||||
#define __NR_openat 284
|
||||
#define __NR_mkdirat 285
|
||||
#define __NR_mknodat 286
|
||||
#define __NR_fchownat 287
|
||||
#define __NR_futimesat 288
|
||||
#define __NR_fstatat64 289
|
||||
#define __NR_unlinkat 290
|
||||
#define __NR_renameat 291
|
||||
#define __NR_linkat 292
|
||||
#define __NR_symlinkat 293
|
||||
#define __NR_readlinkat 294
|
||||
#define __NR_fchmodat 295
|
||||
#define __NR_faccessat 296
|
||||
#define __NR_pselect6 297
|
||||
#define __NR_ppoll 298
|
||||
#define __NR_unshare 299
|
||||
#define __NR_set_robust_list 300
|
||||
#define __NR_get_robust_list 301
|
||||
#define __NR_migrate_pages 302
|
||||
#define __NR_mbind 303
|
||||
#define __NR_get_mempolicy 304
|
||||
#define __NR_set_mempolicy 305
|
||||
#define __NR_kexec_load 306
|
||||
#define __NR_move_pages 307
|
||||
#define __NR_getcpu 308
|
||||
#define __NR_epoll_pwait 309
|
||||
#define __NR_utimensat 310
|
||||
#define __NR_signalfd 311
|
||||
#define __NR_timerfd_create 312
|
||||
#define __NR_eventfd 313
|
||||
#define __NR_fallocate 314
|
||||
#define __NR_timerfd_settime 315
|
||||
#define __NR_timerfd_gettime 316
|
||||
#define __NR_signalfd4 317
|
||||
#define __NR_eventfd2 318
|
||||
#define __NR_epoll_create1 319
|
||||
#define __NR_dup3 320
|
||||
#define __NR_pipe2 321
|
||||
#define __NR_inotify_init1 322
|
||||
#define __NR_accept4 323
|
||||
|
||||
#define NR_SYSCALLS 324
|
||||
|
||||
#ifdef __32bit_syscall_numbers__
|
||||
/* Sparc 32-bit only has the "setresuid32", "getresuid32" variants,
|
||||
* it never had the plain ones and there is no value to adding those
|
||||
* old versions into the syscall table.
|
||||
*/
|
||||
#define __IGNORE_setresuid
|
||||
#define __IGNORE_getresuid
|
||||
#define __IGNORE_setresgid
|
||||
#define __IGNORE_getresgid
|
||||
#endif
|
||||
|
||||
#ifdef __KERNEL__
|
||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||
#define __ARCH_WANT_OLD_READDIR
|
||||
#define __ARCH_WANT_STAT64
|
||||
#define __ARCH_WANT_SYS_ALARM
|
||||
#define __ARCH_WANT_SYS_GETHOSTNAME
|
||||
#define __ARCH_WANT_SYS_PAUSE
|
||||
#define __ARCH_WANT_SYS_SGETMASK
|
||||
#define __ARCH_WANT_SYS_SIGNAL
|
||||
#define __ARCH_WANT_SYS_TIME
|
||||
#define __ARCH_WANT_SYS_UTIME
|
||||
#define __ARCH_WANT_SYS_WAITPID
|
||||
#define __ARCH_WANT_SYS_SOCKETCALL
|
||||
#define __ARCH_WANT_SYS_FADVISE64
|
||||
#define __ARCH_WANT_SYS_GETPGRP
|
||||
#define __ARCH_WANT_SYS_LLSEEK
|
||||
#define __ARCH_WANT_SYS_NICE
|
||||
#define __ARCH_WANT_SYS_OLDUMOUNT
|
||||
#define __ARCH_WANT_SYS_SIGPENDING
|
||||
#define __ARCH_WANT_SYS_SIGPROCMASK
|
||||
#define __ARCH_WANT_SYS_RT_SIGSUSPEND
|
||||
#ifndef __32bit_syscall_numbers__
|
||||
#define __ARCH_WANT_COMPAT_SYS_TIME
|
||||
#define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND
|
||||
#endif
|
||||
|
||||
/*
|
||||
* "Conditional" syscalls
|
||||
*
|
||||
* What we want is __attribute__((weak,alias("sys_ni_syscall"))),
|
||||
* but it doesn't work on all toolchains, so we just do it by hand
|
||||
*/
|
||||
#define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall")
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _SPARC_UNISTD_H */
|
||||
|
||||
@@ -1,385 +0,0 @@
|
||||
#ifndef _SPARC_UNISTD_H
|
||||
#define _SPARC_UNISTD_H
|
||||
|
||||
/*
|
||||
* System calls under the Sparc.
|
||||
*
|
||||
* Don't be scared by the ugly clobbers, it is the only way I can
|
||||
* think of right now to force the arguments into fixed registers
|
||||
* before the trap into the system call with gcc 'asm' statements.
|
||||
*
|
||||
* Copyright (C) 1995, 2007 David S. Miller (davem@davemloft.net)
|
||||
*
|
||||
* SunOS compatibility based upon preliminary work which is:
|
||||
*
|
||||
* Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu)
|
||||
*/
|
||||
|
||||
#define __NR_restart_syscall 0 /* Linux Specific */
|
||||
#define __NR_exit 1 /* Common */
|
||||
#define __NR_fork 2 /* Common */
|
||||
#define __NR_read 3 /* Common */
|
||||
#define __NR_write 4 /* Common */
|
||||
#define __NR_open 5 /* Common */
|
||||
#define __NR_close 6 /* Common */
|
||||
#define __NR_wait4 7 /* Common */
|
||||
#define __NR_creat 8 /* Common */
|
||||
#define __NR_link 9 /* Common */
|
||||
#define __NR_unlink 10 /* Common */
|
||||
#define __NR_execv 11 /* SunOS Specific */
|
||||
#define __NR_chdir 12 /* Common */
|
||||
#define __NR_chown 13 /* Common */
|
||||
#define __NR_mknod 14 /* Common */
|
||||
#define __NR_chmod 15 /* Common */
|
||||
#define __NR_lchown 16 /* Common */
|
||||
#define __NR_brk 17 /* Common */
|
||||
#define __NR_perfctr 18 /* Performance counter operations */
|
||||
#define __NR_lseek 19 /* Common */
|
||||
#define __NR_getpid 20 /* Common */
|
||||
#define __NR_capget 21 /* Linux Specific */
|
||||
#define __NR_capset 22 /* Linux Specific */
|
||||
#define __NR_setuid 23 /* Implemented via setreuid in SunOS */
|
||||
#define __NR_getuid 24 /* Common */
|
||||
#define __NR_vmsplice 25 /* ENOSYS under SunOS */
|
||||
#define __NR_ptrace 26 /* Common */
|
||||
#define __NR_alarm 27 /* Implemented via setitimer in SunOS */
|
||||
#define __NR_sigaltstack 28 /* Common */
|
||||
#define __NR_pause 29 /* Is sigblock(0)->sigpause() in SunOS */
|
||||
#define __NR_utime 30 /* Implemented via utimes() under SunOS */
|
||||
#define __NR_lchown32 31 /* Linux sparc32 specific */
|
||||
#define __NR_fchown32 32 /* Linux sparc32 specific */
|
||||
#define __NR_access 33 /* Common */
|
||||
#define __NR_nice 34 /* Implemented via get/setpriority() in SunOS */
|
||||
#define __NR_chown32 35 /* Linux sparc32 specific */
|
||||
#define __NR_sync 36 /* Common */
|
||||
#define __NR_kill 37 /* Common */
|
||||
#define __NR_stat 38 /* Common */
|
||||
#define __NR_sendfile 39 /* Linux Specific */
|
||||
#define __NR_lstat 40 /* Common */
|
||||
#define __NR_dup 41 /* Common */
|
||||
#define __NR_pipe 42 /* Common */
|
||||
#define __NR_times 43 /* Implemented via getrusage() in SunOS */
|
||||
#define __NR_getuid32 44 /* Linux sparc32 specific */
|
||||
#define __NR_umount2 45 /* Linux Specific */
|
||||
#define __NR_setgid 46 /* Implemented via setregid() in SunOS */
|
||||
#define __NR_getgid 47 /* Common */
|
||||
#define __NR_signal 48 /* Implemented via sigvec() in SunOS */
|
||||
#define __NR_geteuid 49 /* SunOS calls getuid() */
|
||||
#define __NR_getegid 50 /* SunOS calls getgid() */
|
||||
#define __NR_acct 51 /* Common */
|
||||
/* #define __NR_memory_ordering 52 Linux sparc64 specific */
|
||||
#define __NR_getgid32 53 /* Linux sparc32 specific */
|
||||
#define __NR_ioctl 54 /* Common */
|
||||
#define __NR_reboot 55 /* Common */
|
||||
#define __NR_mmap2 56 /* Linux sparc32 Specific */
|
||||
#define __NR_symlink 57 /* Common */
|
||||
#define __NR_readlink 58 /* Common */
|
||||
#define __NR_execve 59 /* Common */
|
||||
#define __NR_umask 60 /* Common */
|
||||
#define __NR_chroot 61 /* Common */
|
||||
#define __NR_fstat 62 /* Common */
|
||||
#define __NR_fstat64 63 /* Linux Specific */
|
||||
#define __NR_getpagesize 64 /* Common */
|
||||
#define __NR_msync 65 /* Common in newer 1.3.x revs... */
|
||||
#define __NR_vfork 66 /* Common */
|
||||
#define __NR_pread64 67 /* Linux Specific */
|
||||
#define __NR_pwrite64 68 /* Linux Specific */
|
||||
#define __NR_geteuid32 69 /* Linux sparc32, sbrk under SunOS */
|
||||
#define __NR_getegid32 70 /* Linux sparc32, sstk under SunOS */
|
||||
#define __NR_mmap 71 /* Common */
|
||||
#define __NR_setreuid32 72 /* Linux sparc32, vadvise under SunOS */
|
||||
#define __NR_munmap 73 /* Common */
|
||||
#define __NR_mprotect 74 /* Common */
|
||||
#define __NR_madvise 75 /* Common */
|
||||
#define __NR_vhangup 76 /* Common */
|
||||
#define __NR_truncate64 77 /* Linux sparc32 Specific */
|
||||
#define __NR_mincore 78 /* Common */
|
||||
#define __NR_getgroups 79 /* Common */
|
||||
#define __NR_setgroups 80 /* Common */
|
||||
#define __NR_getpgrp 81 /* Common */
|
||||
#define __NR_setgroups32 82 /* Linux sparc32, setpgrp under SunOS */
|
||||
#define __NR_setitimer 83 /* Common */
|
||||
#define __NR_ftruncate64 84 /* Linux sparc32 Specific */
|
||||
#define __NR_swapon 85 /* Common */
|
||||
#define __NR_getitimer 86 /* Common */
|
||||
#define __NR_setuid32 87 /* Linux sparc32, gethostname under SunOS */
|
||||
#define __NR_sethostname 88 /* Common */
|
||||
#define __NR_setgid32 89 /* Linux sparc32, getdtablesize under SunOS */
|
||||
#define __NR_dup2 90 /* Common */
|
||||
#define __NR_setfsuid32 91 /* Linux sparc32, getdopt under SunOS */
|
||||
#define __NR_fcntl 92 /* Common */
|
||||
#define __NR_select 93 /* Common */
|
||||
#define __NR_setfsgid32 94 /* Linux sparc32, setdopt under SunOS */
|
||||
#define __NR_fsync 95 /* Common */
|
||||
#define __NR_setpriority 96 /* Common */
|
||||
#define __NR_socket 97 /* Common */
|
||||
#define __NR_connect 98 /* Common */
|
||||
#define __NR_accept 99 /* Common */
|
||||
#define __NR_getpriority 100 /* Common */
|
||||
#define __NR_rt_sigreturn 101 /* Linux Specific */
|
||||
#define __NR_rt_sigaction 102 /* Linux Specific */
|
||||
#define __NR_rt_sigprocmask 103 /* Linux Specific */
|
||||
#define __NR_rt_sigpending 104 /* Linux Specific */
|
||||
#define __NR_rt_sigtimedwait 105 /* Linux Specific */
|
||||
#define __NR_rt_sigqueueinfo 106 /* Linux Specific */
|
||||
#define __NR_rt_sigsuspend 107 /* Linux Specific */
|
||||
#define __NR_setresuid32 108 /* Linux Specific, sigvec under SunOS */
|
||||
#define __NR_getresuid32 109 /* Linux Specific, sigblock under SunOS */
|
||||
#define __NR_setresgid32 110 /* Linux Specific, sigsetmask under SunOS */
|
||||
#define __NR_getresgid32 111 /* Linux Specific, sigpause under SunOS */
|
||||
#define __NR_setregid32 112 /* Linux sparc32, sigstack under SunOS */
|
||||
#define __NR_recvmsg 113 /* Common */
|
||||
#define __NR_sendmsg 114 /* Common */
|
||||
#define __NR_getgroups32 115 /* Linux sparc32, vtrace under SunOS */
|
||||
#define __NR_gettimeofday 116 /* Common */
|
||||
#define __NR_getrusage 117 /* Common */
|
||||
#define __NR_getsockopt 118 /* Common */
|
||||
#define __NR_getcwd 119 /* Linux Specific */
|
||||
#define __NR_readv 120 /* Common */
|
||||
#define __NR_writev 121 /* Common */
|
||||
#define __NR_settimeofday 122 /* Common */
|
||||
#define __NR_fchown 123 /* Common */
|
||||
#define __NR_fchmod 124 /* Common */
|
||||
#define __NR_recvfrom 125 /* Common */
|
||||
#define __NR_setreuid 126 /* Common */
|
||||
#define __NR_setregid 127 /* Common */
|
||||
#define __NR_rename 128 /* Common */
|
||||
#define __NR_truncate 129 /* Common */
|
||||
#define __NR_ftruncate 130 /* Common */
|
||||
#define __NR_flock 131 /* Common */
|
||||
#define __NR_lstat64 132 /* Linux Specific */
|
||||
#define __NR_sendto 133 /* Common */
|
||||
#define __NR_shutdown 134 /* Common */
|
||||
#define __NR_socketpair 135 /* Common */
|
||||
#define __NR_mkdir 136 /* Common */
|
||||
#define __NR_rmdir 137 /* Common */
|
||||
#define __NR_utimes 138 /* SunOS Specific */
|
||||
#define __NR_stat64 139 /* Linux Specific */
|
||||
#define __NR_sendfile64 140 /* adjtime under SunOS */
|
||||
#define __NR_getpeername 141 /* Common */
|
||||
#define __NR_futex 142 /* gethostid under SunOS */
|
||||
#define __NR_gettid 143 /* ENOSYS under SunOS */
|
||||
#define __NR_getrlimit 144 /* Common */
|
||||
#define __NR_setrlimit 145 /* Common */
|
||||
#define __NR_pivot_root 146 /* Linux Specific, killpg under SunOS */
|
||||
#define __NR_prctl 147 /* ENOSYS under SunOS */
|
||||
#define __NR_pciconfig_read 148 /* ENOSYS under SunOS */
|
||||
#define __NR_pciconfig_write 149 /* ENOSYS under SunOS */
|
||||
#define __NR_getsockname 150 /* Common */
|
||||
#define __NR_inotify_init 151 /* Linux specific */
|
||||
#define __NR_inotify_add_watch 152 /* Linux specific */
|
||||
#define __NR_poll 153 /* Common */
|
||||
#define __NR_getdents64 154 /* Linux specific */
|
||||
#define __NR_fcntl64 155 /* Linux sparc32 Specific */
|
||||
#define __NR_inotify_rm_watch 156 /* Linux specific */
|
||||
#define __NR_statfs 157 /* Common */
|
||||
#define __NR_fstatfs 158 /* Common */
|
||||
#define __NR_umount 159 /* Common */
|
||||
#define __NR_sched_set_affinity 160 /* Linux specific, async_daemon under SunOS */
|
||||
#define __NR_sched_get_affinity 161 /* Linux specific, getfh under SunOS */
|
||||
#define __NR_getdomainname 162 /* SunOS Specific */
|
||||
#define __NR_setdomainname 163 /* Common */
|
||||
/* #define __NR_utrap_install 164 Linux sparc64 specific */
|
||||
#define __NR_quotactl 165 /* Common */
|
||||
#define __NR_set_tid_address 166 /* Linux specific, exportfs under SunOS */
|
||||
#define __NR_mount 167 /* Common */
|
||||
#define __NR_ustat 168 /* Common */
|
||||
#define __NR_setxattr 169 /* SunOS: semsys */
|
||||
#define __NR_lsetxattr 170 /* SunOS: msgsys */
|
||||
#define __NR_fsetxattr 171 /* SunOS: shmsys */
|
||||
#define __NR_getxattr 172 /* SunOS: auditsys */
|
||||
#define __NR_lgetxattr 173 /* SunOS: rfssys */
|
||||
#define __NR_getdents 174 /* Common */
|
||||
#define __NR_setsid 175 /* Common */
|
||||
#define __NR_fchdir 176 /* Common */
|
||||
#define __NR_fgetxattr 177 /* SunOS: fchroot */
|
||||
#define __NR_listxattr 178 /* SunOS: vpixsys */
|
||||
#define __NR_llistxattr 179 /* SunOS: aioread */
|
||||
#define __NR_flistxattr 180 /* SunOS: aiowrite */
|
||||
#define __NR_removexattr 181 /* SunOS: aiowait */
|
||||
#define __NR_lremovexattr 182 /* SunOS: aiocancel */
|
||||
#define __NR_sigpending 183 /* Common */
|
||||
#define __NR_query_module 184 /* Linux Specific */
|
||||
#define __NR_setpgid 185 /* Common */
|
||||
#define __NR_fremovexattr 186 /* SunOS: pathconf */
|
||||
#define __NR_tkill 187 /* SunOS: fpathconf */
|
||||
#define __NR_exit_group 188 /* Linux specific, sysconf undef SunOS */
|
||||
#define __NR_uname 189 /* Linux Specific */
|
||||
#define __NR_init_module 190 /* Linux Specific */
|
||||
#define __NR_personality 191 /* Linux Specific */
|
||||
#define __NR_remap_file_pages 192 /* Linux Specific */
|
||||
#define __NR_epoll_create 193 /* Linux Specific */
|
||||
#define __NR_epoll_ctl 194 /* Linux Specific */
|
||||
#define __NR_epoll_wait 195 /* Linux Specific */
|
||||
#define __NR_ioprio_set 196 /* Linux Specific */
|
||||
#define __NR_getppid 197 /* Linux Specific */
|
||||
#define __NR_sigaction 198 /* Linux Specific */
|
||||
#define __NR_sgetmask 199 /* Linux Specific */
|
||||
#define __NR_ssetmask 200 /* Linux Specific */
|
||||
#define __NR_sigsuspend 201 /* Linux Specific */
|
||||
#define __NR_oldlstat 202 /* Linux Specific */
|
||||
#define __NR_uselib 203 /* Linux Specific */
|
||||
#define __NR_readdir 204 /* Linux Specific */
|
||||
#define __NR_readahead 205 /* Linux Specific */
|
||||
#define __NR_socketcall 206 /* Linux Specific */
|
||||
#define __NR_syslog 207 /* Linux Specific */
|
||||
#define __NR_lookup_dcookie 208 /* Linux Specific */
|
||||
#define __NR_fadvise64 209 /* Linux Specific */
|
||||
#define __NR_fadvise64_64 210 /* Linux Specific */
|
||||
#define __NR_tgkill 211 /* Linux Specific */
|
||||
#define __NR_waitpid 212 /* Linux Specific */
|
||||
#define __NR_swapoff 213 /* Linux Specific */
|
||||
#define __NR_sysinfo 214 /* Linux Specific */
|
||||
#define __NR_ipc 215 /* Linux Specific */
|
||||
#define __NR_sigreturn 216 /* Linux Specific */
|
||||
#define __NR_clone 217 /* Linux Specific */
|
||||
#define __NR_ioprio_get 218 /* Linux Specific */
|
||||
#define __NR_adjtimex 219 /* Linux Specific */
|
||||
#define __NR_sigprocmask 220 /* Linux Specific */
|
||||
#define __NR_create_module 221 /* Linux Specific */
|
||||
#define __NR_delete_module 222 /* Linux Specific */
|
||||
#define __NR_get_kernel_syms 223 /* Linux Specific */
|
||||
#define __NR_getpgid 224 /* Linux Specific */
|
||||
#define __NR_bdflush 225 /* Linux Specific */
|
||||
#define __NR_sysfs 226 /* Linux Specific */
|
||||
#define __NR_afs_syscall 227 /* Linux Specific */
|
||||
#define __NR_setfsuid 228 /* Linux Specific */
|
||||
#define __NR_setfsgid 229 /* Linux Specific */
|
||||
#define __NR__newselect 230 /* Linux Specific */
|
||||
#define __NR_time 231 /* Linux Specific */
|
||||
#define __NR_splice 232 /* Linux Specific */
|
||||
#define __NR_stime 233 /* Linux Specific */
|
||||
#define __NR_statfs64 234 /* Linux Specific */
|
||||
#define __NR_fstatfs64 235 /* Linux Specific */
|
||||
#define __NR__llseek 236 /* Linux Specific */
|
||||
#define __NR_mlock 237
|
||||
#define __NR_munlock 238
|
||||
#define __NR_mlockall 239
|
||||
#define __NR_munlockall 240
|
||||
#define __NR_sched_setparam 241
|
||||
#define __NR_sched_getparam 242
|
||||
#define __NR_sched_setscheduler 243
|
||||
#define __NR_sched_getscheduler 244
|
||||
#define __NR_sched_yield 245
|
||||
#define __NR_sched_get_priority_max 246
|
||||
#define __NR_sched_get_priority_min 247
|
||||
#define __NR_sched_rr_get_interval 248
|
||||
#define __NR_nanosleep 249
|
||||
#define __NR_mremap 250
|
||||
#define __NR__sysctl 251
|
||||
#define __NR_getsid 252
|
||||
#define __NR_fdatasync 253
|
||||
#define __NR_nfsservctl 254
|
||||
#define __NR_sync_file_range 255
|
||||
#define __NR_clock_settime 256
|
||||
#define __NR_clock_gettime 257
|
||||
#define __NR_clock_getres 258
|
||||
#define __NR_clock_nanosleep 259
|
||||
#define __NR_sched_getaffinity 260
|
||||
#define __NR_sched_setaffinity 261
|
||||
#define __NR_timer_settime 262
|
||||
#define __NR_timer_gettime 263
|
||||
#define __NR_timer_getoverrun 264
|
||||
#define __NR_timer_delete 265
|
||||
#define __NR_timer_create 266
|
||||
/* #define __NR_vserver 267 Reserved for VSERVER */
|
||||
#define __NR_io_setup 268
|
||||
#define __NR_io_destroy 269
|
||||
#define __NR_io_submit 270
|
||||
#define __NR_io_cancel 271
|
||||
#define __NR_io_getevents 272
|
||||
#define __NR_mq_open 273
|
||||
#define __NR_mq_unlink 274
|
||||
#define __NR_mq_timedsend 275
|
||||
#define __NR_mq_timedreceive 276
|
||||
#define __NR_mq_notify 277
|
||||
#define __NR_mq_getsetattr 278
|
||||
#define __NR_waitid 279
|
||||
#define __NR_tee 280
|
||||
#define __NR_add_key 281
|
||||
#define __NR_request_key 282
|
||||
#define __NR_keyctl 283
|
||||
#define __NR_openat 284
|
||||
#define __NR_mkdirat 285
|
||||
#define __NR_mknodat 286
|
||||
#define __NR_fchownat 287
|
||||
#define __NR_futimesat 288
|
||||
#define __NR_fstatat64 289
|
||||
#define __NR_unlinkat 290
|
||||
#define __NR_renameat 291
|
||||
#define __NR_linkat 292
|
||||
#define __NR_symlinkat 293
|
||||
#define __NR_readlinkat 294
|
||||
#define __NR_fchmodat 295
|
||||
#define __NR_faccessat 296
|
||||
#define __NR_pselect6 297
|
||||
#define __NR_ppoll 298
|
||||
#define __NR_unshare 299
|
||||
#define __NR_set_robust_list 300
|
||||
#define __NR_get_robust_list 301
|
||||
#define __NR_migrate_pages 302
|
||||
#define __NR_mbind 303
|
||||
#define __NR_get_mempolicy 304
|
||||
#define __NR_set_mempolicy 305
|
||||
#define __NR_kexec_load 306
|
||||
#define __NR_move_pages 307
|
||||
#define __NR_getcpu 308
|
||||
#define __NR_epoll_pwait 309
|
||||
#define __NR_utimensat 310
|
||||
#define __NR_signalfd 311
|
||||
#define __NR_timerfd_create 312
|
||||
#define __NR_eventfd 313
|
||||
#define __NR_fallocate 314
|
||||
#define __NR_timerfd_settime 315
|
||||
#define __NR_timerfd_gettime 316
|
||||
#define __NR_signalfd4 317
|
||||
#define __NR_eventfd2 318
|
||||
#define __NR_epoll_create1 319
|
||||
#define __NR_dup3 320
|
||||
#define __NR_pipe2 321
|
||||
#define __NR_inotify_init1 322
|
||||
#define __NR_accept4 323
|
||||
|
||||
#define NR_SYSCALLS 324
|
||||
|
||||
/* Sparc 32-bit only has the "setresuid32", "getresuid32" variants,
|
||||
* it never had the plain ones and there is no value to adding those
|
||||
* old versions into the syscall table.
|
||||
*/
|
||||
#define __IGNORE_setresuid
|
||||
#define __IGNORE_getresuid
|
||||
#define __IGNORE_setresgid
|
||||
#define __IGNORE_getresgid
|
||||
|
||||
#ifdef __KERNEL__
|
||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||
#define __ARCH_WANT_OLD_READDIR
|
||||
#define __ARCH_WANT_STAT64
|
||||
#define __ARCH_WANT_SYS_ALARM
|
||||
#define __ARCH_WANT_SYS_GETHOSTNAME
|
||||
#define __ARCH_WANT_SYS_PAUSE
|
||||
#define __ARCH_WANT_SYS_SGETMASK
|
||||
#define __ARCH_WANT_SYS_SIGNAL
|
||||
#define __ARCH_WANT_SYS_TIME
|
||||
#define __ARCH_WANT_SYS_UTIME
|
||||
#define __ARCH_WANT_SYS_WAITPID
|
||||
#define __ARCH_WANT_SYS_SOCKETCALL
|
||||
#define __ARCH_WANT_SYS_FADVISE64
|
||||
#define __ARCH_WANT_SYS_GETPGRP
|
||||
#define __ARCH_WANT_SYS_LLSEEK
|
||||
#define __ARCH_WANT_SYS_NICE
|
||||
#define __ARCH_WANT_SYS_OLDUMOUNT
|
||||
#define __ARCH_WANT_SYS_SIGPENDING
|
||||
#define __ARCH_WANT_SYS_SIGPROCMASK
|
||||
#define __ARCH_WANT_SYS_RT_SIGSUSPEND
|
||||
|
||||
/*
|
||||
* "Conditional" syscalls
|
||||
*
|
||||
* What we want is __attribute__((weak,alias("sys_ni_syscall"))),
|
||||
* but it doesn't work on all toolchains, so we just do it by hand
|
||||
*/
|
||||
#define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall")
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _SPARC_UNISTD_H */
|
||||
@@ -1,380 +0,0 @@
|
||||
#ifndef _SPARC64_UNISTD_H
|
||||
#define _SPARC64_UNISTD_H
|
||||
|
||||
/*
|
||||
* System calls under the Sparc.
|
||||
*
|
||||
* Don't be scared by the ugly clobbers, it is the only way I can
|
||||
* think of right now to force the arguments into fixed registers
|
||||
* before the trap into the system call with gcc 'asm' statements.
|
||||
*
|
||||
* Copyright (C) 1995, 2007 David S. Miller (davem@davemloft.net)
|
||||
*
|
||||
* SunOS compatibility based upon preliminary work which is:
|
||||
*
|
||||
* Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu)
|
||||
*/
|
||||
|
||||
#define __NR_restart_syscall 0 /* Linux Specific */
|
||||
#define __NR_exit 1 /* Common */
|
||||
#define __NR_fork 2 /* Common */
|
||||
#define __NR_read 3 /* Common */
|
||||
#define __NR_write 4 /* Common */
|
||||
#define __NR_open 5 /* Common */
|
||||
#define __NR_close 6 /* Common */
|
||||
#define __NR_wait4 7 /* Common */
|
||||
#define __NR_creat 8 /* Common */
|
||||
#define __NR_link 9 /* Common */
|
||||
#define __NR_unlink 10 /* Common */
|
||||
#define __NR_execv 11 /* SunOS Specific */
|
||||
#define __NR_chdir 12 /* Common */
|
||||
#define __NR_chown 13 /* Common */
|
||||
#define __NR_mknod 14 /* Common */
|
||||
#define __NR_chmod 15 /* Common */
|
||||
#define __NR_lchown 16 /* Common */
|
||||
#define __NR_brk 17 /* Common */
|
||||
#define __NR_perfctr 18 /* Performance counter operations */
|
||||
#define __NR_lseek 19 /* Common */
|
||||
#define __NR_getpid 20 /* Common */
|
||||
#define __NR_capget 21 /* Linux Specific */
|
||||
#define __NR_capset 22 /* Linux Specific */
|
||||
#define __NR_setuid 23 /* Implemented via setreuid in SunOS */
|
||||
#define __NR_getuid 24 /* Common */
|
||||
#define __NR_vmsplice 25 /* ENOSYS under SunOS */
|
||||
#define __NR_ptrace 26 /* Common */
|
||||
#define __NR_alarm 27 /* Implemented via setitimer in SunOS */
|
||||
#define __NR_sigaltstack 28 /* Common */
|
||||
#define __NR_pause 29 /* Is sigblock(0)->sigpause() in SunOS */
|
||||
#define __NR_utime 30 /* Implemented via utimes() under SunOS */
|
||||
/* #define __NR_lchown32 31 Linux sparc32 specific */
|
||||
/* #define __NR_fchown32 32 Linux sparc32 specific */
|
||||
#define __NR_access 33 /* Common */
|
||||
#define __NR_nice 34 /* Implemented via get/setpriority() in SunOS */
|
||||
/* #define __NR_chown32 35 Linux sparc32 specific */
|
||||
#define __NR_sync 36 /* Common */
|
||||
#define __NR_kill 37 /* Common */
|
||||
#define __NR_stat 38 /* Common */
|
||||
#define __NR_sendfile 39 /* Linux Specific */
|
||||
#define __NR_lstat 40 /* Common */
|
||||
#define __NR_dup 41 /* Common */
|
||||
#define __NR_pipe 42 /* Common */
|
||||
#define __NR_times 43 /* Implemented via getrusage() in SunOS */
|
||||
/* #define __NR_getuid32 44 Linux sparc32 specific */
|
||||
#define __NR_umount2 45 /* Linux Specific */
|
||||
#define __NR_setgid 46 /* Implemented via setregid() in SunOS */
|
||||
#define __NR_getgid 47 /* Common */
|
||||
#define __NR_signal 48 /* Implemented via sigvec() in SunOS */
|
||||
#define __NR_geteuid 49 /* SunOS calls getuid() */
|
||||
#define __NR_getegid 50 /* SunOS calls getgid() */
|
||||
#define __NR_acct 51 /* Common */
|
||||
#define __NR_memory_ordering 52 /* Linux Specific */
|
||||
/* #define __NR_getgid32 53 Linux sparc32 specific */
|
||||
#define __NR_ioctl 54 /* Common */
|
||||
#define __NR_reboot 55 /* Common */
|
||||
/* #define __NR_mmap2 56 Linux sparc32 Specific */
|
||||
#define __NR_symlink 57 /* Common */
|
||||
#define __NR_readlink 58 /* Common */
|
||||
#define __NR_execve 59 /* Common */
|
||||
#define __NR_umask 60 /* Common */
|
||||
#define __NR_chroot 61 /* Common */
|
||||
#define __NR_fstat 62 /* Common */
|
||||
#define __NR_fstat64 63 /* Linux Specific */
|
||||
#define __NR_getpagesize 64 /* Common */
|
||||
#define __NR_msync 65 /* Common in newer 1.3.x revs... */
|
||||
#define __NR_vfork 66 /* Common */
|
||||
#define __NR_pread64 67 /* Linux Specific */
|
||||
#define __NR_pwrite64 68 /* Linux Specific */
|
||||
/* #define __NR_geteuid32 69 Linux sparc32, sbrk under SunOS */
|
||||
/* #define __NR_getegid32 70 Linux sparc32, sstk under SunOS */
|
||||
#define __NR_mmap 71 /* Common */
|
||||
/* #define __NR_setreuid32 72 Linux sparc32, vadvise under SunOS */
|
||||
#define __NR_munmap 73 /* Common */
|
||||
#define __NR_mprotect 74 /* Common */
|
||||
#define __NR_madvise 75 /* Common */
|
||||
#define __NR_vhangup 76 /* Common */
|
||||
/* #define __NR_truncate64 77 Linux sparc32 Specific */
|
||||
#define __NR_mincore 78 /* Common */
|
||||
#define __NR_getgroups 79 /* Common */
|
||||
#define __NR_setgroups 80 /* Common */
|
||||
#define __NR_getpgrp 81 /* Common */
|
||||
/* #define __NR_setgroups32 82 Linux sparc32, setpgrp under SunOS */
|
||||
#define __NR_setitimer 83 /* Common */
|
||||
/* #define __NR_ftruncate64 84 Linux sparc32 Specific */
|
||||
#define __NR_swapon 85 /* Common */
|
||||
#define __NR_getitimer 86 /* Common */
|
||||
/* #define __NR_setuid32 87 Linux sparc32, gethostname under SunOS */
|
||||
#define __NR_sethostname 88 /* Common */
|
||||
/* #define __NR_setgid32 89 Linux sparc32, getdtablesize under SunOS */
|
||||
#define __NR_dup2 90 /* Common */
|
||||
/* #define __NR_setfsuid32 91 Linux sparc32, getdopt under SunOS */
|
||||
#define __NR_fcntl 92 /* Common */
|
||||
#define __NR_select 93 /* Common */
|
||||
/* #define __NR_setfsgid32 94 Linux sparc32, setdopt under SunOS */
|
||||
#define __NR_fsync 95 /* Common */
|
||||
#define __NR_setpriority 96 /* Common */
|
||||
#define __NR_socket 97 /* Common */
|
||||
#define __NR_connect 98 /* Common */
|
||||
#define __NR_accept 99 /* Common */
|
||||
#define __NR_getpriority 100 /* Common */
|
||||
#define __NR_rt_sigreturn 101 /* Linux Specific */
|
||||
#define __NR_rt_sigaction 102 /* Linux Specific */
|
||||
#define __NR_rt_sigprocmask 103 /* Linux Specific */
|
||||
#define __NR_rt_sigpending 104 /* Linux Specific */
|
||||
#define __NR_rt_sigtimedwait 105 /* Linux Specific */
|
||||
#define __NR_rt_sigqueueinfo 106 /* Linux Specific */
|
||||
#define __NR_rt_sigsuspend 107 /* Linux Specific */
|
||||
#define __NR_setresuid 108 /* Linux Specific, sigvec under SunOS */
|
||||
#define __NR_getresuid 109 /* Linux Specific, sigblock under SunOS */
|
||||
#define __NR_setresgid 110 /* Linux Specific, sigsetmask under SunOS */
|
||||
#define __NR_getresgid 111 /* Linux Specific, sigpause under SunOS */
|
||||
/* #define __NR_setregid32 75 Linux sparc32, sigstack under SunOS */
|
||||
#define __NR_recvmsg 113 /* Common */
|
||||
#define __NR_sendmsg 114 /* Common */
|
||||
/* #define __NR_getgroups32 115 Linux sparc32, vtrace under SunOS */
|
||||
#define __NR_gettimeofday 116 /* Common */
|
||||
#define __NR_getrusage 117 /* Common */
|
||||
#define __NR_getsockopt 118 /* Common */
|
||||
#define __NR_getcwd 119 /* Linux Specific */
|
||||
#define __NR_readv 120 /* Common */
|
||||
#define __NR_writev 121 /* Common */
|
||||
#define __NR_settimeofday 122 /* Common */
|
||||
#define __NR_fchown 123 /* Common */
|
||||
#define __NR_fchmod 124 /* Common */
|
||||
#define __NR_recvfrom 125 /* Common */
|
||||
#define __NR_setreuid 126 /* Common */
|
||||
#define __NR_setregid 127 /* Common */
|
||||
#define __NR_rename 128 /* Common */
|
||||
#define __NR_truncate 129 /* Common */
|
||||
#define __NR_ftruncate 130 /* Common */
|
||||
#define __NR_flock 131 /* Common */
|
||||
#define __NR_lstat64 132 /* Linux Specific */
|
||||
#define __NR_sendto 133 /* Common */
|
||||
#define __NR_shutdown 134 /* Common */
|
||||
#define __NR_socketpair 135 /* Common */
|
||||
#define __NR_mkdir 136 /* Common */
|
||||
#define __NR_rmdir 137 /* Common */
|
||||
#define __NR_utimes 138 /* SunOS Specific */
|
||||
#define __NR_stat64 139 /* Linux Specific */
|
||||
#define __NR_sendfile64 140 /* adjtime under SunOS */
|
||||
#define __NR_getpeername 141 /* Common */
|
||||
#define __NR_futex 142 /* gethostid under SunOS */
|
||||
#define __NR_gettid 143 /* ENOSYS under SunOS */
|
||||
#define __NR_getrlimit 144 /* Common */
|
||||
#define __NR_setrlimit 145 /* Common */
|
||||
#define __NR_pivot_root 146 /* Linux Specific, killpg under SunOS */
|
||||
#define __NR_prctl 147 /* ENOSYS under SunOS */
|
||||
#define __NR_pciconfig_read 148 /* ENOSYS under SunOS */
|
||||
#define __NR_pciconfig_write 149 /* ENOSYS under SunOS */
|
||||
#define __NR_getsockname 150 /* Common */
|
||||
#define __NR_inotify_init 151 /* Linux specific */
|
||||
#define __NR_inotify_add_watch 152 /* Linux specific */
|
||||
#define __NR_poll 153 /* Common */
|
||||
#define __NR_getdents64 154 /* Linux specific */
|
||||
/* #define __NR_fcntl64 155 Linux sparc32 Specific */
|
||||
#define __NR_inotify_rm_watch 156 /* Linux specific */
|
||||
#define __NR_statfs 157 /* Common */
|
||||
#define __NR_fstatfs 158 /* Common */
|
||||
#define __NR_umount 159 /* Common */
|
||||
#define __NR_sched_set_affinity 160 /* Linux specific, async_daemon under SunOS */
|
||||
#define __NR_sched_get_affinity 161 /* Linux specific, getfh under SunOS */
|
||||
#define __NR_getdomainname 162 /* SunOS Specific */
|
||||
#define __NR_setdomainname 163 /* Common */
|
||||
#define __NR_utrap_install 164 /* SYSV ABI/v9 required */
|
||||
#define __NR_quotactl 165 /* Common */
|
||||
#define __NR_set_tid_address 166 /* Linux specific, exportfs under SunOS */
|
||||
#define __NR_mount 167 /* Common */
|
||||
#define __NR_ustat 168 /* Common */
|
||||
#define __NR_setxattr 169 /* SunOS: semsys */
|
||||
#define __NR_lsetxattr 170 /* SunOS: msgsys */
|
||||
#define __NR_fsetxattr 171 /* SunOS: shmsys */
|
||||
#define __NR_getxattr 172 /* SunOS: auditsys */
|
||||
#define __NR_lgetxattr 173 /* SunOS: rfssys */
|
||||
#define __NR_getdents 174 /* Common */
|
||||
#define __NR_setsid 175 /* Common */
|
||||
#define __NR_fchdir 176 /* Common */
|
||||
#define __NR_fgetxattr 177 /* SunOS: fchroot */
|
||||
#define __NR_listxattr 178 /* SunOS: vpixsys */
|
||||
#define __NR_llistxattr 179 /* SunOS: aioread */
|
||||
#define __NR_flistxattr 180 /* SunOS: aiowrite */
|
||||
#define __NR_removexattr 181 /* SunOS: aiowait */
|
||||
#define __NR_lremovexattr 182 /* SunOS: aiocancel */
|
||||
#define __NR_sigpending 183 /* Common */
|
||||
#define __NR_query_module 184 /* Linux Specific */
|
||||
#define __NR_setpgid 185 /* Common */
|
||||
#define __NR_fremovexattr 186 /* SunOS: pathconf */
|
||||
#define __NR_tkill 187 /* SunOS: fpathconf */
|
||||
#define __NR_exit_group 188 /* Linux specific, sysconf undef SunOS */
|
||||
#define __NR_uname 189 /* Linux Specific */
|
||||
#define __NR_init_module 190 /* Linux Specific */
|
||||
#define __NR_personality 191 /* Linux Specific */
|
||||
#define __NR_remap_file_pages 192 /* Linux Specific */
|
||||
#define __NR_epoll_create 193 /* Linux Specific */
|
||||
#define __NR_epoll_ctl 194 /* Linux Specific */
|
||||
#define __NR_epoll_wait 195 /* Linux Specific */
|
||||
#define __NR_ioprio_set 196 /* Linux Specific */
|
||||
#define __NR_getppid 197 /* Linux Specific */
|
||||
#define __NR_sigaction 198 /* Linux Specific */
|
||||
#define __NR_sgetmask 199 /* Linux Specific */
|
||||
#define __NR_ssetmask 200 /* Linux Specific */
|
||||
#define __NR_sigsuspend 201 /* Linux Specific */
|
||||
#define __NR_oldlstat 202 /* Linux Specific */
|
||||
#define __NR_uselib 203 /* Linux Specific */
|
||||
#define __NR_readdir 204 /* Linux Specific */
|
||||
#define __NR_readahead 205 /* Linux Specific */
|
||||
#define __NR_socketcall 206 /* Linux Specific */
|
||||
#define __NR_syslog 207 /* Linux Specific */
|
||||
#define __NR_lookup_dcookie 208 /* Linux Specific */
|
||||
#define __NR_fadvise64 209 /* Linux Specific */
|
||||
#define __NR_fadvise64_64 210 /* Linux Specific */
|
||||
#define __NR_tgkill 211 /* Linux Specific */
|
||||
#define __NR_waitpid 212 /* Linux Specific */
|
||||
#define __NR_swapoff 213 /* Linux Specific */
|
||||
#define __NR_sysinfo 214 /* Linux Specific */
|
||||
#define __NR_ipc 215 /* Linux Specific */
|
||||
#define __NR_sigreturn 216 /* Linux Specific */
|
||||
#define __NR_clone 217 /* Linux Specific */
|
||||
#define __NR_ioprio_get 218 /* Linux Specific */
|
||||
#define __NR_adjtimex 219 /* Linux Specific */
|
||||
#define __NR_sigprocmask 220 /* Linux Specific */
|
||||
#define __NR_create_module 221 /* Linux Specific */
|
||||
#define __NR_delete_module 222 /* Linux Specific */
|
||||
#define __NR_get_kernel_syms 223 /* Linux Specific */
|
||||
#define __NR_getpgid 224 /* Linux Specific */
|
||||
#define __NR_bdflush 225 /* Linux Specific */
|
||||
#define __NR_sysfs 226 /* Linux Specific */
|
||||
#define __NR_afs_syscall 227 /* Linux Specific */
|
||||
#define __NR_setfsuid 228 /* Linux Specific */
|
||||
#define __NR_setfsgid 229 /* Linux Specific */
|
||||
#define __NR__newselect 230 /* Linux Specific */
|
||||
#ifdef __KERNEL__
|
||||
#define __NR_time 231 /* Linux sparc32 */
|
||||
#endif
|
||||
#define __NR_splice 232 /* Linux Specific */
|
||||
#define __NR_stime 233 /* Linux Specific */
|
||||
#define __NR_statfs64 234 /* Linux Specific */
|
||||
#define __NR_fstatfs64 235 /* Linux Specific */
|
||||
#define __NR__llseek 236 /* Linux Specific */
|
||||
#define __NR_mlock 237
|
||||
#define __NR_munlock 238
|
||||
#define __NR_mlockall 239
|
||||
#define __NR_munlockall 240
|
||||
#define __NR_sched_setparam 241
|
||||
#define __NR_sched_getparam 242
|
||||
#define __NR_sched_setscheduler 243
|
||||
#define __NR_sched_getscheduler 244
|
||||
#define __NR_sched_yield 245
|
||||
#define __NR_sched_get_priority_max 246
|
||||
#define __NR_sched_get_priority_min 247
|
||||
#define __NR_sched_rr_get_interval 248
|
||||
#define __NR_nanosleep 249
|
||||
#define __NR_mremap 250
|
||||
#define __NR__sysctl 251
|
||||
#define __NR_getsid 252
|
||||
#define __NR_fdatasync 253
|
||||
#define __NR_nfsservctl 254
|
||||
#define __NR_sync_file_range 255
|
||||
#define __NR_clock_settime 256
|
||||
#define __NR_clock_gettime 257
|
||||
#define __NR_clock_getres 258
|
||||
#define __NR_clock_nanosleep 259
|
||||
#define __NR_sched_getaffinity 260
|
||||
#define __NR_sched_setaffinity 261
|
||||
#define __NR_timer_settime 262
|
||||
#define __NR_timer_gettime 263
|
||||
#define __NR_timer_getoverrun 264
|
||||
#define __NR_timer_delete 265
|
||||
#define __NR_timer_create 266
|
||||
/* #define __NR_vserver 267 Reserved for VSERVER */
|
||||
#define __NR_io_setup 268
|
||||
#define __NR_io_destroy 269
|
||||
#define __NR_io_submit 270
|
||||
#define __NR_io_cancel 271
|
||||
#define __NR_io_getevents 272
|
||||
#define __NR_mq_open 273
|
||||
#define __NR_mq_unlink 274
|
||||
#define __NR_mq_timedsend 275
|
||||
#define __NR_mq_timedreceive 276
|
||||
#define __NR_mq_notify 277
|
||||
#define __NR_mq_getsetattr 278
|
||||
#define __NR_waitid 279
|
||||
#define __NR_tee 280
|
||||
#define __NR_add_key 281
|
||||
#define __NR_request_key 282
|
||||
#define __NR_keyctl 283
|
||||
#define __NR_openat 284
|
||||
#define __NR_mkdirat 285
|
||||
#define __NR_mknodat 286
|
||||
#define __NR_fchownat 287
|
||||
#define __NR_futimesat 288
|
||||
#define __NR_fstatat64 289
|
||||
#define __NR_unlinkat 290
|
||||
#define __NR_renameat 291
|
||||
#define __NR_linkat 292
|
||||
#define __NR_symlinkat 293
|
||||
#define __NR_readlinkat 294
|
||||
#define __NR_fchmodat 295
|
||||
#define __NR_faccessat 296
|
||||
#define __NR_pselect6 297
|
||||
#define __NR_ppoll 298
|
||||
#define __NR_unshare 299
|
||||
#define __NR_set_robust_list 300
|
||||
#define __NR_get_robust_list 301
|
||||
#define __NR_migrate_pages 302
|
||||
#define __NR_mbind 303
|
||||
#define __NR_get_mempolicy 304
|
||||
#define __NR_set_mempolicy 305
|
||||
#define __NR_kexec_load 306
|
||||
#define __NR_move_pages 307
|
||||
#define __NR_getcpu 308
|
||||
#define __NR_epoll_pwait 309
|
||||
#define __NR_utimensat 310
|
||||
#define __NR_signalfd 311
|
||||
#define __NR_timerfd_create 312
|
||||
#define __NR_eventfd 313
|
||||
#define __NR_fallocate 314
|
||||
#define __NR_timerfd_settime 315
|
||||
#define __NR_timerfd_gettime 316
|
||||
#define __NR_signalfd4 317
|
||||
#define __NR_eventfd2 318
|
||||
#define __NR_epoll_create1 319
|
||||
#define __NR_dup3 320
|
||||
#define __NR_pipe2 321
|
||||
#define __NR_inotify_init1 322
|
||||
#define __NR_accept4 323
|
||||
|
||||
#define NR_SYSCALLS 324
|
||||
|
||||
#ifdef __KERNEL__
|
||||
#define __ARCH_WANT_IPC_PARSE_VERSION
|
||||
#define __ARCH_WANT_OLD_READDIR
|
||||
#define __ARCH_WANT_STAT64
|
||||
#define __ARCH_WANT_SYS_ALARM
|
||||
#define __ARCH_WANT_SYS_GETHOSTNAME
|
||||
#define __ARCH_WANT_SYS_PAUSE
|
||||
#define __ARCH_WANT_SYS_SGETMASK
|
||||
#define __ARCH_WANT_SYS_SIGNAL
|
||||
#define __ARCH_WANT_SYS_TIME
|
||||
#define __ARCH_WANT_COMPAT_SYS_TIME
|
||||
#define __ARCH_WANT_SYS_UTIME
|
||||
#define __ARCH_WANT_SYS_WAITPID
|
||||
#define __ARCH_WANT_SYS_SOCKETCALL
|
||||
#define __ARCH_WANT_SYS_FADVISE64
|
||||
#define __ARCH_WANT_SYS_GETPGRP
|
||||
#define __ARCH_WANT_SYS_LLSEEK
|
||||
#define __ARCH_WANT_SYS_NICE
|
||||
#define __ARCH_WANT_SYS_OLDUMOUNT
|
||||
#define __ARCH_WANT_SYS_SIGPENDING
|
||||
#define __ARCH_WANT_SYS_SIGPROCMASK
|
||||
#define __ARCH_WANT_SYS_RT_SIGSUSPEND
|
||||
#define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND
|
||||
|
||||
/*
|
||||
* "Conditional" syscalls
|
||||
*
|
||||
* What we want is __attribute__((weak,alias("sys_ni_syscall"))),
|
||||
* but it doesn't work on all toolchains, so we just do it by hand
|
||||
*/
|
||||
#define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall")
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _SPARC64_UNISTD_H */
|
||||
Reference in New Issue
Block a user