copy_siginfo_to_external32(9)
π copy_siginfo_to_external32 π
okay so bestie, welcome to the Kernel API Manual page for copy_siginfo_to_external32(9) β yes the (9) means it's a kernel-internals kinda situation, we're deep in the kernel section of the manual, buckle up π
β¨ NAME β¨
copy_siginfo_to_external32 β literally just copying a kernel siginfo into a compat user siginfo. that's the whole vibe. it's giving translation layer π«
πΈ SYNOPSIS πΈ
void copy_siginfo_to_external32 (struct compat_siginfo *to , const
struct kernel_siginfo *from );
no cap, that's the signature β note the return type is void, so it's not even gonna tell you how it went, it just does the thing π«Ά
π¦ ARGUMENTS π¦
toβ the compat siginfo destination π this is where the info is going, the glow-up location, the main character of the copyfromβ the kernel siginfo source π this is where the info is coming from, the original, the blueprint
so yeah, from β‘οΈ to, simple as that, slay π
β οΈ NOTE β οΈ
okay this is important, listen up π§:
this function does not work properly for the SIGCHLD on x32 β but fortunately, it doesn't have to πβ¨
the only valid callers for this function are copy_siginfo_to_user32, which is overriden for x32, and the coredump code. the latter does not care, because SIGCHLD will never cause a coredump π so like, the broken part is safely unreachable, periodt π₯
fr fr though β "doesn't work properly" is a real caveat, don't go inventing new callers and expecting magic to happen π
π SEE ALSO π
the kernel file ./kernel/signal.c (iykyk, that's where the lore lives) plus this whole friend group of functions:
task_set_jobctl_pending(9)task_clear_jobctl_trapping(9)task_clear_jobctl_pending(9)task_participate_group_stop(9)ptrace_trap_notify(9)force_sig_seccomp(9)do_notify_parent_cldstop(9)do_signal_stop(9)do_jobctl_trap(9)do_freezer_trap(9)signal_delivered(9)sys_restart_syscall(9)set_current_blocked(9)sys_rt_sigprocmask(9)sys_rt_sigpending(9)do_sigtimedwait(9)sys_rt_sigtimedwait(9)sys_kill(9)sys_pidfd_send_signal(9)sys_tgkill(9)sys_tkill(9)sys_rt_sigqueueinfo(9)sys_sigpending(9)sys_sigprocmask(9)sys_rt_sigaction(9)sys_rt_sigsuspend(9)
that's 26 entries bestie, we listed every single one, no skipping the boring parts in this house π π
and that's the page!! this one's from ./kernel, dated October 2026, and it's literally titled copy_siginfo_to_external32(9) β k bye, go read signal.c ily π«Άβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms