]> git.neil.brown.name Git - history.git/commit
Linux 2.2.11 2.2.11
authorAlan Cox <alan@lxorguk.ukuu.org.uk>
Fri, 23 Nov 2007 20:19:22 +0000 (15:19 -0500)
committerAlan Cox <alan@lxorguk.ukuu.org.uk>
Fri, 23 Nov 2007 20:19:22 +0000 (15:19 -0500)
commit15c0d35d0dd4aa70546fb272198e7193e27977a8
tree916358e4da8dee7f911128850c5ce05156dd36ee
parente76438b14f1bc1c514ad347400361a112084f506
Linux 2.2.11

Platforms:Alpha, Sparc, X86

Introduction
Linux 2.2.11 is the latest major update to the Linux kernel tree. It fixes
security holes in the kernel so should seriously be considered as an important
update for all Linux 2.2 systems. The out of the box tree supports the Alpha
the Sparc and X86 platforms. PowerPC and MIPS are mostly merged but you should
obtain the platform specific tree. It is hoped MIPS and PowerPC will soon be
fully merged. ARM and M680x0 users should get their platform specific tree.

Binary Compatibility
Linux 2.2.11 changes internal system structures. You should therefore rebuild
third party kernel modules such as pcmcia-cs when upgrading from older kernels
to this one.

Security Notes
If you have local users on the machine there are no workarounds for some of
the fixed bugs. If you are concerned only with remotely exploitable bugs then
the only concern is the firewall bug. This can be worked around by

   1. Applying just the patch to net/ipv4/ip_fw.c or
   2. Building a kernel with CONFIG_ALWAYS_DEFRAGMENT.
      This is the recommended configuration for a firewall except where there
      are multiple ingres paths. Using this option also screens clients behind
      the firewall from fragment attacks.

It is possible the socket binding bug can be exploited remotely by requesting
the right things from a server. We are not aware of any ways to do this.

Architecture Updates

Alpha
    Extensive updates to the Alpha platform support have been merged from the
    Alpha maintainers. Significant changes have been made to the maths
    emulation support.
i386
    Support is now available for machines with 2Gig of RAM.
    The interrupt handling has been modified for better SMP performance.
    An SMP race when freeing an interrupt has been cured.
    The interrupt return path has been optimised for modern CPU's with a
     hardware call stack.
    ioremap now allows mapping to the top of memory.
Mips
    Most of the mips port has been merged with the main tree.
    The work is not totally complete.
PowerPC
    Some changes have been merged.
Sparc
    The master kernel should now be up to date with the Sparc tree.
    A problem with the Sun4m SMP has been fixed.
    Sparc64 support for TV capture cards has been added.
    A race condition on core dumping has been fixed.

Core Updates

Coloured Zero Page
    The kernel core supports a colouring of zero pages.
    Currently only the MIPS port uses this facility.
Fork
    Fork set the processor id to NO_PROC_ID. This could cause crashes.
Kupdated
    The update task now runs in kernel space instead of user space.
Memory allocation
    The memory allocator has been updated so that it tries a lot harder to
     keep ISA DMA memory pools available.
PCI bus
    If the machine ran out of memory during boot up scanning of the PCI bus
     it would crash.
Request Length Limit
    The block device layer can now do merging of non memory-contiguous
     requests for some drivers and can also limit the number of segments
     per merge.
Signal Handling
    Queued RT signals had atomicity problems that could eventually cause them
     to stop working.
Swapping
    An off by one error that could cause system deadlocks when you ran out of
     memory has been fixed.

Driver Updates

BTTV TV capture
    The capture driver now supports the ultrasparc platform.
    The LifeView FlyKit card is now supported.
Cadet Radio Driver
    A bug has been fixed which could cause RDS data corruption.
CDROM driver
    A procfs handling bug where the cdrom layer could hand back more data
     than was requested has been fixed.
Compaq SMART2
    The Compaq SMART2 now has a Linux driver.
Cyclades multiport serial
    Interrupt mode is supported on the Cyclom-Z>br>Several minor bugs were fixed.
Gemtek Radio
    The I/O address for the onboard GemTek card is now recognized.
IDE CDROM
    Several small bugs have been fixed.
IDE Floppy
    The ZIP disk corruption problem should be dead.
IDE Tape
    An SMP race condition has been fixed. A case where it used memory after
     freeing it has been fixed.
ISDN4Linux
    Significant updates have been made to the ISDN layer in the kernel.
    Several more cards are now supported.
Multitech ISI series multiport adapters
    Support has been added for the PCI bus ISI cards.
Mylex DAC-960
    The DAC-960 raid controller card is now supported by Linux.
