From: Stafford Horne <shorne@gmail.com>
To: Rob Landley <rob@landley.net>
Cc: "Arnd Bergmann" <arnd@arndb.de>,
"Naresh Kamboju" <naresh.kamboju@linaro.org>,
"Linux-Next Mailing List" <linux-next@vger.kernel.org>,
"open list" <linux-kernel@vger.kernel.org>,
"Linux-sh list" <linux-sh@vger.kernel.org>,
"Stephen Rothwell" <sfr@canb.auug.org.au>,
"Peter Zijlstra" <peterz@infradead.org>,
"Ingo Molnar" <mingo@redhat.com>, "Will Deacon" <will@kernel.org>,
"Waiman Long" <longman@redhat.com>,
"Boqun Feng" <boqun.feng@gmail.com>,
"Minchan Kim" <minchan@kernel.org>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Mike Galbraith" <umgwanakikbuti@gmail.com>,
"Sebastian Andrzej Siewior" <bigeasy@linutronix.de>,
"Sergey Senozhatsky" <senozhatsky@chromium.org>,
"Yoshinori Sato" <ysato@users.sourceforge.jp>,
"Rich Felker" <dalias@libc.org>,
lkft-triage@lists.linaro.org,
"André Almeida" <andrealmeid@collabora.com>
Subject: Re: spinlock.c:306:9: error: implicit declaration of function '__raw_write_lock_nested'
Date: Sat, 27 Nov 2021 08:51:41 +0900 [thread overview]
Message-ID: <YaFzDW+n0n7qQ7hm@antec> (raw)
In-Reply-To: <eef6670c-1fb7-2d01-72ed-258d49227de1@landley.net>
On Thu, Nov 25, 2021 at 06:10:54AM -0600, Rob Landley wrote:
> On 11/25/21 1:25 AM, Arnd Bergmann wrote:
...
> >
> > The best reference I could find is:
> >
> > https://lore.kernel.org/linux-api/20190604160944.4058-2-christian@brauner.io/
>
> Does not say what the special handling is. Does not provide an example of said
> special handling. Implied that only three do NOT need special handling, two of
> which are x86 and arm, which seems... convenient.
>
> Right, let's see what "grep -r clone arch/" says:
>
> m68k/kernel/process.c is obviously overriding
> arc/include/syscalls.h has sys_clone_wrapper()
> nios2/kernel/process.c has nios2_clone()
> openrisc/kernel/entry.S has __sys_clone()
> sparc/kernel/process.c has sparce_clone()
> h8300/kernel/process.c has its own sys_clone()
> ia64/kernel/process.c has ia64_clone()
> user mode linux is just weird.
>
> So the architectures that wrap clone are m68k, arc, nios2, openrisc, sparc,
> h8300, and ia64.
This got me reading/refreshing my memory, we have a wrapper for clone in
openrisc, but not clone3. The wrapper ensures we save registers which get
clobbered by switch hence we need it for clone/fork.
It looks like clone3 missing this wrapper may be an issue. Though, I have been
running the whole glibc test suite on this without seeing any issues.
I will patch this anyway.
> Implying that the ones that DON'T are alpha, arm64, hexagon, nds32, parisc,
> s390, csky, microblaze, powerpc, sh, x86, arm, mips, riscv, and xtensa.
>
> Which would mean 2/3 of architectures don't wrap clone, and thus arch/sh not
> doing so isn't unusual.
>
> > If fork() and clone() don't need special handling on arch/sh, then
> > clone3 shouldn't
> > need it either, unless the existing ones are also wrong. It looks like
> > some architectures
> > override these to avoid leaking register state from the kernel to the
> > child process.
I would agree with this.
-Stafford
prev parent reply other threads:[~2021-11-26 23:53 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-23 11:38 spinlock.c:306:9: error: implicit declaration of function '__raw_write_lock_nested' Naresh Kamboju
2021-11-23 13:19 ` Arnd Bergmann
2021-11-23 14:48 ` Geert Uytterhoeven
2021-11-23 14:50 ` Sebastian Andrzej Siewior
2021-11-23 16:07 ` [PATCH] locking: Fixup write_lock_nested() implementation Sebastian Andrzej Siewior
2021-11-23 17:01 ` [PATCH v2] " Sebastian Andrzej Siewior
2021-11-23 22:52 ` Stephen Rothwell
2021-11-24 10:01 ` spinlock.c:306:9: error: implicit declaration of function '__raw_write_lock_nested' Rob Landley
2021-11-24 10:43 ` Arnd Bergmann
2021-11-24 7:31 ` Rob Landley
2021-11-24 7:49 ` Arnd Bergmann
2021-11-24 13:15 ` André Almeida
2021-11-24 14:21 ` Arnd Bergmann
2021-11-24 13:21 ` [PATCH 1/1] futex: Wireup futex_waitv syscall André Almeida
2021-11-24 13:21 ` André Almeida
2021-11-24 13:21 ` André Almeida
2021-11-24 13:21 ` André Almeida
2021-11-24 13:49 ` Geert Uytterhoeven
2021-11-24 13:49 ` Geert Uytterhoeven
2021-11-24 13:49 ` Geert Uytterhoeven
2021-11-24 13:49 ` Geert Uytterhoeven
2021-11-24 14:29 ` Arnd Bergmann
2021-11-24 14:29 ` Arnd Bergmann
2021-11-24 14:29 ` Arnd Bergmann
2021-11-24 14:29 ` Arnd Bergmann
2021-11-24 15:56 ` André Almeida
2021-11-24 15:56 ` André Almeida
2021-11-24 15:56 ` André Almeida
2021-11-24 15:56 ` André Almeida
2021-11-24 23:18 ` Thomas Gleixner
2021-11-24 23:18 ` Thomas Gleixner
2021-11-24 23:18 ` Thomas Gleixner
2021-11-24 23:18 ` Thomas Gleixner
2021-11-24 17:23 ` Max Filippov
2021-11-24 17:23 ` Max Filippov
2021-11-24 17:23 ` Max Filippov
2021-11-24 17:23 ` Max Filippov
2021-11-24 23:07 ` Michael Ellerman
2021-11-24 23:07 ` Michael Ellerman
2021-11-24 23:07 ` Michael Ellerman
2021-11-24 23:07 ` Michael Ellerman
2021-11-24 23:38 ` spinlock.c:306:9: error: implicit declaration of function '__raw_write_lock_nested' Rob Landley
2021-11-25 7:25 ` Arnd Bergmann
2021-11-25 12:10 ` Rob Landley
2021-11-26 23:51 ` Stafford Horne [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YaFzDW+n0n7qQ7hm@antec \
--to=shorne@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=andrealmeid@collabora.com \
--cc=arnd@arndb.de \
--cc=bigeasy@linutronix.de \
--cc=boqun.feng@gmail.com \
--cc=dalias@libc.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=lkft-triage@lists.linaro.org \
--cc=longman@redhat.com \
--cc=minchan@kernel.org \
--cc=mingo@redhat.com \
--cc=naresh.kamboju@linaro.org \
--cc=peterz@infradead.org \
--cc=rob@landley.net \
--cc=senozhatsky@chromium.org \
--cc=sfr@canb.auug.org.au \
--cc=umgwanakikbuti@gmail.com \
--cc=will@kernel.org \
--cc=ysato@users.sourceforge.jp \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.