Shiloh Distributed Solutions Pty/Ltd
MOSIX
Cluster and Multi-Cluster Management

Home       Services       Updates       License       Prices

Updates - New Features and Bug-Fixes





Below is a log of MOSIX2 updates: subscribers to our support services are invited to review this log and request a copy of the latest MOSIX release from mosix (at) mosix.com.au whenever interested in an update.

The latest release of MOSIX2 is 2.26.0.0


2.26.0.0 (Jun 23, 2009)
  • Using Linux kernel 2.6.30
  • Support new system-calls: dup3(), pipe2(), preadv(), pwritev()
  • Support new security enhancements to open(), fcntl(), socket(), socketpair() accept()
  • The 'c' key in mon shows whether nodes have 32-bit or 64-bit systems
  • New security options in MRC
  • Additional ioctl() functionality in direct-communication
  • New user-guide included
  • Fixed a kernel bug that sometimes produced core-dumps (even after programs terminated successfully)

2.25.1.3 (Apr 29, 2009)
  • Using Linux kernel 2.6.29.2 (still supporting 2.6.28; 2.6.28.5-8; 2.6.29)
  • Fixed the bug of missing SIGIOs in assynchroneous direct-communication
  • Fixed a bug in queueing which reduced the dispersing of jobs in a multi-cluster

2.25.1.2 (Apr 22, 2009)
  • Fixed kernel bugs
  • Fixed a bug in remote fork()

2.25.1.1 (Apr 5, 2009)
  • Fixed a bug in time()

2.25.1.0 (Apr 1, 2009)
  • Using Linux kernel 2.6.29 (also 2.6.28.5-8)
  • New program - timeof, to find how much CPU-time a migratable process accumulated
  • Fixed kernel bugs
  • MOSIX may now start even when the MOSIX kernel-patch is not installed (or is of an incorrect version), providing minimal functionality such as "mon" and "mosrun -E".
  • Fixed bugs in listen() and accept() (bugs were present only in 64-bit code)
  • Added the flag "mosrun -g" for system-administrators that wish to limit/condition the use of mosrun.
  • Refinement in choosing an initial process-assigment (mosrun -b)
  • MRC - A new program to run jobs on other nodes (not necessarily within the same MOSIX multi-cluster) with access to files exported from the caller's node (MRC is still in Beta-testing stage)

2.25.0.1 (Jan 11, 2009)
  • Fixed a bug in the -i flag of "mosrun -E"