Network Block Device
    The network block device mis-set the size of larger network block devices
     (those over about 2Gig).
Parallel Port
    ECP Parallel ports are now dropped into a PS/2 like mode.
Radiotrack 2
    This driver previously only worked as a module.
    It now works compiled into the kernel.
Sound Layer
    The DMAsound driver has several small bug fixes.
    Allocation bugs were fixed on the ES1370/ES1371 and SonicVibes drivers.
    The S/PDIF output is now supported on newer ES1371 chips.
    A configuration bug on the Opti C924 has been fixed.
    The OPL3/SA2 driver has been improved.
    ES1869+ ESS chips should now play at the right speed.
    3DSE enable/disable is supported by OSS.
    The joystick on the trix card is now runtime configurable.
Specialix SX/SI multiport
    These cards are now supported by a new specialix serial driver.
Quick Cam
    A memory allocation bug that could cause crashes in both the quickcam
     drivers has been fixed.
Serial
    A bug that prevent shared interrupt mode working on the PC serial driver
     has been fixed.
TGAfb
    A frame buffer for the DECChip 21030 frame buffers.
    These are found in many of the Alpha based machines.
VGA Frame Buffer Console
    Linux 2.2.11 adds a native EGA/VGA 16 colour console to the frame buffer
    console support.  This is primarily aimed at GUI installers but can be
    used for other things too.

File System Updates

CODA
    Coda now supports pipe devices. Several other cleanups/changes.
EFS
    SGI EFS is now supported read only.
Ext2fs
    "Too large" error andling errors on very large files have been fixed.
    The immutability rules have been updated.
FAT
    FAT now caches by starting cluster.
    FAT knows FAT32 is really only 28bit.
    Now generates inode numbers differently.
FIBMAP
    The FIBMAP ioctl now requires RAWIO capability.
ISOfs
    A case where the ISO fs could crash the machine when it ran out of memory
     has been resolved.
Lockd
    A list mishandling bug in the lock daemon has been fixed.
    2.0.x compatible 'local only' locking is supported.
Loop Device
    The loopback driver for mounting file systems onto files now checks the
     underlying layer supportd bmap().
Nextstep CD-ROM supported
    The UFS file system can now handle NextStep CD-ROM format.
NCP fs
    A null pointer crash case has been fixed.
NFS client
    A stale handle case has been fixed.
Pipes
    A technical violation of the SuSv2 specification when preading 0 bytes
     from a pipe has been fixed.
Procfs
    The kernel memory image now reports the correct offset for its base.
    A memory handling bug has been fixed.
QNX fs
    A crash when bad blocks are read has been fixed.
Quota
    A whole pile of races, especially SMP races, in the Quota subsystem
     have been fixed.
UFS
    Crashes when a block cannot be read have been cured.
Ultrix Partition Tables
    Ultrix partition tables are now supported.
    This is needed for the MIPS port in particular.

Miscellaneous Updates

ChangeLog
    The Changelog has been updated to reflect newer tools.

Network Updates

Alteon AceNIC
    The driver now recognizes the Farallon PN9000SX and the SGI variants
     of the board.
Appletalk
    Now allows larger net ranges as 2.0 did. Fixed a crash on route changes.
ARCnet
    Several cases where an out of memory could crash the machine have been
     fixed. The irq probe delay has been increased to resolve a problem on
     some SMP boxes using ARCnet cards.
Arlan
    The ISA bus Arlan radio interfaces are now supported.
Bridge
    The bridge layer handled BPDU time values wrongly.
Comtrol Hostess SV-11
    A case where a DMA channel could be freed twice has been cured.
COSA
    The COSA driver has several bugs fixed including a firmware bug workaround
     and a deadlock bugfix.
CS89x0
    Underrun handling on the DMA was faulty. This update should fix it.
DEPCA
    Bridging did not work with the DEPCA driver due to an error in the
     packet length computation.
General Instruments Surfboard 1000
    A driver supporting the internal SB1000 ISA card has been added to the
    kernel. For more information see http://home.adelphia.net/~siglercm/sb1000.html.
IBM 'Olympic' PCI token ring adapters
    Support has been added for most of the IBM PCI token ring adapters.
    The Lanstreamer is not yet supported however.
IP layer
    Fixed routing bug, socket hashing bug, crash with MTU below 68 bytes.
    An IGMP protocol handling error has been fixed.
IP version 6
    The firewall code could oops if it ran out of memory.
IPX
    IPX packet routing could oops if the machine ran out of memory.
Lance
    The Lance driver could oops if there was no memory free.
