Table of Contents

Upgrade_domU_to_Lenny

Debian Lenny (version 5) was released on the 14th of Feb, 2009.

I decided to upgrade one of my domU's to Lenny to see how the dist-upgrade went. apt-get dist-upgrade

A nice email was sent to root with all the changes. There were a few questions about restarting services, and selecting which default configs to keep.

Kernel Error: 4gb seg fixup

Anyways, after I dist-upgraded, I got a whole load of kernel error messages:

Feb 15 18:18:03 twister kernel: printk: 694 messages suppressed. Feb 15 18:18:03 twister kernel: 4gb seg fixup, process python (pid 1618), cs:ip 73:b7dff870 Feb 15 18:18:08 twister kernel: printk: 696 messages suppressed. Feb 15 18:19:03 twister kernel: printk: 693 messages suppressed. Feb 15 18:19:03 twister kernel: 4gb seg fixup, process snmpd (pid 1657), cs:ip 73:b7bf71b4 Feb 15 18:19:08 twister kernel: printk: 695 messages suppressed. Feb 15 18:19:08 twister kernel: 4gb seg fixup, process snmpd (pid 1657), cs:ip 73:b7bf71b4

These appeared for various running daemons.

Reasons for 4gb seg fixup

Solution to 4gb seg fixup on DomU Xen

#On the domU apt-get install libc6-xen (should already be installed) mv /lib/tls /lib/tls.disabled (should already be done) vi /etc/ld.so.conf.d/libc6-xen.conf #change “hwcap 1 nosegneg” to “hwcap 0 nosegneg” ldconfig reboot

Edit to 4gb seg fixup

After dis-upgrading lenny on another domU, after closer watching of the upgrade process, there was one step relating to this issue which I may have overlooked. The step was: Setting up libc6-xen (2.7-18) …

Configuration file `/etc/ld.so.conf.d/libc6-xen.conf'

==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
  What would you like to do about it ?  Your options are:
   Y or I  : install the package maintainer's version
   N or O  : keep your currently-installed version
     D     : show the differences between the versions
     Z     : background this process to examine the situation
The default action is to keep your current version.

*** libc6-xen.conf (Y/I/N/O/D/Z) default=N ? D — /etc/ld.so.conf.d/libc6-xen.conf 2007-04-20 17:34:58.000000000 +0100 +++ /etc/ld.so.conf.d/libc6-xen.conf.dpkg-new 2009-01-04 18:12:21.000000000 +0000 @@ -1 +1,6 @@ -hwcap 0 nosegneg +# This directive teaches ldconfig to search in nosegneg subdirectories +# and cache the DSOs there with extra bit 1 set in their hwcap match +# fields. In Xen guest kernels, the vDSO tells the dynamic linker to +# search in nosegneg subdirectories and to match this extra hwcap bit +# in the ld.so.cache file. +hwcap 1 nosegneg

So, simply by choosing the default option, the correct entry gets added to /etc/ld.so.conf.d/libc6-xen.conf! I did do a reboot of the VM, and there were no 4gb seg fixup errors :-) All in all, on my second domU upgrade to lenny, there were no errors at all at all. Good Job Debian.


http://www.completefusion.com/wordpress/4gb-seg-fixup-errors-on-debian-lenny-xen-domu/

http://www.nabble.com/Bug-499366:-%224gb-seg-fixup%22-not-fixed-in-2.7-14--td19972026.html

http://blog.kabisa.nl/2009/01/30/4gb-seg-fixup-errors-on-debian-lenny-xen-domu/

http://lists.xensource.com/archives/html/xen-users/2006-11/msg00026.html