From: Herbert Poetzl (herbert_at_13thfloor.at)
Date: Thu 07 Apr 2005 - 05:26:08 BST
On Wed, Apr 06, 2005 at 11:55:28AM -0500, Micah Anderson wrote:
>
> Here is a report of the hacking done last night (or day, depending on
> your timezone) to port the vserver 1.9.5.12 patches to the Debian
> kernel 2.6.8. Bertl is truely an amazing kernel hacker!
>
> Debian's Sarge, which will freeze "any day now"(tm), will be shipped
> with the 2.6.8 kernel as the primarly supported kernel. It contains
> backports of critical issues (including security fixes and major
> crashes), is the 2.6 kernel that is part of the Debian Installer that
> will be a part of the Sarge release, and will be the primary supported
> kernel for Sarge. This means that most Debian users will use the
> Debian 2.6.8 kernel, however there will be a 2.6.11 kernel available
> as a fall-back in the case that 2.6.8 has a major problem that cannot
> be backported.
>
> It is for these reasons that there was work done to get the vserver
> 1.9.5 patch sets to work with this version of the Debian kernel.
> Having a working version of this patch against the Debian kernel will
> make it easier to get it to work for future Debian kernel revisions,
> and will be included in the debian package kernel-patch-vserver.
>
> Plan:
> . Get a vanilla/mainline 2.6.11.6-vs1.9.5.12 kernel up and
> running on one machine
>
> . Find a way to easily check the debian 2.6.8-15-vs1.9.5.12
> kernel, compare them and check for differences
>
> . Port the split vserver 1.9.5.12 patches, by using a diff
> against the vanilla 2.6.8 source and the debian 2.6.8-15
> source (this diff has the md5sum: 823fee2ebc230fdddff90824662fae62)
>
> . Compile, reboot, test test test.
>
> Progress:
> . Got the 2.6.11-vs1.9.5.12 kernel up and running
> . Installed the vserver utils 0.30.205 + 2 patches
> . Converted legacy vserver configurations to new format
> . Bertl finished adapting each split patch, reassembled and
> was able to build successfully
> . Filed a couple Debian kernel-source-2.6.8 bug reports
> . First compile did not boot in qemu
> . After disabling power-management it boots fine (apparantly
> ACPI and PM got selected in kernel config)
> . 02:08 < Bertl> Linux-VServer Test [V0.11] (C) 2003-2005 H.Poetzl
> 02:08 < Bertl> chcontext is working.
> 02:08 < Bertl> chbind is working.
> 02:08 < Bertl> Linux 2.6.8-vs1.9.5 i686/0.30.204/0.30.204 [Ea]
> 02:08 < Bertl> VCI: 0001:0025 273 03110076
> 02:08 < Bertl> ---
> 02:08 < Bertl> [001]# succeeded.
> 02:08 < Bertl> [011]# succeeded.
> 02:08 < Bertl> [031]# succeeded.
> 02:08 < Bertl> [101]# succeeded.
> 02:08 < Bertl> [102]# succeeded.
> 02:08 < Bertl> [201]# succeeded.
> 02:08 < Bertl> [202]# succeeded.
>
> . Bertl tried with a different split (different from default)
> and it was broken somehow
>
> . http://vserver.13thfloor.at/Experimental/patch-2.6.8-15-vs1.9.5-1.diff
> was the first one
>
> . The latest version is
> http://vserver.13thfloor.at/Experimental/patch-2.6.8-15-vs1.9.5-1.1.diff
okay, update here:
for some reason (I really do not want to discuss it ;) the
first patch was done against a vanilla 2.6.8 kernel instead
of the supposed to be 2.6.8-15 debian kernel ... okay, okay
I admit it, I forgot to patch the all-in-one debian patch ;)
so now we have a basically untested 2.6.8-vs1.9.5 kernel and
because debian 2.6.8-15 isn't that far away from that I was
able to update it to 2.6.8-15 which is now available as:
http://vserver.13thfloor.at/Experimental/patch-2.6.8-15-vs1.9.5-2.diff
the varhz and split patches were dropped, because the kernel
is just too old to support them properly ...
we'll see if FOR-1.9.6 stuff will fit to that later, now the
basic testing has to be done (debian folks please start
testing the stuff ... and report issues back)
also I would like to get a statement from the debian folks
who will in future maintain the 'debian' kernel version of
linux-vserver ... because I do the 'initial' port, but I will
not have time to keep it up to date ...
HTH,
Herbert
> Notes/TODO:
> . Need to test NFS
>
> . Need to compile, boot and test several times with small
> changes, loooking at various features (from vserver paper and
> changelogs) to know what to test
>
> . Need to check ext2/ext3 xattr with disk limit accounting
>
> . The ext3 xattr/dquot stuff is broken in Debian, Bertl
> submitted a patch a few months ago that was included in
> mainline (http://lkml.org/lkml/2005/1/26/174), this gets
> quota wrong (filed debian bug: #303426)
>
> . Debian is missing
> http://www.ussg.iu.edu/hypermail/linux/kernel/0501.3/1026.html which
> is a spinlock_assert issue will crash your kernel when
> compiled with up/spinlock_debug (filed debian bug: #303424)
>
> . Debian has atomic_inc_return for all archs, except x86 (but
> not really a 'bug' because kernel does not need inc_and_return())
>
> . Had to add some rcu stuff (what was this Bertl?)
>
> . Need to check task_state (in proc) regarding initpid virtualization
>
> . Virtual process uptime probably needs fixing
>
> . FIXADDR mapping is missing (what is this Bertl?)
>
> . Need to test cross-compile for other arches
> (http://vserver.13thfloor.at/Stuff/Cross/howto.info)
>
> . Need to compile x25 in, as this is one of the typical bug
> sources in recent vserver kernels
>
>
> Additional Info:
>
> . The Debian kernel has a lot of modules configured by
> default, needed to find a way to recompile the vserver
> debian kernel with minimal recompile times:
>
> using the official debian image packages, you can nuke
> the extra configs, and drop a lot of modules
> out of the remaining configuration:
> rm config/{386,k7,k7-smp,686-smp}
> cp config/686 linux-2.6.11/.config, cd linux-2.6.11
> && make menuconfig; cp linix-2.6.11/.config
> config/686
> also, use ccache when compiling, this will drastically increase compile times
> _______________________________________________
> Vserver mailing list
> Vserver_at_list.linux-vserver.org
> http://list.linux-vserver.org/mailman/listinfo/vserver
_______________________________________________
Vserver mailing list
Vserver_at_list.linux-vserver.org
http://list.linux-vserver.org/mailman/listinfo/vserver