Masquerade
    Masquerading made a poor choice of hashes for some operations.
    The IRC masquerade did not understand the extended DCC commands.
Multicast Routing
    PIM2 checksumming was incorrect and broke with old peers.
NE2000/PCI Driver
    This now supports the PowerPC and also the differently broken Holtek chips.
NetROM
    The NetROM layer could oops during loading if it ran out of memory.
Packet Schedulers
    Several bugs were fixed in the packet scheduling.
PCNet 32
    Now supports the 79cc973/5 chips.
    Some PCI scanning changes have been made.
    A bug with manual MII selection has been fixed.
Realtek 8129/8139
    This driver has been updated.
ROSE
    The ROSE layer could oops during loading if it ran out of memory.
Sealevel Systems 4021
    A driver for this Z85230 based card has been added.
Seeq 8005
    This driver may now be built as a module.
SiS900
    An experimental driver for this new chipset is now included.
sk_mca
    Minor MCA bus fixes
Synchronous PPP
    A bug where the synchronous PPP driver would drop connections under high
     load due to keepalive lossage has been fixed.
TCP Protocol
    Fixed a race condition with two writers and partial writes.
    Update workarounds for bugs in the PAWS protocol (RFC1323)
    Fix crash in socket binding.
Tulip Driver
    A fix for a race where the Tulip driver would hang has been added.
VIA Rhine
    This driver has been updated.
Wavelan
    The frequency handling for the wavelan has been updated for the newer
     modem revision.
YAM FPGA Radio Modem
    This is now supported under Linux in 1200 and 9600 baud mode.
Yellowfin
    The yellowfin driver has been updated to correctly handle non x86 platforms.
Z85230
    Several non fatal bugs in the Z85230 synchronous driver have been fixed.

SCSI Updates
The general SCSI layer has been updated to fix a couple of read only reuses of
freed memory and to fix oopses when loading modules and running out of memory.
A problem where the scsi error thread stopped initrd unloading has also been
fixed.

AHA152x
    Driver is now SMP safe. Abominable responsiveness under heavy load should
     also be cured.
AHA154x
    Supports loadtime options as a module for configuration.
    Supports AHA1542CFP geometry translation modes.
AIC7xxx
    Updated to fix various reported bugs.
AMI Megaraid
    Fixed a bug with manager control commands causing false SCSI layer errors.
    Increased SCSI command timeouts.
ATP870U
    This driver is now SMP safe.
Constants
    The SCSI layer will now name SCSI 2 commands in verbose error reports.
EATA
    The driver will set a device to master mode if need be.
EATA-DMA
    This driver is now SMP safe.
IDE SCSI
    When scsi generic was used the IDE SCSI layer could get confused.
    IDE SCSI generic transform couldn't be disabled once enabled.
IN2000
    The assembly part of this did not compile with the latest compilers.
Initio SCSI
    On non X86 platforms some delays were incorrect by a factor of ten.
NCR 53c8xx
    Fix misdetection of 53C875E and other minor fixes.
NCR 53C9x
    Driver is now SMP safe.
QlogicFC
    Now supports the isp2200 card.
Qlogic ISP
    Geometry handling corrected for larger than 8Gig disks.
Symbios 53c416
    This driver is now SMP safe.
Symbios 53c8xx
    Fix misdetection of the 53C875E. Added support for the 53C895A.
    Updated scripts.

Security Updates

AX.25
    The AX.25 layer had a bug allowing arbitrary scribbling into kernel space
    by an application. The area hit is hard to control so the exploit is
    probably limited, but still dangerous.
Capabilities
    There is now a bounding capability set that can only be increased by
    process 1. This provides securelevel equivalence.
Firewall
    A carefully constructed packet sequence could rewrite the port numbers on
    a packet potentially allowing frames that should be screened through the
    firewall.
Mremap
    Mremap called zap_page_range with incorrect arguments.
    A large realloc() under glibc could do all sorts of nasty things.
Sysrq
    It is now possible to build a kernel with debugging sysrq support and
    enable/disable the option at runtime.
TCP
    Some unusual patterns of socket binding could cause a crash.
    A user could deliberately trigger this. Now fixed.
/dev/port
    The RawIO capability is now required to open /dev/port, /dev/mem
     and /dev/kmem.
Documentation/sound/Introduction
arch/sparc/mm/tsunami.S
arch/sparc64/kernel/head.S
arch/sparc64/kernel/psycho.c
arch/sparc64/kernel/trampoline.S
drivers/net/sunhme.c
drivers/scsi/ncr53c8xx.c
drivers/scsi/qlogicisp.c
include/asm-sparc64/apb.h
lib/string.c
net/ipv4/tcp.c