Bug#994232: libc6: generates unnecessarily tight dependencies on mips, mipsel

2021-09-14 Thread Aurelien Jarno
On 2021-09-14 09:28, Simon McVittie wrote:
> Package: libc6
> Version: 2.32-2
> Severity: normal
> Tags: patch
> X-Debbugs-Cc: debian-rele...@lists.debian.org
> 
> Most architectures' libc6.symbols.$arch have this pattern:
> 
> > $ cat debian/libc6.symbols.i386
> > #include "libc6.symbols.common"
> > ld-linux.so.2 #PACKAGE# #MINVER#
> > #include "symbols.wildcards"
> > libc.so.6 #PACKAGE# #MINVER#
> > #include "symbols.wildcards"
> 
> This results in any use of symbols versioned foo@GLIBC_2.23 generating a
> dependency on libc6 (>= 2.23), and so on.
> 
> However, libc6:mips and libc6:mipsel are missing the final
> '#include "symbols.wildcards"', which results in those architectures
> generating an unnecessarily strict dependency on libc6 (>= 2.32-1) and
> entangling other transitions with glibc's transition. As far as I can see,
> this was accidental?

Yes, this one indeed accidental, my cleanup to remove the complexity
from the linuxthreads to NPTL transition has been too agressive.

Thanks a lot for catching that and for the patch.

Regards,
Aurelien

-- 
Aurelien Jarno  GPG: 4096R/1DDD8C9B
aurel...@aurel32.net http://www.aurel32.net



Bug#994232: libc6: generates unnecessarily tight dependencies on mips, mipsel

2021-09-14 Thread Simon McVittie
Package: libc6
Version: 2.32-2
Severity: normal
Tags: patch
X-Debbugs-Cc: debian-rele...@lists.debian.org

Most architectures' libc6.symbols.$arch have this pattern:

> $ cat debian/libc6.symbols.i386
> #include "libc6.symbols.common"
> ld-linux.so.2 #PACKAGE# #MINVER#
> #include "symbols.wildcards"
> libc.so.6 #PACKAGE# #MINVER#
> #include "symbols.wildcards"

This results in any use of symbols versioned foo@GLIBC_2.23 generating a
dependency on libc6 (>= 2.23), and so on.

However, libc6:mips and libc6:mipsel are missing the final
'#include "symbols.wildcards"', which results in those architectures
generating an unnecessarily strict dependency on libc6 (>= 2.32-1) and
entangling other transitions with glibc's transition. As far as I can see,
this was accidental?

libc6-i386:x32 has the same issue.

Please consider the attached patch.

smcv
>From bffb450291513a1486dae6e04b1d126994ba22fe Mon Sep 17 00:00:00 2001
From: Simon McVittie 
Date: Tue, 14 Sep 2021 09:25:36 +0100
Subject: [PATCH] Restore versioned symbol tracking for mips, mipsel,
 libc6-i386:x32

Commit d3f9fade "debian/libc6.symbols.mips, debian/libc6.symbols.mipsel:
drop symbol overrides for TLS support" accidentally removed the inclusion
of symbols.wildcards, resulting in all symbols in libc.so.6 on the
affected architectures generating an unnecessarily tight dependency on
libc6 (>= 2.32-1).

Commit 5f5dfcb0 caused an equivalent issue for libc6-i386:x32.

Fixes: d3f9fade "debian/libc6.symbols.mips, debian/libc6.symbols.mipsel: drop symbol overrides for TLS support."
Fixes: 5f5dfcb0 "debian/libc6-i386.symbols.x32, debian/libc6.symbols.i386: drop symbol overrides for TLS support.
---
 debian/libc6-i386.symbols.x32 | 1 +
 debian/libc6.symbols.mips | 1 +
 debian/libc6.symbols.mipsel   | 1 +
 3 files changed, 3 insertions(+)

diff --git a/debian/libc6-i386.symbols.x32 b/debian/libc6-i386.symbols.x32
index 3bd6f8f5..357d2f26 100644
--- a/debian/libc6-i386.symbols.x32
+++ b/debian/libc6-i386.symbols.x32
@@ -2,3 +2,4 @@
 ld-linux.so.2 #PACKAGE# #MINVER#
 #include "symbols.wildcards"
 libc.so.6 #PACKAGE# #MINVER#
+#include "symbols.wildcards"
diff --git a/debian/libc6.symbols.mips b/debian/libc6.symbols.mips
index 580f72c8..59332301 100644
--- a/debian/libc6.symbols.mips
+++ b/debian/libc6.symbols.mips
@@ -2,3 +2,4 @@
 ld.so.1 #PACKAGE# #MINVER#
 #include "symbols.wildcards"
 libc.so.6 #PACKAGE# #MINVER#
+#include "symbols.wildcards"
diff --git a/debian/libc6.symbols.mipsel b/debian/libc6.symbols.mipsel
index 580f72c8..59332301 100644
--- a/debian/libc6.symbols.mipsel
+++ b/debian/libc6.symbols.mipsel
@@ -2,3 +2,4 @@
 ld.so.1 #PACKAGE# #MINVER#
 #include "symbols.wildcards"
 libc.so.6 #PACKAGE# #MINVER#
+#include "symbols.wildcards"
-- 
2.33.0