2.25.0.0 (Dec 29, 2008)
  • Using Linux kernel 2.6.28
  • Fixed incompatibility of the MOSIX kernel patch with kernel option "CONFIG_HIGH_RES_TIMERS" (High Resolution Timer Support")
  • A new qeueing option to allow a minimum number of running-jobs per user
  • Added an additional freezing state ("preempted")
  • Fixed bugs in the faccessat() and fchmodat() system calls
  • Providing 32-bit lzop program even for 64-bit systems (because not all Linux distributions have the neeeded libraries by default)

2.24.2.4 (Nov 27, 2008)
  • Fixed kernel bugs
  • Using Linux kernel 2.6.27.7

2.24.2.3 (Oct 17, 2008)
  • Using Linux kernel 2.6.27.1 (2.6.25.10 and 2.6.26.1 are also supported)

2.24.2.2 (Aug 7, 2008)
  • Fixed a bug in 32-bit kernels that caused occassional disconnections of remote MOSIX processes

2.24.2.1 (Aug 4, 2008)
  • Using Linux kernel 2.6.26.1 (2.6.25.10 and 2.6.26 are also supported)
  • Installation script compatible with the "dash" shell
  • Fixed occassional (and incorrect) "segfault" messages on console
  • setrlimit(RLIMIT_FSIZE) does not interfere with mosrun functionality
  • Fixed a bug that sometimes caused the loss of a "SIGPIPE" signal
  • Fixed a freezing issue in multi-clusters

2.24.2.0 (Jul 18, 2008)
  • Using Linux kernels 2.6.25.10 and 2.6.26
  • Adjusted installation script for MOSIX to start correctly on Linux distributions that use the new LSB standard
  • Enhancements to direct-communication filtering
  • Fixed a bug in old versions of the stat() system-call
  • Fixed inconsistency in getrlimit/setrlimit(RLIMIT_NOFILE)

2.24.1.0 (Jul 1, 2008)
  • Supporting also Linux kernels 2.6.25.5-9
  • Cleaned up and simplified the cluster/multi-cluster topology and network-tuning
  • Added a return value to direct-communication ioctl(SIOCINTERESTED)
  • Fixed a bug in setpe, which previously sometimes did not work when the default language was other than English
  • Improved processor-speed detection
  • Added the testload program to the MOSIX distribution

2.24.0.0 (May 14, 2008)
  • Using Linux kernel 2.6.25 (also 2.6.25.1-4)
  • Fixed a bug in setsockopt(SOL_SOCKET, SO_ATTACH_FILTER)
  • Fixed a rare bug with signal-handling (64-bit only)
  • New option, "mosctl shutdown"
  • New option "mosrun -[E|M] -i", improving input-redirection for batch jobs
  • Direct-communication supports the writev() system call
  • Work around a bug in later versions of the glibc library that occassionaly prevented "mosrun -S" from running correctly

Checkpoints made by earlier MOSIX versions cannot be retrieved by MOSIX version 2.24.0.0 and later versions

2.23.1.0 (Mar 13, 2008)
  • New ADMINISTRATOR-GUIDE document included.
  • Bug fixes in queuing
  • Bug fixes in freezing
  • Improvements in installation script
  • Improvements in mosconf
  • Default maximum number of guests from other clusters is now 8 times the number of processors (previously fixed as 10)
  • Bug fix regarding partitions of other clusters in a multi-cluster system
  • Bug fix, preventing automatic freezing during execve()
  • Bug fix - no longer need to set up "/etc/mosix/mosip" when the default language is other than English
  • Bug fix - no longer need to synchronize the date/time with NFS server (when "/var" is on NFS)
  • Can also be used with Linux kernel 2.6.24.3

2.23.0.0 (Feb 18, 2008)
  • Using Linux kernel 2.6.24.2
  • New feature: cluster partitions (sub-clusters)
  • Direct-communication supports the readv() system call
  • Supporting the system call fadvise()
  • Fixed a bug with queueing for users with UID >= 65536

2.22.10.0 (Jan 7, 2008)
  • Added a filtering facility in direct communication

2.22.9.2 (Dec 26, 2007)
  • Bug fixes in mospipe

2.22.9.1 (Dec 21, 2007)
  • Using Linux kernel 2.6.23.12
  • mosqueue now consumes much less memory
  • Improved logging

2.22.9.0 (Dec 17, 2007)
  • 64-bit support for the x86_64 architecture
  • Possible to mix 32-bit and 64-bit nodes
  • Using Linux kernel 2.6.23.11
  • Several bug fixes
  • Support new system-call fallocate()

2.21.2.9 (Sep 18, 2007)
  • Fixed a bug in ioctl(SIOCGIFCONF)
  • Support ioctl's SIOCGIFADDR and SIOCGIFNETMASK

2.21.2.8 (Aug 27, 2007)
  • Fixed a bug when a multi-clusters contains many clusters and some are down

2.21.2.7 (Aug 23, 2007)
  • Using Linux kernel 2.6.22.5
  • Fixed a bug in rejoining disconnected clusters (in multi-clusters)
  • Fixed bugs in listxattr()/getxattr()/setxattr()/removeaxattr()
  • support all new "TIOCLINUX" ioctl() functions

2.21.2.6 (Aug 17, 2007)
  • Using Linux kernel 2.6.22.3
  • Removed dependency on "libpam"

2.21.2.5 (Aug 14, 2007)
  • Using Linux kernel 2.6.22.2
  • Fixed bugs in sendto()/recvfrom()

2.21.2.4 (Aug 12, 2007)
  • Increased the message-size limit on send()/sendto()/recv()/recvfrom()/sendmsg()/recvmsg() from 1MB to 32MB

2.21.2.3 (Aug 8, 2007)
  • Fixed bugs in direct communication

2.21.2.2 (July 27, 2007)
  • Fixed a rare bug in socket() and socketpair()

2.21.2.1 (July 12, 2007)
  • Using Linux kernel 2.6.22.1
  • Fixed a bug in migrating while in accept()

2.21.2.0 (July 10, 2007)
  • New feature: direct communication - migratable sockets between MOSIX processes
  • New utility: mospipe - using direct communication to implement migratable pipes
  • Using Linux kernel 2.6.22
  • Increased queuing support for multi-processors from 16 to 32 CPUs
  • Supporting the new system call utimensat
  • Reduced the amount of network-noise in multi-clusters with non-responding clusters
  • Updated the MOSIX(7) manual

2.21.1.7 (July 4, 2007)
  • Fixed a bug in wait() when there are no more child processes

2.21.1.6 (June 8, 2007)
  • Using Linux kernel 2.6.21.3
  • Fixed deadlock problem in kernel

2.21.1.5 (May 27, 2007)
  • System-calls futex(), set_robust_list() and get_robust_list() now always return -1 with errno set to ENOSYS - this is in support of the new library, libc version 6

2.21.1.4 (May 24, 2007)
  • Using Linux kernel 2.6.21.2

2.21.1.3 (May 12, 2007)
  • Fixed a bug in waitpid (race with SIGCHLD)

2.21.1.2 (May 9, 2007)
  • allow mnemonic tokens as Job-ID's according to $HOME/.jobids (in mosrun; mosps; migrate; moskillall)
  • Fixed a bug in mosps -J

2.21.1.1 (May 9, 2007)
  • Fixed a bug in handling remote signals

2.21.1.0 (May 8, 2007)
  • Using Linux kernel 2.6.21.1
  • Fixed a bug in access() of Private Temporary Files
  • Fixed a bug in utimes()
  • Fixed a problem with logging under newer glibc libraries
  • Reduced locking in kernel
  • Support the following new system calls: mkdirat(), mknodat(), fchownat(), futimesat(), fstatat64(), unlinkat(), renameat(), linkat(), symlinkat(), readlinkat(), fchmodat(), faccessat(), pselect(), ppoll(), splice(), tee(), sync_file_range()

2.21.0.0 (Apr 26, 2007)
  • Using Linux kernel 2.6.21
  • Support new openat() system call
  • Documented mosrun-logging option and added it to mosconf
  • Improved the algorithm for detecting other clusters

2.20.0.0 (Apr 22, 2007)
  • New algorithm for robustness of multiple configuration-changes

2.19.2.0 (Apr 13, 2007)
  • Support some Java features (/proc/self/exe and /proc/self/maps)

2.19.1.0 (Apr 1, 2007)
  • mosix.install now calls mosconf
  • Fixed a bug in waitpid()
  • More details in logging mosrun

2.19.0.4 (Mar 29, 2007)
  • Fixed a bug in timing of waiting for child processes

2.19.0.3 (Mar 25, 2007)
  • Using Linux kernel 2.6.20.4

2.19.0.2 (Mar 12, 2007)
  • Using Linux kernel 2.6.20.2

2.19.0.1 (Mar 7, 2007)
  • Fixed a bug that could cause sporadic "Lost communication" failures after remote fork

2.19.0.0 (Mar 1, 2007)
  • Fixed a problem with kernel reporting unnecessary ignored signals

2.18.1.3 (Feb 28, 2007)
  • Fixed a minor bug that could occur after setuid and similar calls failed

2.18.1.2 (Feb 27, 2007)
  • Fixed a bug that sometimes caused wait() to fail when SIGCLD was pending

2.18.1.1 (Feb 21, 2007)
  • Added logging facility (by creating the file /etc/mosix/.log_mosrun)
  • Improved robustness of queuing on networking failures

2.18.1.0 (Feb 20, 2007)
  • account for new Linux system-calls

2.18.0.1 (Feb 15, 2007)
  • Fixed a bug that could occur when a program used a huge number of separate memory segments

2.18.0.0 (Feb 6, 2007)
  • Using Linux kernel 2.6.20
  • Fixed a bug in VDSO interface

Checkpoints made by earlier MOSIX versions cannot be retrieved by MOSIX version 2.18.0.0 and later versions

2.17.1.1 (Feb 1, 2007)
  • Fixed a bug in mosenv

2.17.1.0 (Jan 19, 2007)
  • Correct recovery procedure in mosixd after the "/var" partition was full and space there is available again
  • New feature, mosctl nologmap to prevent console-messages/kernel-logging every time the MOSIX map changes

2.17.0.5 (Jan 18, 2007)
  • Fixed a bug in handling the queue when the "/var" partition is full
  • Fixed a bug in handling some unusual combinations of IP addresses in a multi-cluster of 3 or more clusters

2.17.0.3 (Jan 12, 2007)
  • Using Linux kernel 2.6.19.2

2.17.0.1 (Jan 5, 2007)
  • Fixed a bug in "nohup mosrun"

2.17.0.0 (Jan 4, 2007)
  • A new interactive configuration script, called mosconf, guiding the system-administrator through the steps of configuring MOSIX
  • Re-arranged "man mosix"

2.16.0.4 (Jan 3, 2007)
  • Fixed bugs in remote-fork under heavy load
  • Fixed a bug in freezing non-SU processes (this bug existed since 2.16.0.2)
  • Fixed a bug crashing mosrun when hundreds of son-processes die at once
  • Fixed a potential kernel deadlock when hundreds of MOSIX processes are created or migrate at once
  • When the "mmap" or "fork" system-calls fail due to lack of remote resources, instead of allowing them to fail - migrating the process back home and retrying the system-call in the home-node

2.16.0.3 (Dec 22, 2006)
  • Work-around NFS locking-problem when freezing processes on an NFS partition

2.16.0.2 (Dec 15, 2006)
  • Using Linux kernel 2.6.19.1
  • Fixed a bug in expelling guest-processes on shutdown
  • The "lzop" compression program is now automatically installed

Checkpoints made by earlier MOSIX versions cannot be retrieved by MOSIX version 2.16.0.2 and later versions

2.15.3.5 (Nov 20, 2006)
  • Queued processes (mosqueue) now shown by "ps"/"mosps" with their correct user-ID
2.15.3.4 (Nov 20, 2006)
  • Cleaned distribution of old and unncessary files (including the 2.6.16 kernel patch)
2.15.3.3 (Nov 16, 2006)
  • Default kernel is 2.6.17.14
2.15.3.2 (Nov 16, 2006)
  • Fixed a bug in handling the "getcwd" system-call (affecting matlab)
  • Fixed a Linux-kernel security bug (2.16.13-2.6.17.4)
2.15.3.1
  • Documented /etc/mosix/maxguests in "man mosix"
2.15.3.0 (Nov 8, 2006)
  • Standardized, fixed bugs and documented what happens to the arguments of a recursive mosrun (mosrun {args} mosrun)
  • Fixed a problem with "mosrun -q mosrun -q {program}"
  • Updated the MOSIX manual about the possibility of /proc/self/unsupportok having the value of 2
  • Refreshed the distribution README file
2.15.2.0 (Nov 7, 2006)
  • NEW FEATURE - Private Temporary Files: allows processes to create and use files that migrate with them, thus preventing the need to send I/O requests to their home-node
  • mosps also shows "native" processes
  • More robust handling of the case when a process attempts migrating to a node with insufficient memory
  • A process that failed to arrive back home because there is insufficient memory there, is not killed if the migration was only due to load-balancing or similar automatic optimizations
  • Appropriate message is displayed if a process is killed because it failed to arrive back home

Checkpoints made by earlier MOSIX versions cannot be retrieved by MOSIX version 2.15.2.0 and later versions

2.15.1.3
  • mosix.install copies file-permissions (thus fixing wrong permissions from older versions)
2.15.1.2 (Oct 30, 2006)
  • Fix permission of /bin/native
2.15.1.1 (Oct 24, 2006)
  • Bug fixes in mosrun handling "native" code
2.15.1.0 (Oct 17, 2006)
  • NEW FEATURE - mosctl cngpri for easy and immediate changing of the priority of multi-cluster partners
2.15.0.4
  • Updated README
2.15.0.2
  • mosix.install provides an express-configuration option (when there is no previous MOSIX configuration)
  • Changed wording of installation-script (mosix.install)
2.15.0.1
  • Increased the amount of time needed for local activities to expel guests from other clusters (the feature was too sensitive to some Linux daemons)
2.15.0.0 (Oct 15, 2006)
  • MOSIX2 released
  • Kernel and mosixd recognize Intel multi-core (up to 8 cores)
  • Overcome new version of "glibc" attempt to hijack signalling system-calls
2.14.0.1
  • Fixed "mosix.install" to chmod u+s /bin/mosps
  • Support dynamic changes to the total-memory (for virtual machines)
2.14.0.0
  • Fixed a kernel bug that caused guest processes to leave when the configuration changed and maxguests was 1
2.13.2.2
  • Fixed a bug in recovering checkpointed files
2.13.2.1
  • mosrun -S -q spawns up to 10 "mosqueue" jobs at a time
2.13.2.0
  • mosrun -S -q spawns only one "mosqueue" job at a time, saving lots of memory for huge jobs!
2.13.1.3
  • mosrun -S' scripts now accept shell (bash) commands
  • Default kernel is 2.6.17
2.13.1.2
  • Kernels 2.6.16 and 2.6.17 included
2.13.1.1
  • Fixed a bug in handling the "vfork" system-call
2.13.1.0
  • Fixed a bug that improperly allowed freezing during "vfork"!
  • When qmd fails (or is stopped), "mosqueue" now retries to rejoin the queue rather than abort
2.13.0.2
  • Fixed a bug in mosrun -b mosrun



About Compatibility Between MOSIX Versions

The MOSIX version number contains 4 digits.

Files from MOSIX distributions where only the last digit differs, can be freely mixed. It is even possible to replace individual MOSIX binaries without stopping MOSIX. Process-Migration is possible between nodes of older and newer versions.

When upgrading to a new MOSIX version where the third digit of the version is different (but the first two digits are identical), all user-level MOSIX programs must be replaced at once. Process-Migration will be refused between nodes of such different versions. Long-running old processes from previous MOSIX releases should usually continue running and complete successfully on their home-node, but without migrating. It is highly recommended that MOSIX be stopped (/etc/init.d/mosix stop) before the installation and started again (/etc/init.d/mosix start) afterwards. Upgrading the kernel is optional and can be postponed to a convenient time.

When the first or second digits of the MOSIX version number are different, a new kernel must be prepared and a reboot is mandatory.

Back to MOSIX.com.au home page