Re: [PATCH v4 16/36] nds32: System calls handling
From: Arnd Bergmann <hidden>
Date: 2017-12-18 11:19:51
Also in:
linux-arch, linux-devicetree, linux-serial, lkml
On Mon, Dec 18, 2017 at 7:46 AM, Greentime Hu [off-list ref] wrote:
quoted hunk ↗ jump to hunk
new file mode 100644 index 0000000..90da745--- /dev/null +++ b/arch/nds32/include/uapi/asm/unistd.h@@ -0,0 +1,12 @@ +// SPDX-License-Identifier: GPL-2.0 +// Copyright (C) 2005-2017 Andes Technology Corporation + +#define __ARCH_WANT_SYNC_FILE_RANGE2 + +/* Use the standard ABI for syscalls */ +#include <asm-generic/unistd.h> + +/* Additional NDS32 specific syscalls. */ +#define __NR_cacheflush (__NR_arch_specific_syscall) +#define __NR__llseek __NR_llseek +__SYSCALL(__NR_cacheflush, sys_cacheflush)
I'm still confused by __NR__llseek here, why do you need that one?
+SYSCALL_DEFINE6(mmap2, unsigned long, addr, unsigned long, len,
+ unsigned long, prot, unsigned long, flags,
+ unsigned long, fd, unsigned long, pgoff)
+{
+ if (pgoff & (~PAGE_MASK >> 12))
+ return -EINVAL;
+
+ return sys_mmap_pgoff(addr, len, prot, flags, fd,
+ pgoff >> (PAGE_SHIFT - 12));
+}
+
+SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,
+ unsigned long, prot, unsigned long, flags,
+ unsigned long, fd, unsigned long, pgoff)
+{
+ if (unlikely(pgoff & ~PAGE_MASK))
+ return -EINVAL;
+
+ return sys_mmap_pgoff(addr, len, prot, flags, fd,
+ pgoff >> PAGE_SHIFT);
+}
And I don't see why you define sys_mmap() in addition to sys_mmap2().
The rest of the syscall handling looks good now.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html