NOTE:
An upgrade of Oracle Linux from a beta release is not supported. Further,
an in-place upgrade between major versions of Oracle Linux is not supported.
Oracle does not recommend an upgrade from earlier major versions of Oracle
Linux even though anaconda provides an option to do this upgrade. A fresh
installation is strongly recommended rather than a system upgrade between
major versions.

Changes from the Upstream Release

The following RPMs are modified from the upstream release. All changes are
trademark and look/feel related unless otherwise noted below under the specific
RPM.

anaconda — Path of the Distribution changed from RedHat to
Enterprise on the install CDs.

This kernel is available on x86 and x86-64, can only be installed manually (see below for details)

Note:Oracle Linux 5.7 includes both a 32 bit and a 64 bit Unbreakable Enterprise Kernel. Both Unbreakable Enterprise kernel and Red
Hat compatible kernel are installed and the system
boots with Unbreakable Enterprise kernel by default. If needed
/etc/grub.conf can be modifed to make the system boot with Red
Hat compatible kernel by default.

Red Hat Compatible Kernel

This section covers significant changes in the Red Hat compatible kernel in
this release.

Driver Updates from the upstream distribution provider

Network

Added atl1e driver.

Updated 1000e driver to version 1.3.10.

Updated be2net driver to add support for multicast filter on the Lancer family of CNAs.

Updated bna driver to version 2.3.2.3.

Updated bnx2x driver to version 1.62.00-6.

Updated bnx2x firmware to version 6.2.5.0.

Updated bnx2 driver to version 2.0.18+.

Updated cxgb4 and cxgb3 drivers.

Updated e1000 driver to add support for the Marvell Alaska M88E1118R PHY and CE4100 reference platform.

Updated enic driver version 2.1.1.9.

Updated igb driver.

Updated igbvf driver.

Updated ixgbe driver to version 3.2.9-k2 to add support for FCoE and kcq2 support on the 57712 device.

Updated ixgbevf driver to version 2.0.0-k2.

Updated myri10ge driver version 1.5.2.

Updated netxen driver to version 4.0.75 to add support for GbE port settings.

Updated qlcnic driver to version 5.0.13 to add support for large receive offload (LRO) and generic receive offload (GRO).

Updated tg3 driver to version 3.116 and added support for EEE.

Updated iwl6000-firmware to version 9.221.4.1.

Storage

Updated arcmsr driver.

Updated be2iscsi driver.

Updated bfa driver to the current scsi-misc version.

Updated bnx2i driver to version 2.6.2.3.

Updated cciss driver.

Updated ibmvfc driver version 1.0.9.

Updated lpfc driver to version 8.2.0.96.

Updated megaraid driver to version 5.34.

Updated mpt2sas driver to version 08.101.00.00.

Updated mptfusion driver to version to 3.04.18rh.

Updated qla2xxx driver to version 8.03.07.00.05.07.

Updated qla24xx and 25xx firmware is to version 5.03.16.

Red Hat Compatible Kernel with Bug Fixes by Oracle

This is the Red Hat compatible kernel with critical bug fixes produced by Oracle.

The Linux data integrity framework (DIF) enables applications or kernel subsystems to attach metadata to I/O operations, allowing devices that support DIF to verify the integrity before passing them further down the stack and physically committing them to disk. Data Integrity Extensions or DIX is a hardware feature that enables exchange of protection metadata between host operating system and HBA.

Tickless kernel

The Unbreakable Enterprise Kernel is tickless. In the tickless kernel, timer interrupts are performed on demand rather than at a predetermined frequency. This allows CPUs to stay in a low power state when the system is idle, reducing overall power consumption

Task Control Groups (TCG)

TCG can track and group processes into user-defined cgroups so that the operating system can treat them as whole and perform scheduling, accounting, and resourceallocation accordingly. For example, using TCG, you can associate a set of CPU cores and memory nodes to a group of processes that makeup an application or a group of applications. This enables subsetting larger systems, more fine grained control over CPU and memory, and isolation of applications.

Performance Counters for Linux (PCL)

The performance counter subsystem keeps track of hardware and software events without affecting performance and enables you to do tracing and performance analysis. Included is a tool called perf for analysis.

SSD Detection

The kernel block layer will detect devices that claim to be fast,solid state storage and tune itself accordingly. The result of this detection can be found in:

