UML patches
NEWS
- 23 November 2006: SKAS3/2.6-V9-pre9 updated for 2.6.19-rc6
I've ported just -V9-pre9. Always remember that on AMD64 hosts it can be applied and compiles, but UML guests should be run with
the noprocmm arguments (to date, the only exception are 32bit UML guests running Slackware images).
- 21 October 2006: UML/2.6.18.1-bb2 released
Removed experimental TLS x86_64 support since it gave more problems than it solved. Fixed various compilation problems on particular
platforms and some little memory leaks.
Removed patches merged in -stable (2.6.18.1) - so please use it against it or a newer 2.6.18.y kernel.
- 24 September 2006: UML/2.6.18-bb1 released
Quite a lot of improvements for locking, especially on UBD, but also on UML networking drivers, and on host helpers execution (solved a
critical problem), and experimental TLS x86_64 support.
- 24 September 2006: SKAS3/2.6-V9-pre9 updated for 2.6.18
Full release of SKAS3 support for 2.6.18 is available here.
The release with SKAS3 support, RFP support and integration between them is available instead here:
skas-fremap-2.6.18-v9-pre9.
- 27 August 2006: New RFP page
Everything is collected here. It is still a bit sparse however. Not for users, only for developers for now.
- 27 August 2006: SKAS3/2.6-V9-pre9 updated for 2.6.18-rc4
Simple updates, and moreover an experimental hook for developers for
remap_file_pages support. You need also the remap_file_pages tree (see
below) and a
2.6.18-rc4 kernel tree; the release was done
against GIT commit 3a13813e6effcfad5910d47b15b724621b50b878,
27th August 2006.
- 27 August 2006: 4th attempt for Remap_file_pages support inclusion
The patches (for developers only) are here, and have been sent
yesterday onto LKML and linux-mm for discussion.
- 27 August 2006: Attemp for guest support to using RFP
Experimental support for the guest is in this patch (sent to Jeff
Dike for testing).
- 06 June 2006: SKAS3/2.6-V9-pre9 updated for 2.6.17
Simple updates. Sorry for announcing it so late. The patch was generated
against 2.6.17-rc5 but to my knowledge it is ok.
- 30 April 2006: UML/2.4.32-bs3 released:
- mconsole-exec patch was added! Thanks to Antoine Martin for first
backporting it. I just readded the CONFIG_MCONSOLE_EXEC config option
to his backport.
- no other changes from -bs2; it's simply a port of 2.4.28-bs2 to
2.4.32 (there were a few conflicts with it)
- Thanks to Antoine Martin for supporting 2.4.32 until now, and to
Andrew Shugg for doing the port again causing me to publish it finally
(I've compared both ports and that made some tiny details apparent).
I've finally found the time to do my homework for 2.4.32.
- 24 April 2006: UML/2.6.16-bs2 released: contains various fixes,
including the one to build a x86_64 UML relibly with frame pointers and to
build UML with GCC hardened and to get a working executable.
- 28 March 2006: UML/2.6.16-bb1 released with complete TLS
support:
it forward ports all the patches released in 2.6.15 -bs and
-bb trees which weren't already merged,
- includes complete TLS support.
Particularly, it should correctly
detect 2.4 host kernel and note they don't work and it works both on
x86_64 and x86 hosts; all previous releases worked only for x86 hosts, and
I discovered this recently.
- Also various backports of stability fixes for 2.6.17.
22 March 2006: SKAS3/2.6-V8.2 and -v9-pre9 updated for 2.6.16
Simple updates - -pre9 includes some other cosmetical fixups.
06 March 2006: UML/2.6.15-bb4 released: it's
EXPERIMENTAL for people using COW files and 64-bit UMLs.
-
This makes 64-bit UMLs use the same format of 32-bit ones; the previously
different format was the result of a bug; existing COW files will be
migrated to the "new" format. But note that "old" 64-bit kernels can't
read the new format - they'll crash with SIGFPE, "Kernel mode signal 8".
Patches:
uml-cow-64-bit-padding-fix
uml-diagnose-64-bit-broken-padding
uml-fix-64bit-silly-warn
- This kernel is based on -bs3-tls, it contains its TLS support.
- It also includes some fixups, either backported from my 2.6.16
patches or to include in next release:
uml-cow-messages-correct.patch
uml-fix-os_connect_socket-err-retval.patch
uml-fix-kernel-ref-to-userspace-errno-ldt.patch
uml-tidying-cow-code.patch
uml-read_output-handle.patch
uml-unused-attrib-improve.patch
uml-add-format-warning
uml-fix-format-errors
06 March 2006: UML/2.6.15-bs3-tls released: it's -bs2 +
TLS support; it's the code of -bs1-tls integrated with fixups for the few
annoyances previously found (error message flooding).
16 February 2006: uml_utilities 20060216: I've fixed here all
kinds of bugs in various utilities
-
Finally included the security fix against local DoS - an attacker
with local access could easily bring down an interface by using uml_net,
if installed setuid (as done by default). It was included in distros'
packages from a lot of time, however.
-
Fixed the misbehaviour of COW utilities (especially uml_moo) compiled on
64-bit platform:
- when manipulating COW files generated by 32-bit UML binaries, it
crashed immediately without action with floating point exception
(
moo-64-bit-padding-fix);
- after fixing that, it gave wrong results (and this probably affected
also 64-bit COW files.
-
Some fixes to honeypot.pl.
- Various code fixlets
- Better compilation system - by 'make CFLAGS="-O2 -Wall"' you get an
optimized build (it was more awkward before).
10 February 2006: UML/2.6.15-bs2 released: various backports
from 2.6.16-rc:
-
uml-add-debug-switch-for-skas-mode: explain that "debug" isn't needed for
skas0 and redirect to using gdb directly.
-
uml-close-tuntap-fd: avoids the "Device or resource busy" message after
ifconfig eth0 down;ifconfig eth0 up with TUNTAP.
-
uml-block-sigwinch-ptrace-test: fix a race condition when SIGWINCH is
received.
-
uml-free-network-IRQ-correctly: avoid "Bad file descriptor" message during
shutdown which could result in failure to reboot.
-
uml-balance-list_add-and-list_del-in-the-network-driver: ifconfig down and
up could cause a crash (introduced in uml-free-network-IRQ-correctly)
-
uml-initialize-process-fp-registers-properly: fix Floating Point registers
initialization.
-
uml-fix-segfault-tcsh-testcase: fix the segfault recently described in
uml-devel, which can be exposed via "tcsh -c 'echo `hostname`'.
18 January 2006: UML/2.6.15-bs1-tls released
- This is my first test release of my code for TLS support after Jeff
Dike fixed the bug which hid itself for ages, making it work. I took the
patches from his latest tree, made them compile well and added this to
-bs1.
18 January 2006: UML/2.6.15-bs1 released
- Includes a few fixes ported from 2.6.14-bs3, not yet merged upstream
(just sent there). And ports uml-mconsole-exec.
09 January 2006: SKAS3/2.6-V8.2 and -v9-pre8 updated for 2.6.15
This was simply a trivial update, with just two little cosmetic changes
(while at it).
16 December 2005: UML/2.6.14-bs3 released
- Ported all SKAS0 stub compilation fixes - the code is now expected
to compile and run correctly on all compilers, with the possible exception
of hardened ones.
- Ported the SKAS0 modify_ldt() fixes - the patch is known to fix
Ubuntu guests.
- +uml_compile_error-2.6.15.patch: fix a compilation error when only TT
mode is enabled.
27 (?) November 2005: UML/2.6.14-bs2 released
- Fix various exit path bugs in the networking transports
- Fix a bug in access_ok in TT mode - possible security problem (not
that TT is secure anyway, but...)
- Backport some fixes for running with huge amounts of memory on 64-bit
(about using 64-bit file offsets for the file backing virtual RAM)
- Make some options conditional to TT mode only.
- Remove a kernel warning for a test which can report false positives.
- Avoid some stub compilation errors
4 November 2005: UML kernel binaries available!
I have packaged 2.6.13.4-bs5 and the just released 2.6.14-bs1.
This is the first attempt I've done, so please report if there is any
problem. Also the configuration is a first attempt, so report if you want
changes.
4 November 2005: UML/2.6.14-bs1 released
- Forward-ported remaining 2.6.13 fixes to 2.6.14, plus some little
fixups.
- Especially, the "fix stubs" patch is still here, and wasn't merged in
2.6.14.
4 November 2005: UML/2.6.13.4-bs5 released
Just a quick fixup:
- Fixed a compile error when building 32-bit binaries on 64-bit hosts
with buggy headers (there is a missing guard for double including).
13 October 2005: UML/2.6.13.4-bs4 released
- -bs3 didn't apply on top of 2.6.13.3, because one of his patches was
merged in it. So remove it from -bs.
- CAREFUL : 2.6.13 kernel changed the COW format from all
previous kernels in an unintended way (and it wasn't our fault).
-bs4 restores the previous format, but this means you likely won't
be able to use the same COW files when switching from any 2.6.13 to -bs4;
but -bs4 has the same format as any <= 2.6.12 or >= 2.6.14 UML
kernel.
- fix compilation of UML on x86_64 with SKAS0
- fix compilation of UML on i386 without SKAS mode
- fix SKAS0 mode assembly code - this could stop it from working on
some old GCC compilers (this happened, for instance, on GCC 3.2.3, and on
RH 9).
4 October 2005: UML/2.6.13-bs3 released
- the "mode=skas0" switch has been added. Until this release, you'd
have to use "skas0" to force UML to use skas0 mode.
- fixed a bug on x86_64 skas0 guests compiled without frame pointers
- improved the behaviour of the fault handler, which might help a bit
the mconsole sysrq command
25 September 2005: UML/2.6.13-bs2 released: includes fixes for:
- a big SKAS3 breakage (i.e. SKAS3 doesn't work at all in -bs1,
while it works in 2.6.13) introduced in 2.6.13-bs1, while fixing TT mode
- a link time error when compiling with CONFIG_HIGHMEM enabled and
modules enabled.
17 September 2005: UML/2.6.13-bs1 released: includes fixes for:
- the big x86_64 Skas0 memory leak
- a performance regression
- a hang in TT mode discovered with LTP testing (thanks to
luothing for reporting this failure), which however shouldn't happen
during normal use
- modify_ldt (still thanks to LTP),
- a compilation failure when enabling IPv6 (thanks to Antoine Martin for the
report),
- make sure the user gets a message when UML is failing because he didn't
compile a transport he is using,
- a race condition in SIGWINCH handling,
- uname result on 32-bit UMLs on 64-bit hosts.
26 August 2005: SKAS3/2.6-V8.2 and -v9-pre7 have been updated for
2.6.13-rc7 (and I expect it to work on 2.6.13 too). SKAS-v8.2 is still
recommended in preference to prereleases.
12 August 2005: UML/2.6.12-bs11 and -bb12-skas0 released: fix
UML vsyscall support - it wasn't working for some missing headers / macros,
and now it even works on Fedora hosts (which have some differences in
vsyscall support). A little typo fixed for -bb12-skas0, in addition (should
be almost harmless).
31 July 2005: Development snapshot released against 2.6.13-rc4-git
it's a snapshot for my development work; since people have been playing with
my NPTL patch, I thought to push out the updated version of it. One note: in
the archives, it's uncorrectly marked as against -rc3-git, but actually it
applies on top of git commit 889371f61fd5bb914d0331268f12432590cf7e85 (so do
a cg-seek COMMIT-ID to that ID if you use cogito, before applying the
patches, to make them apply perfectly up to some point; some patches are old
and not-up-to-date/not correct, I suggest simply ignoring them). It should
be close to 2.6.13-rc4-git4.
There's not a "combo" version since it wouldn't make a lot of sense.
28 July 2005: UML/2.6.11.8-bs7 released: backported the fix from
Jeff Dike for the known "Load average always >= 1.0 on idle system, since
2.6.10". This is based on -bs5 rather than -bs6, since that release had many
problems and was actually "un"-released. Also, I removed from it the SKAS
patch since I had an outdated release in my queue for this tree.
28 July 2005: UML/2.6.12-bb10-skas0 released: rebased on -bs9,
and included a little performance speedup from 2.6.13-rc.
28 July 2005: UML/2.6.12-bs9 released: included the fix from
Jeff Dike for the known "Load average always >= 1.0 on idle system, since
2.6.10", plus a kbuild improvement for PCAP.
15 July 2005: UML/2.6.12-bb8-skas0 released: based on -bs7, plus
includes a fix from Bodo Stroesser for SKAS0 for an environment-dependant
bug, biting many SKAS0 testers.
15 July 2005: UML/2.6.12-bs7 released: this fixes UML for x86_64
(now for real). The patch fixing UML compilation with GCC 4 on x86_64 was
again buggy (but now it isn't any more, thanks to Jeff Dike).
12 July 2005: UML/2.6.12-bb6-skas0 released: it's simply the
SKAS0 test tree updated against -bs5.
12 July 2005: UML/2.6.12-bs5 released: this wanted to fix UML for
x86_64. The patch fixing UML compilation with GCC 4 on x86_64 was buggy, but
it's still buggy (yes, sorry). Thanks to Russell King for reporting this.
11 July 2005: SKAS3/2.6-V8.2 has been released for all 2.6.9-12
kernels. It contains an important fix potentially affecting any application
running on a SKAS3 system, caused by some excessive GCC optimizations. For a more thorough description,
see my recent posts on uml-devel list.
2.6.7 and 2.6.8.1 kernels are too old, so I've decided (unless otherwise
requested) to leave them unsupported.
11 July 2005: SKAS3/2.6-V9-pre7 has been released for 2.6.12.
I've added the same fixes described above.
09 July 2005: UML/2.6.12-bb4-skas0 released: it's simply the
SKAS0 test tree updated against -bs3; beyond I've added the
"SKAS0" parameter to allow testing it on SKAS3 hosts. I find no difference
currently between SKAS0 and SKAS3 mode, in my limited testing.
09 July 2005: UML/2.6.12-bs3 released: this fixes UML for
running on host Fedora Core 4, reintroduces back the Pcap net transport,
fixes UML compilation with GCC 4 on x86_64, and (should) compile on x86_64
host as a 32-bit binary, with make ARCH=um SUBARCH=i386; however this last
feature is yet untested (I had tested the patch previously).
05 July 2005: SKAS0 test-tree released. It's named
2.6.12-bb2-skas0, is a superset of -bs1, and it also
contains a locking cleanup. It still works (or should work) in SKAS3 mode,
and will work in SKAS0 mode on non-SKAS3 patched hosts. There's yet no way
to explicitly select SKAS0 mode, for what I see... it'll be added later.
05 July 2005: fixed the release of 2.6.12-bs1, because it
incorrectly declared itself as a -bs7 release. Sorry for the inconvenience,
and be assured I've done no other change to the patch.
04 July 2005: SKAS3/2.6-V8 has been updated for 2.6.12. It's
still recommended over prereleases.
04 July 2005: SKAS3/2.6-V9-pre4 has been released for 2.6.12.
The code is basically unchanged from the 2.6.12-rc4 release.
04 July 2005: UML/2.6.12-bs1 released: this fixes the TT mode
problem that many people complained about with 2.6.12 and adds some other
minor fixes, including hppfs support. As always in recent times, Mconsole-exec support is included.
06 June 2005: wait a bit more for UML/2.6.11.8-bs6 . Seems like
tools for patch handling became stupid, so the patch I uploaded is totally
botched (though the broken-out folder and tarball is ok). And since I'm
getting too much problems on this tree anyway, I'll defer the work to
-bs7.
06 June 2005: UML/2.6.11.8-bs6 released (to apply on top of
2.6.11.8): this kernel should be good for building 32-bit UMLs on x86_64
hosts, by simply using "make ARCH=um SUBARCH=i386"; fixed udf compile bug;
fixed debugging + SMP compile bug; should compile well also on NPTL-only
systems even enabling TT mode (I'm waiting for test results on this). You
should also be able to verify the cryptographic signature of this release...
However, I cannot get it to work on x86_64 fully native UMLs (but this is
probably also true of vanilla 2.6.11, I think).
21 May 2005: I've started cryptographically signing the patches my
patchsets. Running "gpg --verify *.md5.asc" and "md5sum -c *.md5.asc" is a
sufficient verification that I've indeed released the patches you find
here... (after you import my public key, and hoping it's the real one). It
should work like the kernel.org archives.
16 May 2005: SKAS3/2.6-V9-pre4 has been released for 2.6.12-rc4.
This versions is good for coders to work on for x86-64 support, since it
passes all the basic tests I've worked on lately.
16 May 2005: uploaded SKAS test program and some SKAS / UML
descriptions. Added a new section for this stuff.
09 May 2005: SKAS3/2.6-V9-pre2 has been ported to 2.6.12-rc4.
It's untested but it should work well. If you want to get -v8, apply
everything from the splitout except the patches:
sysemu-for-fedora.patch
x86-64-specific-addition.patch
ptrace_ldt-reload-smp-fix-x86-64.patch
skas-add-locking-for-mm-switch-x86-64.patch
fix-dumpable-handling.patch
and you'll be ok.
09 May 2005: UML/2.6.11.8-bs5 released (to apply on top of
2.6.11.8): remove some patches which were merged in 2.6.11.8, added
MODVERSIONS support, fixes for console locking,
23 April 2005: SKAS3/2.6-V9-pre2 (for 2.6.11 and 2.6.12-rc3) has
been released. It contains some code which tries to start supporting x86-64
kernels. Unfortunately, it does not support SKAS yet.
21 April 2005: UML/2.4.27-bs2-pre11 released: updated the
version number, rediffed against 2.4.28 since 2.4.27 does not compile with
GCC 3.4, made sure hostfs works ok. It should work even on top of 2.4.27.
And this time, I hope I can release it as the final -bs2!
12 April 2005: UML/2.6.11-bs4 released: only one little fix for users
of modular NFSD (which didn't work before).
8 April 2005: DEVEL - I'm snapshotting my 2.6.12-rc2 tree. I'll
start, I hope, doing this on a regular basis - the snapshots will go to devel-guest. I must still refine the process.
8 April 2005: UML/2.6.11-bs3 released: only one little fix for users
of old sed releases (like the one from Debian Woody).
8 April 2005: UML/2.4.27-bs2-pre10 released: only an important
compile-time fix from -pre9. Actually, my local tree was correct but the
exported patch weren't, and this was here from long time. Sorry.
1 April 2005: UML/2.4.27-bs2-pre9 released: I've fixed a big 2.4.27-1um
stability issue with respect to 2.4.27-bs2-pre7, plus some more work. It's
still a prerelease, and with some hostfs problems. Try 2.4.27-1um if
you want more stability (and remember to chroot it if it's exposed on the
wild, as explained on the FAQs.).
1 April 2005: UML/2.6.11-bb2 released: various other fixes,
including: better Kbuild dependency tracking (no more need for "make clean
ARCH=um" after switching on/off TT mode), the possibility to use the
AES-i586 cryptographic code instead of the AES one, resulting in improved
performance, and the addition of the mconsole "exec" command to run
arbitrary commands from the host mconsole inside the guest (only if enabled
in kernel configuration).
1 April 2005: UML/2.6.11-bs1 released: stability/compilation
fixes for: console output problems, hostfs permission handling on
device nodes, long command lines, support for the new uml_utilities (yet to
release). (No, this isn't a Fools Day joke, it's for real).
29 March 2005: SKAS3/2.6-V8 (which is identical to -rc5) has now
been packaged, and uploaded on the web-site.
24 March 2005: UML/2.4.27-bs-pre7 is released, to put out the
2.4 patches status. This patch is both newer than 2.4.27-1um + incrementals
and 2.4.27-bs7. And should apply to any 2.4 kernel >= 2.4.26.
However, I just see it does not compile with GCC 3.4; with GCC 3.3 it should
still work (in fact it does but it's a bit unstable), so just report if you
get different results.
24 March 2005: SKAS3/2.6-V8 is officially released, identical to
-V8-rc5 (in fact I've not yet packaged the actual patches, for now
just download -V8-rc5).
10 March 2005: SKAS3/2.6-V8-rc5 available for
2.6.7 - 2.6.11 kernels.
You can find it in the usual location (by navigating to the
archives).
In this release, compared against -rc2 + the fixlet, I simply dropped the
fix-dumpable-handling.patch because of some theoretical race
conditions (maybe leading to privilege escalation) it could cause. I want to
fix and include it in SKAS3/2.6-V9.
NOTE: I want to release this version as -V8 if no bugs are
discovered - I've actually run and tested it (at least for 2.6.11) for a
good while.
16 February 2005: needed fixlet for SKAS3/2.6-V8-rc2 for
2.6.11-rc3 only.
It's here.
11 February 2005: SKAS3/2.6-V8-rc2 available for
2.6.7 and 2.6.8 (the same patch applies to both kernels). See below for
other details.
10 February 2005: SKAS3/2.6-V8-rc2 available for
2.6.9,.10,.11-rc3-bk6. You can find it in the usual location (by navigating to the
archives). Meanwhile, for 2.6.11-rc3-bk6 (and nearby) you can find
also the -V7-rc1 (which is an untested port of -V7 plus some more
important and little fixes), which I earlier built (with less new work).
Those are release candidates, so for testing only for now (I don't
have particular reasons to suspect more bugs in them than in previous
releases).
10 February 2005: 2.6.9-bs7 released: security fix fixes
the possibility for non-root users to chmod +s everything which is inside a
hostfs mount point.
The bug exists in every existing 2.6 UML release (not tested on 2.4). The
fix for it (which should apply to almost any 2.6 UML) is named
uml-hostfs-fix-setuid-permission-check (look inside the
broken-out directory).
25 January 2005: 2.6.9-bs6 released: some critical fixes were
added... they surely don't make it less stable than 2.6.9-bs5 or 2.6.9-bb4
21 January 2005: About 2.6.10 vanilla: it still misses a lot of
2.6.9-bs5 fixes, so I will put out some 2.6.10-bb releases. I just need the
time to recollect and select them.
21 January 2005: 2.6.9-bs5 released: it fixes only some little
problems, so if 2.6.9-bb4 is fine for you, you don't need to upgrade. In
fact, I had not yet announced it even if it was in the archives, even
because I'm going to put out -bs6 with more important work.
11 January 2005: SKAS3/2.6-V7 updated to work on
2.6.10. You can find it in the usual location (by navigating to the
archives). Thanks to Frank Sorenson for building and offering for download
in the meanwhile a SKAS3-v7 patch, which was indeed perfect (the files are
different only because I regenerated the patch to make sure it was correct).
20 November 2004: 2.6.9-bb4 released: it fixes a big instability
problem in earlier 2.6.9-bb releases, spotted by Bodo Stroesser. Everybody
experiencing stability problems with other -bb releases should please try
using this one. Also, it seems to have finally fixed the problems on 2.6.9
host, when using TT mode. See the changelogs (linked below) for more
details.
I would also like to especially thank Bodo Stroesser for the work he did to
get the -bb trees stable - actually, he has done most of the work on which
the -bb tree is based.
20 November 2004: 2.6.9-bb3 released: it adds to
2.6.9-bb2 some partial fixes for UML reboot problems and for
zombie threads created in TT mode on any 2.6.9 host.
20 November 2004: SKAS3/2.6-V7 updated to compile on
2.6.10-rc2: this is a tested fix, which seems to work mostly,
available here.
10 November 2004: 2.6.9-bb2 released: contains fixes for a few
problems in 2.6.9-bb1. It obviously contains all the rest of
-bb1. Also, finally, it makes UML to work on Gentoo if disabling
CONFIG_MODE_TT when compiling UML. Details in the changelogs on this site.
4 November 2004: 2.4.27-bs1 released: it is a stable UML patch
against 2.4.27 tree (I hope it's really stable, at least). It does not
include (yet) the security fixes included in the 2.6.9-bb tree.
4 November 2004: 2.6.9-bb1 released: updating to it is
recommended, also due to security updates contained in it.
29 October 2004: SKAS3/2.6 has been updated to V7; you
can download an updated patch for 2.6.7 and 2.6.8.1 and another(!),
different one for 2.6.9.
29 October 2004: 2.6.9 vanilla kernel: as some of you have
already seen, you can use the 2.6.9 kernel for building UML binaries (i.e.
guest kernels) without any extra UML patch! However, to fix important
issues, I could release a patch for them.
- One of such issues (biting every UML release until now) is running on a
2.6.9 host: it will work but will leave a lot of zombie threads. To kill
them, try kill -CONT and then kill -KILL, and repeating as needed, after
exiting UML.
18 October 2004: SKAS3/2.6 has been updated to V6; you can download an
updated patch for 2.6.7, 2.6.8.1 and 2.6.9-rc4 (which applies against
the final 2.6.9).