Site Home Page
The UML Wiki
UML Community Site
The UML roadmap
What it's good for
Case Studies
Kernel Capabilities
Downloading it
Running it
Skas Mode
Incremental Patches
Test Suite
Host memory use
Building filesystems
User Contributions
Related Links
The HOWTO (html)
The HOWTO (text)
Host file access
Device inputs
Sharing filesystems
Creating filesystems
Resizing filesystems
Virtual Networking
Management Console
Kernel Debugging
UML Honeypots
gprof and gcov
Running X
Diagnosing problems
Installing Slackware
Porting UML
IO memory emulation
UML on 2G/2G hosts
Adding a UML system call
Running nested UMLs
How you can help
Kernel projects
A virtual network
An X session
A login session
A debugging session
Slackware installation
Kernel switches
Slackware README
ALS 2000 paper (html)
ALS 2000 paper (TeX)
ALS 2000 slides
LCA 2001 slides
OLS 2001 paper (html)
OLS 2001 paper (TeX)
ALS 2001 paper (html)
ALS 2001 paper (TeX)
UML security (html)
LCA 2002 (html)
WVU 2002 (html)
Security Roundtable (html)
OLS 2002 slides
LWE 2005 slides
Fun and Games
Kernel Hangman
Disaster of the Month

Changelog for uml-patch-2.4.26-3.bz2

Release Date : Aug 12 2004

Released By : jdike

This release is made up of the following patches:

  • iomem
    This fixes a bug spotted by the iomem tester in the test suite. mmapper returns -EFAULT if the mmap length is greater than the iomem region size. If that size is less than one page, then mmap can never succeed because the minimum map length is one page. This fixes that by rounding the iomem file size up to the nearest page.
  • wrap_free
    Fixed a couple of fencepost errors noticed by Blaisorblade. The end of range tests should be < rather than <=. Also reworded the comment to make it less misleading.
  • umid-overrun
    From Jim Pick - Fix a one byte buffer overflow in the umid allocation.
  • multiple-includes
    From the Trivial Patch Monkey - eliminate a couple of redundant includes.
  • fix-smp
    Add CONFIG_NR_CPUS conditional on CONFIG_SMP. This fixes the SMP build.
  • move_console_write
    This reverts part of the move-user-code patch. generic_console_write somehow behaves differently when inside chan_kern.c, causing UML to hang.
  • time-warp
    Protect against the host clock moving backwards. If delta goes negative, UML will see a very large number of ticks that need delivering. If that happens, this just sets delta to zero to minimize the damage.
  • load-low
    This makes UML load at 0x8048000 rather than 0xa0000000 when CONFIG_MODE_SKAS is on and CONFIG_MODE_TT is off. This will make it more valgrind-friendly, and also allow much greater physical memory sizes without needing to use highmem.
  • make-static
    This makes a couple of functions in mconsole static because they are not referenced from outside.
  • ifdef-log
    ifdef out log() for a rainy day. Also explain to the mystified what it is for.
  • externfs
    This patch copies a bunch of cleanups that I made in the process of porting externfs, hostfs, and humfs to 2.6. Devices are split into major and minor numbers in the lower-level code, and put back together in externfs just before vfs sees them. This is necessary because the host may have a different idea of how a dev_t is organized than UML does. ubd_user is included here because it uses the uml_stat struct, and was affected by this change. inode.u.hostfs_i is no longer used. Instead, a pointer to the externfs data is hung off inode.u.generic_ip. This data is contained inside the lower-level data in the 2.6 way, and the lower level module used container-of to get its own data. Names were all changed to make sense and to eliminate functions with the same names in different files. So, externfs names contain "externfs" rather than "hostfs", and hostfs and humfs names begin with "hostfs" and "humfs" respectively. void * data items are now gone. externfs no longer knows anything about file handles. Those, if present, are contained in the lower-level data. Because of the 2.6 split between allocating inodes and initializing them, when externfs makes a new inode, it calls both the init and open or create routines in the underlying module.
  • fix-warnings
    This fixes a warning by moving new_mm from a userspace file, which can't know anything about file handles because they have embedded list_heads, to a kernelspace file, which can.
  • link
    From "D. Bahi" @ - remove an unneeded line from the dynamic linker script.
  • catch-eintr
    On various places (mostly waitpid() calls) this patch makes sure that if errno == EINTR on return, then the syscall is endlessly retried. It also defines a simple generic way to do this. Signed-off-by: <blaisorblade_spam at>
  • bb-raw
    Fixes raw() and uses it in check_one_sigio; also fixes a silly panic (EINTR returned by call). Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam at>
  • clean-raw
    This patch cleans up the uses of raw since I was playing with that code anyway. All uses of raw and the associated uses of tcgetattr have their return values checked. raw now prints an error is something went wrong instead of relying on a flag passed in from the caller. The now argument was dropped, and all callers get TCSADRAIN rather than possibly TCSANOW.
  • fork-error
    Clean up the fork code, fixing a bogus return value, and adding some whitespace
  • kernel-stack
    This eliminates use of task.thread.kernel_stack. It was unnecessary, and was masking a bunch of kernel stack size assumptions.
Hosted at SourceForge Logo