/sys/block/xxx/queue/rotational

Where xxx is the block device. Echoing a 0 or a 1 into this file will force the value to off or on. When assuming a device is an SSD, the block layer will try harder to immediately dispatch the IO to the device.

IO affinity

IO affinity ensures processing of a completed IO is handled by the same CPU that initiated the IO. It can have a fairly large impact on performance, especially on large NUMA machines. IO affinity is turned on by default, but it can be controlled via the tunable in /sys/block/xxx/queue/rq_affinity. For example, the following will turn IO affinity on:

echo 1> /sys/block/sda/queue/rq_affinity

Receive packet steering (RPS)

RPS distributes the load of received packet processing across multiple CPUs. This solution allows protocol processing (e.g. IP and TCP) to be performed on packets in parallel. This removes a bottleneck when a single core is saturated processing network interrupts. To enable receive packet steering for the interface xxx, place a CPU mask into

/sys/class/net/xxx/queues/rx-0/rps_cpus

The cpu mask takes the same form as the masks for the taskset command. For example:

echo 0x55> /sys/class/net/eth0/queues/rx-0/rps_cpus

fallocate()

fallocate() is a new system call which will allow applications to preallocate space to any file(s) in a file system. Applications can get a guarantee of space for particular file(s) - even if later the system becomes full. Using this method of allocation can dramatically speed up the creation of large files such as those used for virtual machine images.

Technology Preview Features

The following Technology Preview features are
currently not supported under Oracle Linux 5 and may not be
functionally complete.

Brocade BFA Fibre-Channel/FCoE driver

FreeIPMI

TrouSerS and tpm-tools

eCryptfs

Stateless Linux

AIGLX

FireWire

SGPIO Support for dmraid

iSER Support

glibc new MALLOC behaviour

These features are not suitable for
production use. However, these features are included to provide the
feature with wider exposure.

Known Issues

Unbreakable Enterprise Kernel version kernel-uek-2.6.32-100.34.1 adds support for paravirtualized drivers in a HVM guest on Oracle VM. Starting with this kernel version, the default is to present only paravirtualized drivers when running in a hardware virtualized guest. To run kernel-uek --including the drivers-- fully hardware virtualized, an additional kernel boot parameter "xen_emul_unplug=never" must be added to the boot parameters in /etc/grub.conf:

yum package need to be updated before upgrading previous update releases of Oracle Linux 5 to Oracle Linux 5 Update 7 using yum from ULN. Please use the following steps to upgrade:

# yum update yum
# yum update

Default kernel after upgrade

In certain upgrade scenerios after upgrade Unbreakable Enterprise Kernel may not be the default boot kernel. Update /etc/grub.conf to make latest Unbreakable Enterprise Kernel as the default boot kernel.

kernel-uek-headers on Unbreakable Linux Network (ULN)

Package kernel-uek-headers is available in "Enterprise Linux 5 Add ons (x86_64)" (el5_x86_64_addons) channel on ULN.
To install kernel-uek-headers subscribe to el5_x86_64_addons channel and
install kernel-uek-headers using following command

# up2date kernel-uek-headers
or
# yum install kernel-uek-headers

To replace kernel-uek-headers with kernel-headers

make sure system is not subscribed to el5_x86_64_addons channel

remove package kernel-uek-headers using following command

rpm -ev --nodeps kernel-uek-headers

Install kernel-headers package using following command

# up2date kernel-headers
or
# yum install kernel-headers

Missing kernel module ib_iser.ko

Starting OpenFabrics Enterprise Distribution 1.4.2-5 version (ofa package), ib_iser kernel module is not built as part of ofa package. If the ofa package installed on the system tries to load ib_iser.ko, the following message will be displayed on the console

To set the serial console a hardware virtualized (HVM) guest use following settings in the guest:

On the kernel boot line in grub.conf, add:

console=tty0 console=ttyS0,57600n8

add the following to /etc/securetty

ttyS0

add the following to /etc/inittab

co:2345:respawn:/sbin/agetty ttyS0 57600 vt100-nav

Console appears to hang while booting on certain systems (10094052)

On some hardware, the console may appear to hang during the boot process after starting udev. But the system does boot up properly and is accessible. A workaround to this problem is to add nomodeset as a kernel boot parameter in /etc/grub.conf:

