File contents
Scientific Linux 5.0 Release Notes
---------------------------------------------------------------------------
Introduction
The following topics are covered in this document:
o Installation-Related Notes
o Technology Previews
o Known Issues
o General Information
o Internationalization
o Kernel Notes
Installation-Related Notes
The following section includes information specific to the installation of
Scientific Linux and the Anaconda installation program.
Note
In order to upgrade an already-installed Scientific Linux, you
must use yum to update those packages that have changed.
You may use Anaconda to perform a fresh installation of Scientific
Linux 5.0 or to perform an upgrade from the latest updated version of
Scientific Linux 4.x to Scientific Linux 5.0.
Note that the minimum RAM required to install Scientific Linux
5.0 has been raised to 1GB; the recommended RAM is 2GB. If a machine has
less than 1GB RAM, the installation process may hang.
ISO Contents and Registration
The architecture of the media kit in Scientific Linux 5.0 has
changed from previous versions of Scientific Linux
The trees contain repositories for a number of options that provide
additional functionality over the core distribution:
o Scientific Linux -- default multi purpose server operating
system containing virtualization with support for up to 4 virtual
instances.
o Scientific Linux Virtualization Platform -- datacenter
virtualization operating system including clustering and cluster
storage
o Scientific Linux Desktop -- Knowledge-worker Desktop product
o Scientific Linux Workstation -- option for engineering and development
workstations
Subversion
In Scientific Linux 5.0, the Subversion version control system is
linked against Berkeley DB 4.3. If you are upgrading from
Scientific Linux 4.x and any Subversion repositories have been created on
the system which use the Berkeley DB backend "BDB" (rather than the pure
file system-based "FSFS" backend), special care must be taken to ensure
the repositories can be accessible after the upgrade. The following
process must be performed on the Scientific Linux 4.x system, prior
to upgrading to Scientific Linux 5.0:
1. Shut down any running processes and ensure that no processes can
access the repository (for example, httpd, svnserve or any local users
with direct access).
2. Create a backup of the repository; for example:
svnadmin dump /path/to/repository | gzip > repository-backup.gz
3. Run the svnadmin recover command on the repository:
svnadmin recover /path/to/repository
4. Delete any unused log files in the repository:
svnadmin list-unused-dblogs /path/to/repository | xargs rm -vf
5. Delete any remaining shared-memory files in the repository:
rm -f /path/to/repository/db/__db.0*
Technology Previews
Technology Previews are features that are not currently supported, but are
made available in a release. Their described functionalities can be
tested; however, the only support to be provided for Technology Previews
are erratas for high-priority security issues.
Throughout its development, additional portions of a Technology Preview
may also become available to the public for testing.
Stateless Linux
Included in this beta of Scientific Linux 5.0 are
enabling infrastructure pieces for Stateless Linux. Stateless
Linux is a new way of thinking about how a system is to be run and
managed, designed to simplify provisioning and management of large
numbers of systems by making them easily replaceable. This is
primarily accomplished by establishing prepared system images
which get replicated and managed across a large number of
stateless systems, running the operating system in a read-only
manner.
In its current state of development, the Stateless features are
subsets of the intended goals. As such, the capability is being
labeled as a technology preview.
The following is a list of the initial capabilities included in
Scientific Linux 5.0 beta:
o running a stateless image over NFS
o running a stateless image via loopback over NFS
o running on iSCSI
It is currently not possible to run Stateless Linux on a local
file system with changes synchronized from a master server, due to
required kernel changes.
It is highly recommended that those interested in testing
stateless code read the HOWTO at
[3]http://fedoraproject.org/wiki/StatelessLinuxHOWTO
GFS2
GFS2 is an evolutionary advancement based on the GFS file system.
While fully functional, GFS2 is not yet considered
production-ready. GFS, which has been in production for 5 years,
is being provided with this release and is fully supported for
non-clustered data file systems (except for root and boot), as
well as in clustered file system configurations on shared storage
when the cluster infrastructure is present. GFS2 is targeted to
move to a fully supported status in a subsequent
Scientific Linux 5.0 update. There is also an in-place conversion
utility, gfs2_convert, which can update the meta data of a GFS
file system, converting it to a GFS2 file system.
FS-Cache
FS-Cache is a local caching facility for remote file systems; it
allows users to cache NFS data on a locally mounted disk. To set
up the FS-Cache facility, install the cachefilesd RPM and refer to
the instructions in /usr/share/doc/cachefilesd-<version>/README.
Replace <version> with the corresponding version of the
cachefilesd package installed.
Compiz
Compiz is an OpenGL-based compositing window manager. In addition
to regular window management, compiz also acts as a compositing
manager. In this role, compiz coordinates and synchronizes the
overall desktop redrawing to provide a smoother desktop experience
with less flicker and a more solid feel.
Compiz uses 3D hardware acceleration to render effects such as
live thumbnail windows and window drop shadows, as well as
animated window minimizing and transitions between virtual
desktops.
Due to limitations in the current rendering architecture, compiz
cannot work correctly with direct rendering OpenGL applications or
applications using the Xv extension. Such applications will
exhibit harmless rendering artifacts; because of this, the feature
is currently not supported fully.
Enhancement for Ext3
In Scientific Linux 5.0, the EXT3 file system capacity
has been extended beyond 8TB to a maximum of 16TB. This capability
is being included as a technology preview, and is targeted for
full support in a future release of Scientific Linux 5.0.
Known Issues
o bind upgrade error: when upgrading bind, a No such file or directory
error may occur. This is caused by an installation sequencing bug,
which will be addressed prior to GA. To work around this, login as
root and run /usr/sbin/bind-chroot-admin --enable (if you have
installed the bind-chroot package) or /usr/sbin/bind-chroot-admin
--sync (if you have installed the caching-nameserver package).
o caching-nameserver upgrade error: when upgrading caching-nameserver,
the logs display an invalid context error. This is caused by a
dependency issue with the selinux-policy package, which will be
addressed prior to GA. To work around this, login as root and run
/usr/sbin/bind-chroot-admin --sync.
o Kernel module packages (kmods) can only be built with kABI
dependencies if they are built on a system for which both the
kernel-devel and the corresponding kernel package are installed. As
such, it is currently not possible to build kABI-enhanced kmods
against uninstalled kernels. This limitation will be addressed prior
to GA.
o Host bus adapters that use the MegaRAID driver must be set to operate
in "Mass Storage" emulation mode, not in "I2O" emulation mode. To do
this, perform the following steps:
1. Enter the MegaRAID BIOS Set Up Utility.
2. Enter the Adapter settings menu.
3. Under Other Adapter Options, select Emulation and set it to Mass
Storage.
If the adapter is incorrectly set to "I2O" emulation, the system will
attempt to load the i2o driver. This will fail, and render the adapter
inoperable.
Previous Scientific Linux releases generally do not attempt to
load the I20 driver before the MegaRAID driver. Regardless of this,
the hardware should always be set to "Mass Storage" emulation mode
when used with Linux.
o ext3 / jbd kernel panic: heavy I/O to file systems where the block
size is smaller than the page size may cause jbd to crash.
This issue is being investigated and will be resolved in GA.
o Virtualization guest installation error: Installing a paravirt guest
on a system with a default ethernet connection on eth1 results in a No
Driver Found error. To work around this, set eth0 as the default
ethernet connection.
This issue is being investigated and will be resolved in GA.
o Anaconda incorrectly selects vesa driver: when Scientific Linux
5.0 is installed in text-only mode on a system with a geforce
5200-based video card, the vesa driver will be selected. This is
incorrect, and will cause the screen to go blank once you run
system-config-display. This issue will be resolved in GA.
To work around this, open xorg.conf and change the line Driver "vesa"
to Driver "nv".
o Virtualization paravirt guest installation failure: attempting to
install a paravirt guest on a system where SELinux is enabled will
fail. This issue is being investigated and will be resolved in GA.
To work around this, turn off SELinux before installing a paravirt
guest.
o Virtualization guest boot bug: when you install a fully virtualized
guest configured with vcpus=2, the fully virtualized guest may take an
unreasonably long time to boot up. This issue is being investigated
and will be resolved in GA.
To work around this, disable the guest ACPI by using the kernel
parameters acpi=strict or acpi=static for the virtualized kernel
during grub boot.
o X Display Server crashes with virtualized kernel: when booting with
the virtualized kernel, the X server will crash upon startup. This
issue is being investigated and will be resolved in GA.
To work around this, edit /etc/X11/xorg.conf by adding the following
line in the ServerLayout section:
Option "Int10Backend" "<mode>"
Replace <mode> with either vm86 (the default when running a bare Linux
kernel) or x86emu (when running a virtualized kernel). This will allow
runtime selection of the int10 execution method.
General Information
This section contains general information not specific to any other
section of this document.
Virtualization
Scientific Linux 5.0 features virtualization capabilities
for i686 and x86-64, as well as the software infrastructure needed
to manage a virtualized environment.
The implementation of virtualization in Scientific Linux 5.0
is based on the hypervisor, which facilitates extremely low
overhead virtualization through paravirtualization. With Intel
Virtualization Technology or AMD AMD-V capable processors,
virtualization in Scientific Linux 5.0 allows operating
systems to run unmodified in fully virtualized mode.
Virtualization on Scientific Linux 5.0 also features the
following:
o Libvirt, a library that provides a consistent, portable API
for managing virtual machines.
o Virtual Machine Manager, a graphical utility for monitoring
and managing virtual machines.
o Virtual machine support in the installer, including the
ability to kickstart virtual machines.
Web Server Packaging Changes
Scientific Linux 5.0 now includes version 2.2 of the
Apache HTTP Server. This release brings a number of improvements
over the 2.0 series, including:
o improved caching modules (mod_cache, mod_disk_cache,
mod_mem_cache)
o a new structure for authentication and authorization support,
replacing the authentication modules provided in previous
versions
o support for proxy load balancing (mod_proxy_balancer)
o support for handling large files (namely, greater than 2GB)
on 32-bit platforms
The following changes have been made to the default httpd
configuration:
o The mod_cern_meta and mod_asis modules are no longer loaded
by default.
o The mod_ext_filter module is now loaded by default.
If upgrading from a previous release of Scientific Linux,
the httpd configuration will need to be updated for httpd 2.2. For
more information, refer to
[5]http://httpd.apache.org/docs/2.2/upgrading.html.
Third-party Modules
Any third-party modules compiled for httpd 2.0 must be rebuilt for
httpd 2.2.
php
Version 5.1 of PHP is now included in Scientific Linux 5.0,
which includes a number of changes to the language along
with significant performance improvements. Some scripts might need
to be edited for use with the new version; please refer to the
link below for more information on migrating from PHP 4.3 to PHP
5.1:
[6]http://www.php.net/manual/en/migration5.php
The /usr/bin/php executable is now built using the CLI
command-line SAPI, rather than the CGI SAPI. Use /usr/bin/php-cgi
for CGI SAPI. The php-cgi executable also includes FastCGI
support.
The following extension modules have been added:
o The mysqli extension, a new interface designed specifically
for MySQL 4.1. This is included in the php-mysql package.
o date, hash, Reflection, SPL and SimpleXML (built-in with the
php package)
o pdo and pdo_psqlite (in the php-pdo package)
o pdo_mysql (in the php-mysql package)
o pdo_pgsql (in the php-pgsql package)
o pdo_odbc (in the php-odbc package)
o soap (in the php-soap package)
o xmlreader and xmlwriter (in the php-xml package)
o dom (replacing the domxml extension in the php-xml package)
The following extension modules are no longer included:
o dbx
o dio
o yp
o overload
o domxml
The PEAR Framework
The PEAR framework is now packaged in the php-pear package. Only
the following PEAR components are included in Scientific Linux 5.0:
o Archive_Tar
o Console_Getopt
o XML_RPC
Building kmod kernel module packages with kernel ABI dependency tracking
On Scientific Linux 5.0, it is possible to build updated
kernel module packages that depend upon the current kernel ABI
version and not on a specific kernel release number. This
facilitates building kernel modules that can be used against a
range of Scientific Linux 5.0 kernels, rather than a
single release. The project website at
[7]http://www.kerneldrivers.org/ contains more information about
the packaging process, as well as several examples.
Encrypted Swap Partitions and Non-root File Systems
Scientific Linux 5.0 now provides basic support for
encrypted swap partitions and non-root file systems. To use these
features, add the appropriate entries to /etc/crypttab and
reference the created devices in /etc/fstab.
Below is a sample /etc/crypttab entry:
my_swap /dev/hdb1 /dev/urandom swap,cipher=aes-cbc-essiv:sha256
This creates the encrypted block device /dev/mapper/my_swap, which
can be referenced in /etc/fstab.
Below is a sample /etc/crypttab entry for a file system volume:
my_volume /dev/hda5 /etc/volume_key cipher=aes-cbc-essiv:sha256
The /etc/volume_key file contains a plaintext encryption key. You
can also specify none as the key file name, at which the system
will ask for the encryption key during boot instead.
It is recommended to use LUKS for setting up file system volumes.
To do this, follow these steps:
1. Create the encrypted volume using cryptsetup luksFormat.
2. Add the necessary entry to /etc/crypttab.
3. Set up the volume manually using cryptsetup luksOpen (or
reboot).
4. Create a file system on the encrypted volume.
5. Add the necessary entry to /etc/fstab.
mount and umount
The mount and umount commands no longer directly support NFS;
there no longer is a built-in NFS client. A separate nfs-utils
package, which provides /sbin/mount.nfs and /sbin/umount.nfs
helpers, must be installed for this.
CUPS printer browsing
CUPS printer browsing over a local subnet can be configured using
the graphical tool system-config-printer. It can also be done
using the CUPS web interface, [8]http://localhost:631/.
To use directed broadcasts for printer browsing between subnets,
open /etc/cups/cupsd.conf on the clients and change BrowseAllow
@LOCAL to BrowseAllow ALL.
Internationalization
This section includes information on language support under
Scientific Linux 5.0.
Input Methods
SCIM (Smart Common Input Method) has replaced IIIMF as the input
method system for Asian and other languages in this release. The
default GTK Input Method Module for SCIM is provided by
scim-bridge; in Qt, it is provided by scim-qtimm.
Below are the default trigger hotkeys for different languages:
o All languages: Ctrl-Space
o Japanese: Zenkaku-Hankaku or Alt-`
o Korean: Shift-Space
If SCIM is installed, it runs by default for all users.
Language Installation
SCIM is installed by default for most Asian installations.
Otherwise, you can use the package manager (pirut) to install
additional language support using the "Languages" component, or
run this command:
su -c 'yum groupinstall <language>-support'
In the command above, <language> can be either Assamese, Bengali,
Chinese, Gujarati, Hindi, Japanese, Kannada, Korean, Malayalam,
Marathi, Oriya,Punjabi, Sinhala, Tamil, Thai, or Telugu.
im-chooser
A new user configuration tool called im-chooser has been added,
which allows you to easily disable or enable the usage of input
methods on your desktop. So if SCIM is installed but you do not
wish to run it on your desktop, you can disable it using
im-chooser.
xinputrc
At X startup, xinput.sh now sources ~/.xinputrc or
/etc/X11/xinit/xinputrc instead of searching config files under
~/.xinput.d/ or /etc/xinit/xinput.d/.
Pango Support in Firefox
Firefox in Scientific Linux 5.0 is built with Pango,
which provides better support for certain scripts, such as Indic
and some CJK scripts.
To disable the use of Pango, set MOZ_DISABLE_PANGO=1 in your
environment before launching Firefox.
Fonts
Support is now available for synthetic emboldening of fonts that
do not have a bold face.
New fonts for Chinese have been added: AR PL ShanHeiSun Uni
(uming.ttf) and AR PL ZenKai Uni (ukai.ttf). The default font is
AR PL ShanHeiSun Uni, which contains embedded bitmaps. If you
prefer outline glyphs, you can add the following section in your
~/.font.conf file:
<fontconfig>
<match target="font">
<test name="family" compare="eq">
<string>AR PL ShanHeiSun Uni</string>
</test>
<edit name="embeddedbitmap" mode="assign">
<bool>false</bool>
</edit>
</match>
</fontconfig>
gtk2 IM submenu
The Gtk2 context menu IM submenu no longer appears by default. You
can enable it on the command line with the following command:
gconftool-2 --type bool --set '/desktop/gnome/interface/show_input_method_menu' true
Support for text installation on CJK
CJK (Chinese, Japanese, and Korean) rendering support has been
removed from the Anaconda text installation. The text installation
method is being deprecated in the long term, as the GUI
installation, VNC and kickstart methods are preferred.
gtk2 stack
The following packages are deprecated and scheduled for removal in
Scientific Linux:
o gtk+
o gdk-pixbuf
o glib
These packages are being deprecated in favor of the gtk2 stack,
which offers better functionality particularly in terms of
internationalization and font handling.
CJK input on console
If you need to display Chinese, Japanese, or Korean on the
console, you need to setup a framebuffer. To do this, install bogl
and bogl-bterm, and run bterm on the framebuffer. Note that the
kernel framebuffer module depends on the graphics chipset in your
machine.
Kernel Notes
This section notes the differences between 2.6.9 (on which Scientific
Linux 4.x is based) and 2.6.18 (which Scientific Linux 5.0
will inherit) as of July 12, 2006. Additional features which we are
currently working on upstream (for example, virtualization) that will
appear late in 2.6.18 or 2.6.19 are not highlighted here. In other words,
this list only shows what is already included in the upstream Linus tree;
not what is currently in development. Consequently, this list is not a
final, or complete list of the new Scientific Linux 5.0 features,
although it does give a good overview of what can be expected. Also, note
that this section only picks out highlights of upstream changes, and as
such it is not fully comprehensive. It does not include mention of several
low-level hardware support enhancements and device driver info.
The following is a good source for a next level-of-detail view:
[9]http://kernelnewbies.org/LinuxChanges
Performance / Scalability
o Big Kernel Lock preemption (2.6.10)
o Voluntary preemption patches (2.6.13) (subset in
Scientific Linux 4)
o Lightweight user-space priority inheritance (PI) support for
futexes, useful for real-time applications (2.6.18)
o ref: [10]http://lwn.net/Articles/178253/
o New 'mutex' locking primitive (2.6.16)
o High resolution timers (2.6.16)
o In contrast to the low-resolution timeout API
implemented in kernel/timer.c, hrtimers provide finer
resolution and accuracy depending on system
configuration and capabilities. These timers are
currently used for itimers, POSIX timers, nanosleep and
precise in-kernel timing.
o Modular, on-the-fly switchable I/O schedulers (2.6.10)
o This was adjustable only by boot option in
Scientific Linux 4 (also system-wide instead of
per-queue).
o New Pipe implementation (2.6.11)
o 30-90% performance improvement in pipe bandwidth
o circular buffer allows more buffering than blocking
writers
o "Big Kernel Semaphore": turns the Big Kernel Lock into a
semaphore
o reduces latency by breaking up long lock hold times and
adding voluntary preemption
o X86 "SMP alternatives"
o optimizes a single kernel image at runtime according to
the available platform
o ref: [11]http://lwn.net/Articles/164121/
o kernel-headers package
o replaces the glibc-kernheaders package
o provides better suitability with the new headers_install
feature of the 2.6.18 kernel
o notable kernel header-related changes:
o removed <linux/compiler.h> header file, as it is no
longer useful
o removed _syscallX() macros; user-space should use
syscall() from the C library instead
o removed <asm/atomic.h> and <asm/bitops.h> header
files; C compiler provides its own atomic built-in
functions better suitable for user-space programs
o content previously protected with #ifdef __KERNEL__
is now removed completely with the unifdef tool;
defining __KERNEL__ in order to view parts which
should not be visible to user-space is no longer
effective
o removed the PAGE_SIZE macro from some
architectures, due to variance in page sizes;
user-space should be using sysconf (_SC_PAGE_SIZE)
or getpagesize()
o to provide better suitability for user-space, removed
several header files and header content
Generic Feature Additions
o kexec and kdump (2.6.13)
o netdump has been replaced by kexec and kdump, which
ensure faster boot-up and creation of reliable kernel
vmcores for diagnostic purposes. For more information
and configuration instructions, please refer to
/usr/share/doc/kexec-tools-<version>/kexec-kdump-howto.txt
(replace <version> with the corresponding version of the
kexec-tools package installed).
o inotify (2.6.13)
o user interface for this is through the following
syscalls: sys_inotify_init, sys_inotify_add_watch, and
sys_inotify_rm_watch.
o Process Events Connector (2.6.15)
o reports fork, exec, id change, and exit events for all
processes to user-space.
o Applications that may find these events useful include
accounting / auditing (for example, ELSA), system
activity monitoring (for example, top), security, and
resource management (for example, CKRM). Semantics
provide the building blocks for features like
per-user-namespace, "files as directories" and versioned
file systems.
o Generic RTC (RealTime Clock) subsystem (2.6.17)
o splice (2.6.17)
o new IO mechanism which avoids data copies when
transferring data between applications
o ref: [12]http://lwn.net/Articles/178199/
o Block queue IO tracing support (blktrace): allows users to
view any traffic occurring on a block device queue, which
displays very detailed statistics of what disks are doing
(2.6.17)
File System / LVM
o EXT3
o ext3 block reservation (2.6.10) (in Scientific Linux 4)
o ext3 online resizing patches (2.6.10) (in
Scientific Linux 4)
o support for Extended Attributes in the body of large
inode in ext3: saves space and improves performance in
some cases (2.6.11)
o Device mapper multipath support (Scientific Linux 4)
o ACL support for NFSv3 and NFSv4 (2.6.13)
o NFS: supports large reads and writes on the wire (2.6.16)
o The Linux NFS client now supports transfer sizes of up
to 1MB.
o FUSE (2.6.14)
o allows implementation of a fully functional file system
in a user-space program
o VFS changes
o The "shared subtree" patches have been merged. (2.6.15)
o ref: [13]http://lwn.net/Articles/159077/
o Big CIFS update (2.6.15)
o features several performance improvements as well as
support for Kerberos and CIFS ACL
o autofs4: updated to provide direct mount support for
user-space autofs (2.6.18)
o cachefs core enablers (2.6.18)
Security
o Address space randomization
o With these patches applied, the stack of each process
will begin at a random location, and the beginning of
the memory area used for mmap() (which is where shared
libraries go, among other things) will be randomized as
well (2.6.12).
o Multilevel security implementation for SELinux (2.6.12)
o Audit subsystem
o support for process-context based filtering (2.6.17)
o more filter rule comparators (2.6.17)
o TCP/UDP getpeersec: enabled a security-aware application to
retrieve the security context of an IPSec security
association that a particular TCP or UDP socket is using
(2.6.17)
Networking
o Added several TCP congestion modules (2.6.13)
o IPv6: supports several new sockopt / ancillary data in
Advanced API (2.6.14)
o IPv4/IPv6: UFO (UDP Fragmentation Offload) Scatter-gather
approach (2.6.15)
o UFO is a feature wherein the Linux kernel network stack
will offload the IP fragmentation functionality of large
UDP datagram to hardware. This will reduce the overhead
of stack in fragmenting the large UDP datagram to
MTU-sized packets.
o Added nf_conntrack subsystem (2.6.15)
o The existing connection tracking subsystem in netfilter
can only handle ipv4. There were two choices present to
add connection tracking support for ipv6; either
duplicate all of the ipv4 connection tracking code into
an ipv6 counterpart, or (the choice taken by these
patches) design a generic layer that could handle both
ipv4 and ipv6 and thus requiring only one sub-protocol
(TCP, UDP, etc.) connection tracking helper module to be
written. In fact, nf_conntrack is capable of working
with any layer 3 protocol.
o IPV6
o RFC 3484 compliant source address selection (2.6.15)
o added support for Router Preference (RFC4191) (2.6.17)
o added Router Reachability Probing (RFC4191) (2.6.17)
o Wireless updates
o hardware crypto and fragmentation offload support
o QoS (WME) support, "wireless spy support"
o mixed PTK/GTK
o CCMP/TKIP support and WE-19 HostAP support
o BCM43xx wireless driver
o ZD1211 wireless driver
o WE-20, version 20 of the Wireless Extensions (2.6.17)
o added the hardware-independent software MAC layer, "Soft
MAC" (2.6.17)
o added LEAP authentication type
o Added generic segmentation offload (GSO) (2.6.18)
o can improve performance in some cases, though it needs
to be enabled through ethtool
o Added new per-packet access controls to SELinux, replacing
the old packet controls
o Added secmark support to core networking, to allow security
subsystems to place security markings on network packets.
(2.6.18)
o DCCPv6 (2.6.16)
Added Hardware Support
Note
This section only enumerates the most generic features among many.
o x86-64 clustered APIC support (2.6.10)
o Infiniband support (2.6.11) (mostly in Scientific Linux 4)
o Hot plug
o added generic memory add/remove and supporting functions
for memory hotplug (2.6.15)
o hot plug CPU support for physically adding new
processors (hotplug disable / enable of already existing
CPUs is already supported)
o SATA/libata enhancements, additional hardware support (in
Scientific Linux 4)
o A completely reworked libata error handler; the result
of all this work should be a more robust SATA subsystem
which can recover from a wider range of errors.
o Native Command Queuing (NCQ), the SATA version of tagged
command queuing - the ability to have several I/O
requests to the same drive outstanding at the same time.
(2.6.18)
o Hotplug support (2.6.18)
o EDAC support (2.6.16) (in Scientific Linux 4)
o The EDAC goal is to detect and report errors that occur
within the computer system.
o Added a new ioatdma driver for the Intel(R) I/OAT DMA engine
(2.6.18)
NUMA (Non-Uniform Memory Access) / Multi-core
o Cpusets (2.6.12)
o Cpusets now provide a mechanism for assigning a set of
CPUs and Memory Nodes to a set of tasks. Cpusets
constrain the CPU and Memory placement of tasks only to
the resources within a task's current cpuset. These are
essential in managing dynamic job placement on large
systems.
o NUMA-aware slab allocator (2.6.14)
o This creates slabs on multiple nodes and manages slabs
in such a way that locality of allocations is optimized.
Each node has its own list of partial, free and full
slabs. All object allocations for a node occur from
node-specific slab lists.
o Swap migration (2.6.16)
o Swap migration allows the moving of physical location of
pages between nodes in a NUMA system while the process
is running.
o Huge pages (2.6.16)
o Added NUMA policy support for huge pages: the
huge_zonelist() function in the memory policy layer
provides a list of zones ordered by NUMA distance. The
hugetlb layer will walk that list looking for a zone
that has available huge pages but is also in the nodeset
of the current cpuset.
o Huge pages now obey cpusets.
o Per-zone VM counters
o provide zone-based VM statistics, which are necessary in
determining what state of memory a zone is in
o Netfilter ip_tables: NUMA-aware allocation. (2.6.16)
o Multi-core
o Added a new scheduler domain for representing multi-core
with shared caches between cores. This makes it possible
to make smarter cpu scheduling decisions on such
systems, improving performance greatly for some cases.
(2.6.17)
o Power saving policy for the CPU scheduler: with
multicore/smt cpus, the power consumption can be
improved by leaving some packages idle while others do
all the work, instead of spreading the tasks over all
CPUs.
( x86 )
--------------
^[[14]1] This material may be distributed only subject to the terms and
conditions set forth in the Open Publication License, v1.0, available at
[15]http://www.opencontent.org/openpub/.
References
Visible links
3. http://fedoraproject.org/wiki/StatelessLinuxHOWTO
5. http://httpd.apache.org/docs/2.2/upgrading.html
6. http://www.php.net/manual/en/migration5.php
7. http://www.kerneldrivers.org/
8. http://localhost:631/
9. http://kernelnewbies.org/LinuxChanges
10. http://lwn.net/Articles/178253/
11. http://lwn.net/Articles/164121/
12. http://lwn.net/Articles/178199/
13. http://lwn.net/Articles/159077/
15. http://www.opencontent.org/openpub/