Your message dated Mon, 14 Jun 2021 20:53:39 +0200
with message-id <[email protected]>
and subject line Re: Bug#989825: unblock: user-mode-linux/5.10um3
has caused the Debian Bug report #989825,
regarding unblock: user-mode-linux/5.10um3
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
989825: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=989825
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: [email protected]
Usertags: unblock
Please unblock package user-mode-linux
Dear Release Team,
This is a request to unblock the package. The latest upload fixes bug
989665.
[ Reason ]
Bug 989665 occurred, as expected, because of the resolution put in bug
983379. Since it wasn't clear back then, if and whether the fix would be
a Linux Stable material, we carried a patch in User Mode Linux in the
interim.
Now that the fix made into Linux Stable series, the fix for 989665 is to
drop that patch.
[ Impact ]
Package user-mode-linux in Bullseye will not be in a buildable state
without this fix.
[ Tests ]
The fix allows the package to build again. Right now, for Unstable, it
has built proper for both the supported architectures (i386 and amd64)
[ Risks ]
None to my knowledge
[ Checklist ]
[x] all changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in testing
unblock user-mode-linux/5.10um3
diff -Nru user-mode-linux-5.10um2/config.amd64
user-mode-linux-5.10um3/config.amd64
--- user-mode-linux-5.10um2/config.amd64 2021-03-07 10:01:29.000000000
+0530
+++ user-mode-linux-5.10um3/config.amd64 2021-06-11 11:43:23.000000000
+0530
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/um 5.10.19 Kernel Configuration
+# Linux/um 5.10.40 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (Debian 10.2.1-6) 10.2.1 20210110"
CONFIG_CC_IS_GCC=y
@@ -1771,6 +1771,7 @@
# CONFIG_AUXDISPLAY is not set
CONFIG_UIO=m
CONFIG_UIO_PDRV_GENIRQ=m
+# CONFIG_VFIO is not set
# CONFIG_VIRT_DRIVERS is not set
CONFIG_VIRTIO=y
CONFIG_VIRTIO_MENU=y
@@ -1915,7 +1916,6 @@
# CONFIG_AD7091R5 is not set
# CONFIG_AD7291 is not set
# CONFIG_AD799X is not set
-# CONFIG_ADI_AXI_ADC is not set
# CONFIG_INA2XX_ADC is not set
# CONFIG_LTC2471 is not set
# CONFIG_LTC2485 is not set
@@ -3095,7 +3095,6 @@
# um Debugging
#
# CONFIG_GPROF is not set
-# CONFIG_GCOV is not set
CONFIG_EARLY_PRINTK=y
# end of um Debugging
diff -Nru user-mode-linux-5.10um2/config.i386
user-mode-linux-5.10um3/config.i386
--- user-mode-linux-5.10um2/config.i386 2021-03-07 10:01:29.000000000 +0530
+++ user-mode-linux-5.10um3/config.i386 2021-06-11 11:43:23.000000000 +0530
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/um 5.10.19 Kernel Configuration
+# Linux/um 5.10.40 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (Debian 10.2.1-6) 10.2.1 20210110"
CONFIG_CC_IS_GCC=y
@@ -8,6 +8,8 @@
CONFIG_LD_VERSION=235020000
CONFIG_CLANG_VERSION=0
CONFIG_LLD_VERSION=0
+CONFIG_CC_CAN_LINK=y
+CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_CC_HAS_ASM_GOTO=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_IRQ_WORK=y
@@ -162,6 +164,7 @@
# CONFIG_KALLSYMS_ALL is not set
CONFIG_KALLSYMS_BASE_RELATIVE=y
CONFIG_BPF_SYSCALL=y
+CONFIG_USERMODE_DRIVER=y
# CONFIG_BPF_PRELOAD is not set
CONFIG_USERFAULTFD=y
# CONFIG_EMBEDDED is not set
@@ -244,7 +247,7 @@
CONFIG_UML_X86=y
# CONFIG_64BIT is not set
CONFIG_X86_32=y
-# CONFIG_3_LEVEL_PGTABLES is not set
+CONFIG_3_LEVEL_PGTABLES=y
CONFIG_ARCH_HAS_SC_SIGNALS=y
CONFIG_ARCH_REUSE_HOST_VSYSCALL_AREA=y
CONFIG_GENERIC_HWEIGHT=y
@@ -255,7 +258,7 @@
CONFIG_MAGIC_SYSRQ=y
CONFIG_KERNEL_STACK_ORDER=2
CONFIG_MMAPPER=y
-CONFIG_PGTABLE_LEVELS=2
+CONFIG_PGTABLE_LEVELS=3
# end of UML-specific options
#
@@ -310,7 +313,7 @@
CONFIG_CLONE_BACKWARDS=y
CONFIG_OLD_SIGSUSPEND3=y
CONFIG_OLD_SIGACTION=y
-CONFIG_COMPAT_32BIT_TIME=y
+# CONFIG_COMPAT_32BIT_TIME is not set
CONFIG_ARCH_NO_PREEMPT=y
#
@@ -915,7 +918,8 @@
CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
CONFIG_BRIDGE_EBT_NFLOG=m
-# CONFIG_BPFILTER is not set
+CONFIG_BPFILTER=y
+CONFIG_BPFILTER_UMH=m
CONFIG_IP_DCCP=m
CONFIG_INET_DCCP_DIAG=m
@@ -1795,6 +1799,7 @@
# CONFIG_AUXDISPLAY is not set
CONFIG_UIO=m
CONFIG_UIO_PDRV_GENIRQ=m
+# CONFIG_VFIO is not set
# CONFIG_VIRT_DRIVERS is not set
CONFIG_VIRTIO=y
CONFIG_VIRTIO_MENU=y
@@ -1939,7 +1944,6 @@
# CONFIG_AD7091R5 is not set
# CONFIG_AD7291 is not set
# CONFIG_AD799X is not set
-# CONFIG_ADI_AXI_ADC is not set
# CONFIG_INA2XX_ADC is not set
# CONFIG_LTC2471 is not set
# CONFIG_LTC2485 is not set
@@ -3115,7 +3119,6 @@
# um Debugging
#
# CONFIG_GPROF is not set
-# CONFIG_GCOV is not set
CONFIG_EARLY_PRINTK=y
# end of um Debugging
diff -Nru user-mode-linux-5.10um2/debian/changelog
user-mode-linux-5.10um3/debian/changelog
--- user-mode-linux-5.10um2/debian/changelog 2021-03-07 10:01:29.000000000
+0530
+++ user-mode-linux-5.10um3/debian/changelog 2021-06-11 11:43:23.000000000
+0530
@@ -1,3 +1,11 @@
+user-mode-linux (5.10um3) unstable; urgency=medium
+
+ * [95d05ef] Drop patch um_mark_all_kernel_symbols_as_local.patch
+ (Closes: #989665)
+ * [bf8d469] Update UML Linux configs
+
+ -- Ritesh Raj Sarraf <[email protected]> Fri, 11 Jun 2021 11:43:23 +0530
+
user-mode-linux (5.10um2) unstable; urgency=medium
[ Christopher Obbard ]
diff -Nru user-mode-linux-5.10um2/debian/patches/series
user-mode-linux-5.10um3/debian/patches/series
--- user-mode-linux-5.10um2/debian/patches/series 2021-03-07
10:01:29.000000000 +0530
+++ user-mode-linux-5.10um3/debian/patches/series 2021-06-11
11:43:23.000000000 +0530
@@ -4,4 +4,3 @@
06-fix-linkage-on-386-arch.patch
07-remove-rpath.patch
08-fix-pcap-linkage.patch
-um_mark_all_kernel_symbols_as_local.patch
diff -Nru
user-mode-linux-5.10um2/debian/patches/um_mark_all_kernel_symbols_as_local.patch
user-mode-linux-5.10um3/debian/patches/um_mark_all_kernel_symbols_as_local.patch
---
user-mode-linux-5.10um2/debian/patches/um_mark_all_kernel_symbols_as_local.patch
2021-03-07 10:01:29.000000000 +0530
+++
user-mode-linux-5.10um3/debian/patches/um_mark_all_kernel_symbols_as_local.patch
1970-01-01 05:30:00.000000000 +0530
@@ -1,103 +0,0 @@
-From: Johannes Berg <[email protected]>
-To: [email protected]
-Cc: Ritesh Raj Sarraf <[email protected]>,
- Anton Ivanov <[email protected]>,
- [email protected],
- Christopher Obbard <[email protected]>,
- Johannes Berg <[email protected]>
-Subject: [PATCH] um: mark all kernel symbols as local
-Date: Fri, 5 Mar 2021 21:43:15 +0100
-
-From: Johannes Berg <[email protected]>
-
-Ritesh reported a bug [1] against UML, noting that it crashed on
-startup. The backtrace shows the following (heavily redacted):
-
-(gdb) bt
-...
- #26 0x0000000060015b5d in sem_init () at ipc/sem.c:268
- #27 0x00007f89906d92f7 in ?? () from /lib/x86_64-linux-gnu/libcom_err.so.2
- #28 0x00007f8990ab8fb2 in call_init (...) at dl-init.c:72
-...
- #40 0x00007f89909bf3a6 in nss_load_library (...) at nsswitch.c:359
-...
- #44 0x00007f8990895e35 in _nss_compat_getgrnam_r (...) at
nss_compat/compat-grp.c:486
- #45 0x00007f8990968b85 in __getgrnam_r [...]
- #46 0x00007f89909d6b77 in grantpt [...]
- #47 0x00007f8990a9394e in __GI_openpty [...]
- #48 0x00000000604a1f65 in openpty_cb (...) at arch/um/os-Linux/sigio.c:407
- #49 0x00000000604a58d0 in start_idle_thread (...) at
arch/um/os-Linux/skas/process.c:598
- #50 0x0000000060004a3d in start_uml () at arch/um/kernel/skas/process.c:45
- #51 0x00000000600047b2 in linux_main (...) at arch/um/kernel/um_arch.c:334
- #52 0x000000006000574f in main (...) at arch/um/os-Linux/main.c:144
-
-indicating that the UML function openpty_cb() calls openpty(),
-which internally calls __getgrnam_r(), which causes the nsswitch
-machinery to get started.
-
-This loads, through lots of indirection that I snipped, the
-libcom_err.so.2 library, which (in an unknown function, "??")
-calls sem_init().
-
-Now, of course it wants to get libpthread's sem_init(), since
-it's linked against libpthread. However, the dynamic linker
-looks up that symbol against the binary first, and gets the
-kernel's sem_init().
-
-Hajime Tazaki noted that "objcopy -L" can localize a symbol,
-so the dynamic linker wouldn't do the lookup this way. I tried,
-but for some reason that didn't seem to work.
-
-Doing the same thing in the linker script instead does seem to
-work, though I cannot entirely explain - it *also* works if I
-just add "VERSION { { global: *; }; }" instead, indicating that
-something else is happening that I don't really understand. It
-may be that explicitly doing that marks them with some kind of
-empty version, and that's different from the default.
-
-Explicitly marking them with a version breaks kallsyms, so that
-doesn't seem to be possible.
-
-Marking all the symbols as local seems correct, and does seem
-to address the issue, so do that. Also do it for static link,
-nsswitch libraries could still be loaded there.
-
-[1] https://bugs.debian.org/983379
-
-Reported-by: Ritesh Raj Sarraf <[email protected]>
-Signed-off-by: Johannes Berg <[email protected]>
----
- arch/um/kernel/dyn.lds.S | 6 ++++++
- arch/um/kernel/uml.lds.S | 6 ++++++
- 2 files changed, 12 insertions(+)
-
---- a/arch/um/kernel/dyn.lds.S
-+++ b/arch/um/kernel/dyn.lds.S
-@@ -6,6 +6,12 @@
- ENTRY(_start)
- jiffies = jiffies_64;
-
-+VERSION {
-+ {
-+ local: *;
-+ };
-+}
-+
- SECTIONS
- {
- PROVIDE (__executable_start = START);
---- a/arch/um/kernel/uml.lds.S
-+++ b/arch/um/kernel/uml.lds.S
-@@ -7,6 +7,12 @@
- ENTRY(_start)
- jiffies = jiffies_64;
-
-+VERSION {
-+ {
-+ local: *;
-+ };
-+}
-+
- SECTIONS
- {
- /* This must contain the right address - not quite the default ELF one.*/
--- End Message ---
--- Begin Message ---
On 2021-06-14 13:05:04 +0530, Ritesh Raj Sarraf wrote:
> Package: release.debian.org
> Severity: normal
> User: [email protected]
> Usertags: unblock
>
> Please unblock package user-mode-linux
Already unblocked. Thanks for the fix.
Cheers
>
> Dear Release Team,
>
> This is a request to unblock the package. The latest upload fixes bug
> 989665.
>
> [ Reason ]
>
> Bug 989665 occurred, as expected, because of the resolution put in bug
> 983379. Since it wasn't clear back then, if and whether the fix would be
> a Linux Stable material, we carried a patch in User Mode Linux in the
> interim.
>
> Now that the fix made into Linux Stable series, the fix for 989665 is to
> drop that patch.
>
> [ Impact ]
>
> Package user-mode-linux in Bullseye will not be in a buildable state
> without this fix.
>
> [ Tests ]
>
> The fix allows the package to build again. Right now, for Unstable, it
> has built proper for both the supported architectures (i386 and amd64)
>
> [ Risks ]
>
> None to my knowledge
>
> [ Checklist ]
> [x] all changes are documented in the d/changelog
> [x] I reviewed all changes and I approve them
> [x] attach debdiff against the package in testing
>
>
> unblock user-mode-linux/5.10um3
> diff -Nru user-mode-linux-5.10um2/config.amd64
> user-mode-linux-5.10um3/config.amd64
> --- user-mode-linux-5.10um2/config.amd64 2021-03-07 10:01:29.000000000
> +0530
> +++ user-mode-linux-5.10um3/config.amd64 2021-06-11 11:43:23.000000000
> +0530
> @@ -1,6 +1,6 @@
> #
> # Automatically generated file; DO NOT EDIT.
> -# Linux/um 5.10.19 Kernel Configuration
> +# Linux/um 5.10.40 Kernel Configuration
> #
> CONFIG_CC_VERSION_TEXT="gcc (Debian 10.2.1-6) 10.2.1 20210110"
> CONFIG_CC_IS_GCC=y
> @@ -1771,6 +1771,7 @@
> # CONFIG_AUXDISPLAY is not set
> CONFIG_UIO=m
> CONFIG_UIO_PDRV_GENIRQ=m
> +# CONFIG_VFIO is not set
> # CONFIG_VIRT_DRIVERS is not set
> CONFIG_VIRTIO=y
> CONFIG_VIRTIO_MENU=y
> @@ -1915,7 +1916,6 @@
> # CONFIG_AD7091R5 is not set
> # CONFIG_AD7291 is not set
> # CONFIG_AD799X is not set
> -# CONFIG_ADI_AXI_ADC is not set
> # CONFIG_INA2XX_ADC is not set
> # CONFIG_LTC2471 is not set
> # CONFIG_LTC2485 is not set
> @@ -3095,7 +3095,6 @@
> # um Debugging
> #
> # CONFIG_GPROF is not set
> -# CONFIG_GCOV is not set
> CONFIG_EARLY_PRINTK=y
> # end of um Debugging
>
> diff -Nru user-mode-linux-5.10um2/config.i386
> user-mode-linux-5.10um3/config.i386
> --- user-mode-linux-5.10um2/config.i386 2021-03-07 10:01:29.000000000
> +0530
> +++ user-mode-linux-5.10um3/config.i386 2021-06-11 11:43:23.000000000
> +0530
> @@ -1,6 +1,6 @@
> #
> # Automatically generated file; DO NOT EDIT.
> -# Linux/um 5.10.19 Kernel Configuration
> +# Linux/um 5.10.40 Kernel Configuration
> #
> CONFIG_CC_VERSION_TEXT="gcc (Debian 10.2.1-6) 10.2.1 20210110"
> CONFIG_CC_IS_GCC=y
> @@ -8,6 +8,8 @@
> CONFIG_LD_VERSION=235020000
> CONFIG_CLANG_VERSION=0
> CONFIG_LLD_VERSION=0
> +CONFIG_CC_CAN_LINK=y
> +CONFIG_CC_CAN_LINK_STATIC=y
> CONFIG_CC_HAS_ASM_GOTO=y
> CONFIG_CC_HAS_ASM_INLINE=y
> CONFIG_IRQ_WORK=y
> @@ -162,6 +164,7 @@
> # CONFIG_KALLSYMS_ALL is not set
> CONFIG_KALLSYMS_BASE_RELATIVE=y
> CONFIG_BPF_SYSCALL=y
> +CONFIG_USERMODE_DRIVER=y
> # CONFIG_BPF_PRELOAD is not set
> CONFIG_USERFAULTFD=y
> # CONFIG_EMBEDDED is not set
> @@ -244,7 +247,7 @@
> CONFIG_UML_X86=y
> # CONFIG_64BIT is not set
> CONFIG_X86_32=y
> -# CONFIG_3_LEVEL_PGTABLES is not set
> +CONFIG_3_LEVEL_PGTABLES=y
> CONFIG_ARCH_HAS_SC_SIGNALS=y
> CONFIG_ARCH_REUSE_HOST_VSYSCALL_AREA=y
> CONFIG_GENERIC_HWEIGHT=y
> @@ -255,7 +258,7 @@
> CONFIG_MAGIC_SYSRQ=y
> CONFIG_KERNEL_STACK_ORDER=2
> CONFIG_MMAPPER=y
> -CONFIG_PGTABLE_LEVELS=2
> +CONFIG_PGTABLE_LEVELS=3
> # end of UML-specific options
>
> #
> @@ -310,7 +313,7 @@
> CONFIG_CLONE_BACKWARDS=y
> CONFIG_OLD_SIGSUSPEND3=y
> CONFIG_OLD_SIGACTION=y
> -CONFIG_COMPAT_32BIT_TIME=y
> +# CONFIG_COMPAT_32BIT_TIME is not set
> CONFIG_ARCH_NO_PREEMPT=y
>
> #
> @@ -915,7 +918,8 @@
> CONFIG_BRIDGE_EBT_SNAT=m
> CONFIG_BRIDGE_EBT_LOG=m
> CONFIG_BRIDGE_EBT_NFLOG=m
> -# CONFIG_BPFILTER is not set
> +CONFIG_BPFILTER=y
> +CONFIG_BPFILTER_UMH=m
> CONFIG_IP_DCCP=m
> CONFIG_INET_DCCP_DIAG=m
>
> @@ -1795,6 +1799,7 @@
> # CONFIG_AUXDISPLAY is not set
> CONFIG_UIO=m
> CONFIG_UIO_PDRV_GENIRQ=m
> +# CONFIG_VFIO is not set
> # CONFIG_VIRT_DRIVERS is not set
> CONFIG_VIRTIO=y
> CONFIG_VIRTIO_MENU=y
> @@ -1939,7 +1944,6 @@
> # CONFIG_AD7091R5 is not set
> # CONFIG_AD7291 is not set
> # CONFIG_AD799X is not set
> -# CONFIG_ADI_AXI_ADC is not set
> # CONFIG_INA2XX_ADC is not set
> # CONFIG_LTC2471 is not set
> # CONFIG_LTC2485 is not set
> @@ -3115,7 +3119,6 @@
> # um Debugging
> #
> # CONFIG_GPROF is not set
> -# CONFIG_GCOV is not set
> CONFIG_EARLY_PRINTK=y
> # end of um Debugging
>
> diff -Nru user-mode-linux-5.10um2/debian/changelog
> user-mode-linux-5.10um3/debian/changelog
> --- user-mode-linux-5.10um2/debian/changelog 2021-03-07 10:01:29.000000000
> +0530
> +++ user-mode-linux-5.10um3/debian/changelog 2021-06-11 11:43:23.000000000
> +0530
> @@ -1,3 +1,11 @@
> +user-mode-linux (5.10um3) unstable; urgency=medium
> +
> + * [95d05ef] Drop patch um_mark_all_kernel_symbols_as_local.patch
> + (Closes: #989665)
> + * [bf8d469] Update UML Linux configs
> +
> + -- Ritesh Raj Sarraf <[email protected]> Fri, 11 Jun 2021 11:43:23 +0530
> +
> user-mode-linux (5.10um2) unstable; urgency=medium
>
> [ Christopher Obbard ]
> diff -Nru user-mode-linux-5.10um2/debian/patches/series
> user-mode-linux-5.10um3/debian/patches/series
> --- user-mode-linux-5.10um2/debian/patches/series 2021-03-07
> 10:01:29.000000000 +0530
> +++ user-mode-linux-5.10um3/debian/patches/series 2021-06-11
> 11:43:23.000000000 +0530
> @@ -4,4 +4,3 @@
> 06-fix-linkage-on-386-arch.patch
> 07-remove-rpath.patch
> 08-fix-pcap-linkage.patch
> -um_mark_all_kernel_symbols_as_local.patch
> diff -Nru
> user-mode-linux-5.10um2/debian/patches/um_mark_all_kernel_symbols_as_local.patch
>
> user-mode-linux-5.10um3/debian/patches/um_mark_all_kernel_symbols_as_local.patch
> ---
> user-mode-linux-5.10um2/debian/patches/um_mark_all_kernel_symbols_as_local.patch
> 2021-03-07 10:01:29.000000000 +0530
> +++
> user-mode-linux-5.10um3/debian/patches/um_mark_all_kernel_symbols_as_local.patch
> 1970-01-01 05:30:00.000000000 +0530
> @@ -1,103 +0,0 @@
> -From: Johannes Berg <[email protected]>
> -To: [email protected]
> -Cc: Ritesh Raj Sarraf <[email protected]>,
> - Anton Ivanov <[email protected]>,
> - [email protected],
> - Christopher Obbard <[email protected]>,
> - Johannes Berg <[email protected]>
> -Subject: [PATCH] um: mark all kernel symbols as local
> -Date: Fri, 5 Mar 2021 21:43:15 +0100
> -
> -From: Johannes Berg <[email protected]>
> -
> -Ritesh reported a bug [1] against UML, noting that it crashed on
> -startup. The backtrace shows the following (heavily redacted):
> -
> -(gdb) bt
> -...
> - #26 0x0000000060015b5d in sem_init () at ipc/sem.c:268
> - #27 0x00007f89906d92f7 in ?? () from /lib/x86_64-linux-gnu/libcom_err.so.2
> - #28 0x00007f8990ab8fb2 in call_init (...) at dl-init.c:72
> -...
> - #40 0x00007f89909bf3a6 in nss_load_library (...) at nsswitch.c:359
> -...
> - #44 0x00007f8990895e35 in _nss_compat_getgrnam_r (...) at
> nss_compat/compat-grp.c:486
> - #45 0x00007f8990968b85 in __getgrnam_r [...]
> - #46 0x00007f89909d6b77 in grantpt [...]
> - #47 0x00007f8990a9394e in __GI_openpty [...]
> - #48 0x00000000604a1f65 in openpty_cb (...) at arch/um/os-Linux/sigio.c:407
> - #49 0x00000000604a58d0 in start_idle_thread (...) at
> arch/um/os-Linux/skas/process.c:598
> - #50 0x0000000060004a3d in start_uml () at arch/um/kernel/skas/process.c:45
> - #51 0x00000000600047b2 in linux_main (...) at arch/um/kernel/um_arch.c:334
> - #52 0x000000006000574f in main (...) at arch/um/os-Linux/main.c:144
> -
> -indicating that the UML function openpty_cb() calls openpty(),
> -which internally calls __getgrnam_r(), which causes the nsswitch
> -machinery to get started.
> -
> -This loads, through lots of indirection that I snipped, the
> -libcom_err.so.2 library, which (in an unknown function, "??")
> -calls sem_init().
> -
> -Now, of course it wants to get libpthread's sem_init(), since
> -it's linked against libpthread. However, the dynamic linker
> -looks up that symbol against the binary first, and gets the
> -kernel's sem_init().
> -
> -Hajime Tazaki noted that "objcopy -L" can localize a symbol,
> -so the dynamic linker wouldn't do the lookup this way. I tried,
> -but for some reason that didn't seem to work.
> -
> -Doing the same thing in the linker script instead does seem to
> -work, though I cannot entirely explain - it *also* works if I
> -just add "VERSION { { global: *; }; }" instead, indicating that
> -something else is happening that I don't really understand. It
> -may be that explicitly doing that marks them with some kind of
> -empty version, and that's different from the default.
> -
> -Explicitly marking them with a version breaks kallsyms, so that
> -doesn't seem to be possible.
> -
> -Marking all the symbols as local seems correct, and does seem
> -to address the issue, so do that. Also do it for static link,
> -nsswitch libraries could still be loaded there.
> -
> -[1] https://bugs.debian.org/983379
> -
> -Reported-by: Ritesh Raj Sarraf <[email protected]>
> -Signed-off-by: Johannes Berg <[email protected]>
> ----
> - arch/um/kernel/dyn.lds.S | 6 ++++++
> - arch/um/kernel/uml.lds.S | 6 ++++++
> - 2 files changed, 12 insertions(+)
> -
> ---- a/arch/um/kernel/dyn.lds.S
> -+++ b/arch/um/kernel/dyn.lds.S
> -@@ -6,6 +6,12 @@
> - ENTRY(_start)
> - jiffies = jiffies_64;
> -
> -+VERSION {
> -+ {
> -+ local: *;
> -+ };
> -+}
> -+
> - SECTIONS
> - {
> - PROVIDE (__executable_start = START);
> ---- a/arch/um/kernel/uml.lds.S
> -+++ b/arch/um/kernel/uml.lds.S
> -@@ -7,6 +7,12 @@
> - ENTRY(_start)
> - jiffies = jiffies_64;
> -
> -+VERSION {
> -+ {
> -+ local: *;
> -+ };
> -+}
> -+
> - SECTIONS
> - {
> - /* This must contain the right address - not quite the default ELF one.*/
--
Sebastian Ramacher
signature.asc
Description: PGP signature
--- End Message ---