To workaround this issue reconfigure X using command "X -configure" and use generated configuration file to start X environment.

Higher memory is required for crashkernel option

With Unbreakable Enterprise Kernel higher memory setting is required for crashkernel option in /etc/grub.conf file. Booting with crashkernel=128M@16M will result in following error:

crashkernel reservation failed - memory is in use

Minimum value for crashkernel option is 128M@32M. Based on the system configuration a higher value may be required. If kdump service loading fails increase the second value (32M). If the system hangs or crashes with out of memory during dumping core increase the first value (128M)

Default IO scheduler

For the Unbreakable Enterprise Kernel, the default IO scheduler is the 'deadline' scheduler.
For the Red Hat Compatible Kernel, the default IO scheduler is the 'cfq' scheduler.

sched_yield() settings for CFS

For the Unbreakable Enterprise Kernel, kernel.sched_compat_yield=1 by default.
For the Red Hat Compatible Kernel, kernel.sched_compat_yield=0 by default.

High IO loads on NFS using mmap may fail (11071875)

In some instances, large IO loads on NFS that use mmap may fail and cause the kernel to panic with
a message like:

The following error may be encountered while mounting an NFS filesystem:

"SVC: FAILED TO REGISTER LOCKDV1 RPC SERVICE (ERRNO 97)."

This is an informative message and can be ignored

Warning message when kdump starts

When kdump starts, you may see the following warning message:

WARNING: No modules scsi_mod found for kernel 2.6.32-200.13.1.el5uek.x86_64, continuing anyway

This warning can be ignored. The kdump service does get started and a vmcore does get generated.

Unable to remove direcory during boot

Following message during boot can be ignored as selinux does not allow to recreate login subdir and hence directory should not be removed for dovecot:

Error :
"rm: cannot remove `/var/run/dovecot/login': Is a directory "

Warning during kernel install

Following warnings during kernel install can be ignored:

WARNING: No module ehci-hcd found for kernel 2.6.32-200.10.3.el5uek, continuing anyway
WARNING: No module ohci-hcd found for kernel 2.6.32-200.10.3.el5uek, continuing anyway
WARNING: No module uhci-hcd found for kernel 2.6.32-200.10.3.el5uek, continuing anyway

Upgrade ocfs2 and oracleasm kernel modules

ocfs2 and oracleasm kernel modules will not be automatically updated during upgrade of Oracle Linux 5 as package name for these modules contains kernel version in it. These packages need to be updated manulaly after the upgrade.

device-mapper-multipath package for Red Hat compatible kernel

Unbreakable Enterprise Kernel requires kpartx and device-mapper-multipath RPMs that are newer than those provided for the Red Hat compatible kernel. By default device-mapper-multipath-0.4.9-23.0.9.el5 and kpartx-0.4.9-23.0.9.el5 are installed. These updated versions of kpartx and device-mapper-multipath are supported with the Red Hat compatible kernel. The original RPMs for the Red Hat compatible kernel (kpartx-0.4.7-46.el5 and device-mapper-multipath-0.4.7-46.el5) are also included on the Oracle Linux 5.7 ISO in directory Server/oracle_updated.

The instructions for installing the versions of kpartx and device-mapper-multipath to go with the Red Hat compatible kernel via ULN are as follows:

Get the Red Hat compatible version of device-mapper-multipath package

From Oracle Linux ISO image

Mount Oracle Linux 5.7 DVD

Copy the rpms from mount_point/Server/oracle_updated to your system

From ULN

Make sure you are subscribed to the Oracle Linux 5 Latest channel or at least the Oracle Linux 5 Update 7 Patch channel on ULN

This happens because a kernel-xen package update
is needed by the xen package, but 'kernel*' is part of the up2date
pkgSkipList. To get around this, add 'xen;xen-devel;' to the the
pkgSkipList line in /etc/sysconfig/rhn/up2date and then run up2date. You
can update the xen and kernel-xen packages together later via 'up2date --force
xen kernel-xen'.

Oracle Linux Support

Oracle Linux offers an option to keep your operating system up to date with latest operating system patches using up2date. To access Linux updates via Unbreakable Linux Network, you must purchase a Linux support subscription.For more information please visit http://linux.oracle.com

Note: Prior to using up2date, import the RPM-GPG-KEY for Oracle Linux: