linux/arch/sh
Simon Schuster e0d6fb7923 arch: copy_thread: pass clone_flags as u64
[ Upstream commit bbc46b23af ]

With the introduction of clone3 in commit 7f192e3cd3 ("fork: add
clone3") the effective bit width of clone_flags on all architectures was
increased from 32-bit to 64-bit, with a new type of u64 for the flags.
However, for most consumers of clone_flags the interface was not
changed from the previous type of unsigned long.

While this works fine as long as none of the new 64-bit flag bits
(CLONE_CLEAR_SIGHAND and CLONE_INTO_CGROUP) are evaluated, this is still
undesirable in terms of the principle of least surprise.

Thus, this commit fixes all relevant interfaces of the copy_thread
function that is called from copy_process to consistently pass
clone_flags as u64, so that no truncation to 32-bit integers occurs on
32-bit architectures.

Signed-off-by: Simon Schuster <schuster.simon@siemens-energy.com>
Link: https://lore.kernel.org/20250901-nios2-implement-clone3-v2-3-53fcf5577d57@siemens-energy.com
Fixes: c5febea095 ("fork: Pass struct kernel_clone_args into copy_thread")
Acked-by: Guo Ren (Alibaba Damo Academy) <guoren@kernel.org>
Acked-by: Andreas Larsson <andreas@gaisler.com> # sparc
Acked-by: David Hildenbrand <david@redhat.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org> # m68k
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2025-10-15 12:03:13 +02:00
..
boards sh updates for v6.16 2025-06-07 10:00:03 -07:00
boot sh: Do not use hyphen in exported variable name 2025-07-26 17:15:41 +02:00
cchips sh: hd64461: Make setup_hd64461() static 2024-03-21 12:17:35 +01:00
configs netfilter: conntrack: remove DCCP protocol support 2025-07-03 13:51:39 +02:00
drivers treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
include mm: pgtable: fix pte_swp_exclusive 2025-06-11 14:52:08 -07:00
kernel arch: copy_thread: pass clone_flags as u64 2025-10-15 12:03:13 +02:00
lib sh: remove duplicate ioread/iowrite helpers 2025-03-11 10:41:18 +01:00
math-emu sh: math-emu: Add missing #include <asm/fpu.h> 2024-05-02 12:01:24 +02:00
mm arch, mm: make releasing of memory to page allocator more explicit 2025-03-17 22:06:53 -07:00
tools sh: Remove SH5-based Cayman platform 2020-08-14 22:05:06 -04:00
Kbuild sh: Migrate to the generic rule for built-in DTB 2025-02-01 10:43:18 +01:00
Kconfig tracing: Remove redundant config HAVE_FTRACE_MCOUNT_RECORD 2025-07-22 20:15:56 -04:00
Kconfig.cpu docs: move superh documentation under Documentation/arch/ 2023-03-30 13:00:35 -06:00
Kconfig.debug sh: bios: Revive earlyprintk support 2023-10-25 16:50:30 +02:00
Makefile sh: Do not use hyphen in exported variable name 2025-07-26 17:15:41 +02:00