0001
0002
0003
0004 #include <linux/syscalls.h>
0005
0006 SYSCALL_DEFINE1(set_thread_area, unsigned long, addr)
0007 {
0008 struct thread_info *ti = task_thread_info(current);
0009 struct pt_regs *reg = current_pt_regs();
0010
0011 reg->tls = addr;
0012 ti->tp_value = addr;
0013
0014 return 0;
0015 }
0016
0017 SYSCALL_DEFINE6(mmap2,
0018 unsigned long, addr,
0019 unsigned long, len,
0020 unsigned long, prot,
0021 unsigned long, flags,
0022 unsigned long, fd,
0023 off_t, offset)
0024 {
0025 if (unlikely(offset & (~PAGE_MASK >> 12)))
0026 return -EINVAL;
0027
0028 return ksys_mmap_pgoff(addr, len, prot, flags, fd,
0029 offset >> (PAGE_SHIFT - 12));
0030 }
0031
0032
0033
0034
0035
0036 SYSCALL_DEFINE4(csky_fadvise64_64,
0037 int, fd,
0038 int, advice,
0039 loff_t, offset,
0040 loff_t, len)
0041 {
0042 return ksys_fadvise64_64(fd, offset, len, advice);
0043 }