Page MenuHomeFreeBSD

D30508.diff
No OneTemporary

D30508.diff

diff --git a/sys/arm64/linux/linux_machdep.c b/sys/arm64/linux/linux_machdep.c
--- a/sys/arm64/linux/linux_machdep.c
+++ b/sys/arm64/linux/linux_machdep.c
@@ -55,7 +55,6 @@
LIN_SDT_PROBE_DEFINE0(machdep, linux_mmap2, todo);
LIN_SDT_PROBE_DEFINE0(machdep, linux_rt_sigsuspend, todo);
LIN_SDT_PROBE_DEFINE0(machdep, linux_sigaltstack, todo);
-LIN_SDT_PROBE_DEFINE0(machdep, linux_set_cloned_tls, todo);
/*
* LINUXTODO: deduplicate; linux_execve is common across archs, except that on
@@ -141,11 +140,12 @@
return (EDOOFUS);
}
-/* LINUXTODO: implement arm64 linux_set_cloned_tls */
int
linux_set_cloned_tls(struct thread *td, void *desc)
{
- LIN_SDT_PROBE0(machdep, linux_set_cloned_tls, todo);
- return (EDOOFUS);
+ if ((uint64_t)desc >= VM_MAXUSER_ADDRESS)
+ return (EPERM);
+
+ return (cpu_set_user_tls(td, desc));
}

File Metadata

Mime Type
text/plain
Expires
Mon, Feb 10, 8:13 PM (8 h, 10 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16574059
Default Alt Text
D30508.diff (838 B)

Event Timeline