Re: [PATCH 09/19] LoongArch: Add system call support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, Arnd,

On Tue, Jul 6, 2021 at 6:17 PM Arnd Bergmann <arnd@xxxxxxxx> wrote:
>
> On Tue, Jul 6, 2021 at 6:18 AM Huacai Chen <chenhuacai@xxxxxxxxxxx> wrote:
>
> > diff --git a/arch/loongarch/include/asm/seccomp.h b/arch/loongarch/include/asm/seccomp.h
> > new file mode 100644
> > index 000000000000..220c885f5478
> > --- /dev/null
> > +++ b/arch/loongarch/include/asm/seccomp.h
> > @@ -0,0 +1,9 @@
> > +/* SPDX-License-Identifier: GPL-2.0 */
> > +#ifndef __ASM_SECCOMP_H
> > +#define __ASM_SECCOMP_H
> > +
> > +#include <linux/unistd.h>
> > +
> > +#include <asm-generic/seccomp.h>
> > +
> > +#endif /* __ASM_SECCOMP_H */
>
> I would expect this file to not be needed.
>
> > diff --git a/arch/loongarch/include/asm/uaccess.h b/arch/loongarch/include/asm/uaccess.h
> > new file mode 100644
> > index 000000000000..b760aa0a3bc6
> > --- /dev/null
> > +++ b/arch/loongarch/include/asm/uaccess.h
> > @@ -0,0 +1,453 @@
> > + * The fs value determines whether argument validity checking should be
> > + * performed or not.  If get_fs() == USER_DS, checking is performed, with
> > + * get_fs() == KERNEL_DS, checking is bypassed.
> > + *
> > + * For historical reasons, these macros are grossly misnamed.
> > + */
>
> You removed set_fs()/get_fs(), which is good, but you forgot to remove
> the comment.
OK, thanks.

>
> > diff --git a/arch/loongarch/include/uapi/asm/unistd.h b/arch/loongarch/include/uapi/asm/unistd.h
> > new file mode 100644
> > index 000000000000..6c194d740ed0
> > --- /dev/null
> > +++ b/arch/loongarch/include/uapi/asm/unistd.h
> > @@ -0,0 +1,7 @@
> > +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
> > +#define __ARCH_WANT_NEW_STAT
>
> Why do you need newstat? I think now that we have statx and the libc
> emulation code on top of it, there is probably no need to support both
> on the kernel side.
>
> > +#define __ARCH_WANT_SYS_CLONE
> > +#define __ARCH_WANT_SYS_CLONE3
>
> Similarly, if you have clone3, you should not need clone.
>
> > +#define __ARCH_WANT_SET_GET_RLIMIT
>
> And here for prlimit64
Is newstat()/clone()/setrlimit() completely unacceptable in a new
arch? If not, I want to keep it here for compatibility, because there
are some existing distros.

>
>
> > +void *sys_call_table[__NR_syscalls] = {
> > +       [0 ... __NR_syscalls - 1] = sys_ni_syscall,
> > +#include <asm/unistd.h>
> > +       __SYSCALL(__NR_clone, __sys_clone)
> > +       __SYSCALL(__NR_clone3, __sys_clone3)
> > +};
>
> I would suggest expressing this as
>
> #defined sys_clone3 __sys_clone3
>
> instead of overriding the other entries.
OK, thanks.

Huacai
>
>           Arnd



[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux