lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAAhV-H67o+6zkw4pvDb46c=b4UNtKesog08yGf_hhhXAbLoZGA@mail.gmail.com>
Date:   Tue, 22 Mar 2022 10:56:32 +0800
From:   Huacai Chen <chenhuacai@...nel.org>
To:     Arnd Bergmann <arnd@...db.de>
Cc:     Andy Lutomirski <luto@...nel.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Peter Zijlstra <peterz@...radead.org>,
        Andrew Morton <akpm@...ux-foundation.org>,
        David Airlie <airlied@...ux.ie>,
        Jonathan Corbet <corbet@....net>,
        Linus Torvalds <torvalds@...ux-foundation.org>,
        linux-arch <linux-arch@...r.kernel.org>,
        "open list:DOCUMENTATION" <linux-doc@...r.kernel.org>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
        Xuefeng Li <lixuefeng@...ngson.cn>,
        Yanteng Si <siyanteng@...ngson.cn>,
        Jiaxun Yang <jiaxun.yang@...goat.com>,
        Huacai Chen <chenhuacai@...ngson.cn>,
        "H.J. Lu" <hjl.tools@...il.com>,
        Christian Brauner <brauner@...nel.org>
Subject: Re: [PATCH V8 13/22] LoongArch: Add system call support

Hi, Arnd,

On Mon, Mar 21, 2022 at 5:48 PM Arnd Bergmann <arnd@...db.de> wrote:
>
> On Mon, Mar 21, 2022 at 10:41 AM Huacai Chen <chenhuacai@...nel.org> wrote:
> > On Mon, Mar 21, 2022 at 5:01 PM Arnd Bergmann <arnd@...db.de> wrote:
> > >
> > > On Sat, Mar 19, 2022 at 3:38 PM Huacai Chen <chenhuacai@...nel.org> wrote:
> > > >
> > > > This patch adds system call support and related uaccess.h for LoongArch.
> > > >
> > > > Q: Why keep __ARCH_WANT_NEW_STAT definition while there is statx:
> > > > A: Until the latest glibc release (2.34), statx is only used for 32-bit
> > > >    platforms, or 64-bit platforms with 32-bit timestamp. I.e., Most 64-
> > > >    bit platforms still use newstat now.
> > > >
> > > > Q: Why keep _ARCH_WANT_SYS_CLONE definition while there is clone3:
> > > > A: The latest glibc release (2.34) has some basic support for clone3 but
> > > >    it isn't complete. E.g., pthread_create() and spawni() have converted
> > > >    to use clone3 but fork() will still use clone. Moreover, some seccomp
> > > >    related applications can still not work perfectly with clone3.
> > >
> > > Please leave those out of the mainline kernel support though: Any users
> > > of existing glibc binaries can keep using patched kernels for the moment,
> > > and then later drop those pages when the proper glibc support gets
> > > merged.
> > The glibc commit d8ea0d0168b190bdf138a20358293c939509367f ("Add an
> > internal wrapper for clone, clone2 and clone3") modified nearly
> > everything in order to move to clone3(), except arch_fork() which used
> > by fork(). And I cannot find any submitted patches to solve it. So I
> > don't think this is just a forget, maybe there are other fundamental
> > problems?
>
> I don't think there are fundamental issues, they probably did not consider
> it necessary because so far all architectures supported clone().
>
> Adding Christian Brauner and H.J. Lu for clarificatoin.
OK, wait a response, if arch_fork() will be moved to clone3(), then I
will remove __ARCH_WANT_SYS_CLONE.

Huacai
>
> > > > +#define __get_user(x, ptr) \
> > > > +({                                                                     \
> > > > +       int __gu_err = 0;                                               \
> > > > +                                                                       \
> > > > +       __chk_user_ptr(ptr);                                            \
> > > > +       __get_user_common((x), sizeof(*(ptr)), ptr);                    \
> > > > +       __gu_err;                                                       \
> > > > +})
> > >
> > > It would be good to also provide a
> > > __kernel_kernel_nofault()/__put_kernel_nofault()
> > > implementation, as the default based on __get_user()/__put_user is not
> > > ideal.
> > They are provided in this file below.
>
> Ok, I see them now, not sure what I did wrong when I looked earlier.
>
>         Arnd

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