[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#171804: glibc 2.3.1-5 for hppa on upgrade can trash the entire system



> Package: libc6
> Version: 2.3.1-5
> Severity: critical
> 
> Due to an oversight in my testing, if you upgrade to 2.3.1-5 on HPPA and
> your kernel version if < 2.4.19, then glibc will refuse to function
> (minkernel is set to 2.4.19). This refusal to function is manifested as
> a complaint during the install process and in general cannot be
> recovered from without a lot of work (getting external libc6 debs).
> 
> For the first occurance of the problem see:
> http://lists.debian.org/debian-hppa/2002/debian-hppa-200211/msg00082.html
> 
> The following patch to preinst prevents people from installing unless
> the kernel version matches.
> 

Modify the patch slightly to relax the requirement to 2.4.17, allowing
our users time to catch up.

Sorry users :(

c.

--- debian/libc/DEBIAN/preinst.orig	2002-12-02 20:21:46.000000000 -0500
+++ debian/libc/DEBIAN/preinst	2002-12-02 20:31:16.000000000 -0500
@@ -100,6 +100,19 @@
 	    fi
 	fi
     fi
+    # HPPA boxes require latest fixes in the kernel to function properly.
+    if [ "$realarch" = parisc64 ] || [ "$realarch" = parisc ]
+    then
+	kernel_ver=`uname -r`
+	if dpkg --compare-versions "$kernel_ver" lt 2.4.17
+	then
+		echo WARNING: This version of libc6 requires that you be running
+		echo atleast a 2.4.17 kernel in order to work properly. Earlier
+		echo kernels did not provide the proper functionality in order 
+		echo for the system to be stable. 
+		exit 1
+	fi
+    fi
 fi
 
 exit 0
#! /bin/sh -e

# DP: Description: Relax glibc kernel version requirement.
# DP: Author: Carlos O'Donell <carlos@baldric.uwo.ca>
# DP: Upstream status: Debian-Specific
# DP: Status Details: Overrides upstream requirement of 2.4.19
# DP: Date: December 5th, 2002

#
# Comments from Carlos:
#
# Our users come first, and I've changed this back after seeing 
# some people get burned by not having new kernels. We also
# shouldn't be forcing people to use new kernels. Rather they should
# be upgrading after seeing the quantifiable failures and choosing
# to go for a new kernel :) It's an empowerment issue.
#
# If you complain of random segfaults in libc or other programs because
# you have an old kernel without a fixed unaligned handler... the first
# thing I'm going to ask is that you try upgrading to 2.4.19/20 :}
#
# When 2.4.19 on hppa becomes the defacto stable kernel, we can remove
# the patch and let the upstream requirement be used. At which point
# the preinst patch needs to be modified or removed.
#

if [ $# -ne 2 ]; then
    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
    exit 1
fi
case "$1" in
    -patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
    -unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;;
    *)
	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
	exit 1
esac
exit 0

# append the patch here and adjust the -p? flag in the patch calls.
--- glibc-2.3.1/sysdeps/unix/sysv/linux/configure.in	2002-12-05 10:40:28.000000000 -0500
+++ glibc-2.3.1/sysdeps/unix/sysv/linux/configure.in	2002-12-05 10:40:49.000000000 -0500
@@ -65,7 +65,7 @@
     ;;
   hppa*)
     libc_cv_gcc_unwind_find_fde=yes  
-    arch_minimum_kernel=2.4.19
+    arch_minimum_kernel=2.4.17
     ;;
   m68k*)
     arch_minimum_kernel=2.0.10
--- glibc-2.3.1/sysdeps/unix/sysv/linux/configure	2002-12-05 10:40:31.000000000 -0500
+++ glibc-2.3.1/sysdeps/unix/sysv/linux/configure	2002-12-05 10:41:08.000000000 -0500
@@ -87,7 +87,7 @@
     ;;
   hppa*)
     libc_cv_gcc_unwind_find_fde=yes  
-    arch_minimum_kernel=2.4.19
+    arch_minimum_kernel=2.4.17
     ;;
   m68k*)
     arch_minimum_kernel=2.0.10

Reply to: