CentOS AS 3 Update 1 Release Notes

   Copyright (c) 2004 Red Hat, Inc.
   Copyright (c) 2005 CentOS Project.

     ----------------------------------------------------------------------

Introduction

   The following topics are covered in this document:

     o Changes to the CentOS installation program
       (Anaconda)

     o General information

     o Changes to drivers and hardware support

     o Changes to packages

Changes to the CentOS Installation Program (Anaconda)

   The following section includes information specific to the CentOS
  installation program, Anaconda.

  Note

   In order to upgrade an already-installed CentOS 3 system
   to Update 1, you must use yum to update those packages that
   have changed. The use of Anaconda to upgrade to Update 1 is not supported.

   Use Anaconda only to perform a fresh install of CentOS 3
   Update 1.

     o If you are copying the contents of the CentOS 3
       Update 1 CD-ROMs (in preparation for a network-based installation, for
       example) be sure you copy the CD-ROMs for the operating system only.
       Do not copy the Extras CD-ROM, or any of the layered product CD-ROMs,
       as this will overwrite files necessary for Anaconda's proper
       operation.

       These CD-ROMs must be installed after CentOS has
       been installed.

     o CentOS 3 Update 1 includes a new subdirectory of the
       RedHat directory present on CD-ROM #1. This subdirectory, named
       Updates, contains all packages that have been added or updated during
       a quarterly update. Anaconda has also been modified to search the
       Updates subdirectory during installations and upgrades.

General Information

   This section contains general information not specific to any other
   section of this document.

     o The SCSI standard requires that all SCSI devices respond to Logical
       Unit Number (LUN) zero. Some SCSI devices fail when they are scanned
       for Logical Unit Numbers (LUNs) greater than zero. Other devices
       require that LUNs must be numbered sequentially.

       The CentOS 3 Update 1 kernel contains a list of
       devices that have been tested and shown to work correctly when scanned
       for non-zero LUNs, and non-sequential LUNs. Only devices on this list
       are scanned by default. This default behavior can be overridden on a
       system-wide basis by adding the following entry to the
       /etc/modules.conf file:

       options scsi_mod max_scsi_luns=255

       After modifying modules.conf, it is necessary to rebuild the initial
       ramdisk file using the mkinitrd script. Refer to mkinitrd man page
       (using the command man mkinitrd) for more information about creating
       the initial ramdisk image.

       When this option is used, the LUN numbers on the device must be
       assigned sequentially, starting with zero.

     o Notes on Application Compatibility in CentOS 3
       Update 1

       The POSIX standard defines interfaces to lock files or parts of files
       to ensure that they are not concurrently changed by other programs.
       The fcntl() interface with the F_GETLK, F_SETLK, and F_SETLKW
       interfaces can be used for this purpose. The standard defines that
       attempts to lock an already locked file from another process must
       fail. Also part of POSIX is the lockf() interface, which serves the
       same purpose. Not in POSIX, but falling into the same category, is the
       flock() interface.

       The original kernel in the initial CentOS 3 release
       not only prevents locking of the file from other processes, it also
       prevents locking from other threads in the same process. This is not
       correct and does not correspond to the behavior in the 2.6 Linux
       kernel and correct POSIX semantics. The kernel update in CentOS
       3 Update 1 introduces the correct behavior for
       programs using NPTL. There is no impact to programs that use
       LinuxThreads nor to programs that are not multi-threaded.

       A side effect of the original CentOS 3 kernel is
       that the l_pid field, which is part of the flock structure which is
       returned by a call to fcntl() with the F_GETLK command, contains a
       kernel-internal number of the thread. With the CentOS 3 Update 1 
       kernel, this field contains the process ID for all
       threads of the process.

       If a non-POSIX-compliant multi-threaded application uses the NPTL
       library (which is the default), and that application performs file
       locking with the fcntl() system call, it is possible that the
       application might not work as originally intended when the CentOS
       3 Update 1 kernel is used. CentOS recommends that
       any such application be re-qualified on the updated kernel, and if a
       problem is encountered, one of the following courses of action should
       be taken:

       1) Set the LD_ASSUME_KERNEL environment variable to "2.4.19" for the
       application process to prevent it from using the NPTL library. Note
       that if the application doesn't reset the LD_ASSUME_KERNEL environment
       variable, this setting is inherited by all child processes.

       2) Modify the application so that it no longer expects behavior that
       is inconsistent with POSIX compliance. This will improve the program's
       overall portability.

       CentOS believes that few (if any) multi-threaded applications will be
       negatively impacted by the file locking fixes contained in the updated
       kernel.

       Similar problems exist with the kernel functionality that provides
       credentials for transport for Unix sockets and the System V message
       queues, semaphores, and shared memory. In the first case, calls such
       as:

       getsockopt (fd, SOL_SOCKET, SO_PEERCRED, &caller, &optlen)

       return information in the structure caller, which is of type struct
       ucred. This structure contains a field pid. In the original CentOS
       3 kernel, this field was filled with a
       kernel-internal value representing the thread that sent the data. With
       CentOS 3 Update 1, the field correctly contains the
       process ID -- in other words, the same value for all threads in a
       process.

       The struct msqid_s type, defined in <sys/msq.h>, which is used to get
       information about a System V message queue, contains the fields
       msg_lspid and msg_lrpid. Both fields previously contained a
       kernel-internal value, whereas now they correctly contain the PID of
       the process calling msgsnd() and msgrcv() respectively.

       When the GETPID command, defined in <sys/sem.h>, is used with the
       semctl() function, the original CentOS 3 kernel
       returned a kernel-internal value. As of CentOS 3
       Update 1, the returned value is the process ID.

       The struct shmid_s type, defined in <sys/shm.h>, which is used to get
       information about a System V shared memory segment, contains the
       fields shm_lpid and shm_cpid. Both fields previously contained
       kernel-internal values; now they correctly contain the PID of the
       process performing the last operation, and creating the segment,
       respectively.

Changes to Drivers and Hardware Support

   This update includes bug fixes for a number of drivers. The more
   significant driver updates are listed below. In some cases, the original
   driver has been preserved under a different name, and is available as a
   non-default alternative for organizations that wish to migrate their
   driver configuration to the latest versions at a later time.

  Note

   The migration to the latest drivers should be completed before the next
   CentOS update is applied, because in most cases only one
   older-revision driver will be preserved for each update.

   IBM ServeRAID (ips driver)

     o The scsi/ips driver has been updated from 6.00.26 to 6.10.52

     o The older driver has been preserved as addon/ips_60026

   LSI Logic RAID (megaraid driver)

     o The scsi/megaraid driver has been updated from v1.18j to v1.18k

     o The scsi/megaraid2 driver has been updated from v2.00.5 to v2.00.9

   C-Media PCI audio driver (cmpci driver)

     o The sound/cmpci driver has been updated from Revision 5.64 to 6.36

     o The older driver has been preserved as addon/cmpci_564

   Intel PRO/1000 (e1000 driver)

     o The e1000 driver has been updated from 5.1.11-k1 to 5.2.20-k1

   Intel PRO/100 (e100 driver)

     o The e100 driver has been updated from 2.3.13-k1-1 to 2.3.30-k1

Changes to Packages

   This section contains listings of packages that have been updated or added
   from CentOS 3 as part of Update 1.

  Note

   These package lists include packages from all variants of CentOS 3.
   Your system may not include every one of the packages listed here.

   The following packages have been updated from the original release of
   CentOS:

     o XFree86

     o XFree86-100dpi-fonts

     o XFree86-75dpi-fonts

     o XFree86-ISO8859-14-100dpi-fonts

     o XFree86-ISO8859-14-75dpi-fonts

     o XFree86-ISO8859-15-100dpi-fonts

     o XFree86-ISO8859-15-75dpi-fonts

     o XFree86-ISO8859-2-100dpi-fonts

     o XFree86-ISO8859-2-75dpi-fonts

     o XFree86-ISO8859-9-100dpi-fonts

     o XFree86-ISO8859-9-75dpi-fonts

     o XFree86-Mesa-libGL

     o XFree86-Mesa-libGLU

     o XFree86-Xnest

     o XFree86-Xvfb

     o XFree86-base-fonts

     o XFree86-cyrillic-fonts

     o XFree86-devel

     o XFree86-doc

     o XFree86-font-utils

     o XFree86-libs

     o XFree86-libs-data

     o XFree86-sdk

     o XFree86-syriac-fonts

     o XFree86-tools

     o XFree86-truetype-fonts

     o XFree86-twm

     o XFree86-xauth

     o XFree86-xdm

     o XFree86-xfs

     o anaconda

     o anaconda-runtime

     o ant

     o ant-devel

     o ant-libs

     o clumanager

     o compat-gcc

     o compat-gcc-c++

     o compat-gcc-g77

     o compat-gcc-objc

     o compat-libstdc++

     o compat-libstdc++-devel

     o cpp

     o devlabel

     o elilo

     o ethereal

     o ethereal-gnome

     o freeradius

     o freeradius-mysql

     o freeradius-postgresql

     o freeradius-unixODBC

     o gcc

     o gcc-c++

     o gcc-g77

     o gcc-gnat

     o gcc-java

     o gcc-objc

     o gdb

     o glibc

     o glibc-common

     o glibc-debug

     o glibc-devel

     o glibc-headers

     o glibc-profile

     o glibc-utils

     o gnupg

     o hotplug

     o httpd

     o httpd-devel

     o hwdata

     o initscripts

     o iproute

     o kdegames

     o kdegames-devel

     o kernel

     o kernel-doc

     o kernel-source

     o kernel-unsupported

     o kernel-utils

     o kinput2-canna-wnn6

     o kudzu

     o kudzu-devel

     o libf2c

     o libgcc

     o libgcj

     o libgcj-devel

     o libgnat

     o libobjc

     o libstdc++

     o libstdc++-devel

     o mdadm

     o mod_jk2

     o mod_ssl

     o mod_webapp

     o modutils

     o modutils-devel

     o net-snmp

     o net-snmp-devel

     o net-snmp-perl

     o net-snmp-utils

     o netdump

     o netdump-server

     o nptl-devel

     o nscd

     o nss_ldap

     o openssl

     o openssl-devel

     o openssl-perl

     o oprofile

     o oprofile-devel

     o quagga

     o quagga-contrib

     o quagga-devel

     o redhat-config-cluster

     o redhat-config-kickstart

     o redhat-config-network

     o redhat-config-network-tui

     o redhat-config-packages

     o redhat-config-xfree86

     o rh-postgresql

     o rh-postgresql-contrib

     o rh-postgresql-devel

     o rh-postgresql-docs

     o rh-postgresql-jdbc

     o rh-postgresql-libs

     o rh-postgresql-pl

     o rh-postgresql-python

     o rh-postgresql-server

     o rh-postgresql-tcl

     o rh-postgresql-test

     o rsync

     o shadow-utils

     o strace

     o struts

     o tomcat

     o tomcat-devel

     o tomcat-libs

     o up2date

     o up2date-gnome

     o ypbind

   The following new packages have been added to CentOS 3
   Update 1:

     o gnu-efi

     o jaf

     o jaf-devel

     o javamail

     o javamail-devel

     o jonas

     o jonas-examples

     o junit

     o junit-devel

     o libunwind

     o mysql-jdbc

     o mysql-jdbc-tomcat

     o rh-cs-es

     o struts-webapps

     o tomcat-test

   ( ia64 )