2.6.9 was released October 19, 2004. Changelog
Token-based thrashing control. When there are pageins going on, a task can grab a token, that protects the task from pageout (except by itself) until it is no longer doing heavy pageins, or until the maximum hold time of the token is over. (LWN article) commit
Support for POSIX's waitid(2) Also, now linux now supports the POSIX specification that SIGCHLD is sent to the parent when one of its children resumes as a consequence of receiving a SIGCONT signal. Also, WCONTINUED flag is added to waitpid() and waitid() commit
Concurrent O_SYNC write support: In databases it is common to have multiple threads or processes performing O_SYNC writes against different parts of the same file. Performance at this is poor, because each writer blocks access to the file by waiting on I/O completion while holding i_sem: everything is serialised. The patch improves things by moving the writing and waiting outside i_sem. So other threads can get in and submit their I/O and permit the disk scheduler to optimise the IO patterns better commit, commit
Support of disk barriers commit, commit, commit, commit, commit
ext3 barrier support: Mount with mount -o barrier=1 to enable barriers commit
Reiserfs v3 barrier support: Add reiserfs support for flush barriers, mount with -o barrier=flush to enable them. Barriers are triggered on fsync and for log commits commit
Allow cluster-wide flock commit
Out-of-line spinlocks (LWN article). commit, commit, commit, commit, commit, commit, commit, commit
Move parts of pmdisk into swsusp and remove it LWN Article. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
RLIMIT_MEMLOCK semantics change: In Linux kernels before 2.6.9, only privileged processes (CAP_IPC_LOCK) could lock memory, and the RLIMIT_MEMLOCK soft resource limit placed an upper limit on the number of bytes that a privileged process can lock. Since kernel 2.6.9: no limits are placed on the amount of memory that a privileged process can lock; and an unprivileged process is now able to lock memory up to the soft limit defined by RLIMIT_MEMLOC commit, commit
New prctl(2) option allowing programs to change their name (PR_GET_NAME) commit
Add kprobes for analysing the Linux kernel by collecting debugging information non-disruptively commit, commit
tiny shmem/tmpfs replacement for systems without swap commit
Add scheduler statistics in /proc/pid/stat commit
"flex mmap" user-space memory layout, to allow applications to allocate more virtual memory, and larger contiguous chunks. (LWN article). commit, commit, commit, commit
Tune vmalloc size with vmalloc= boot option commit
nfsd: ACL support for the NFSv4 server commit, commit, commit
NETFILTER: Connection based accounting commit
NETFILTER: New ip_sctp match commit
NETFILTER: Add conntrack runtime statistics commit
NETFILTER: Add tcp window tracking commit
NETFILTER: add sysctl to read out the number of current connections commit
NET: Generic network statistics commit
NET: Add ethtool support to loopback driver. commit
NET: Device mtu/txqlen/ifmap via rtnetlink. commit
NET: Device name changing via rtnetlink commit
NET: Neighbour cache statistics like rt_stat. commit
TCP: Add tcp_tso_win_divisor sysctl. commit
IPV6: Add option to copy DSCP in decap in ip6_tunnel. commit
IPV4: Permit the official ARP hw type in SIOCSARP for FDDI. commit
NET: Generic network statistics/estimator commit
IPSEC: Implement DSCP decapsulation commit
BRIDGE: Add ipv6 packet filtering. commit
TCP: Automatically compute tcp_default_win_scale and remove sysctl. commit
PKT_SCHED: Update for netem scheduler. commit
PKT_SCHED: Add gact generic actions. commit
NET: Allow get/set of dev->weight via netlink. commit
XFS: Add support for unsetting realtime flag on realtime file which has no extents allocated. commit
XFS: Add a realtime inheritance bit for directory inodes so new files can be automatically created as realtime files. commit
XFS: Support for default quota limits via the zero dquot (ala grace times). commit
XFS: Add nosymlinks inode flag for the security folks, reserve projinherit flag. commit
CIFS: xsymlink support commit
Secure RPC: SPKM3 mechanism that provides for secure RPC calls by means of a gss-api mechanism based on the SPKM3 public-key mechanism commit
NFSv4: Support for delegations (client) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
JFS: disk quota support commit
NTFS: Add support for readv/writev and aio_read/aio_write. commit
NTFS: Implement fsync, fdatasync, and msync both for files and directories commit
NTFS: Implement cluster (de-)allocation code commit
export legacy pty info via sysfs commit
RCU: low latency rcu commit
Adds a kernel boot parameter lpj=NNN which allows the operator to specify the loops-per-jiffy value commit
CRYPTO: Add Whirlpool digest algorithm. commit
hugetlb: permit executable mappings commit
md: RAID10 target commit
Configurable SELinux bootparam value commit
Reduce SELinux kernel memory use on 64-bit systems commit
/dev/random: Remove RNDGETPOOL ioctl commit
/dev/random: Use separate entropy store for /dev/urandom commit
Show Active/Inactive on per-node meminfo. The patch below enable to display the size of Active/Inactive pages on per-node meminfo (/sys/devices/system/node/node%d/meminfo) like /proc/meminfo commit
task scheduler profileing (seeing where context switches come from) commit
kbuild: Add 'make namespacecheck' commit
kbuild: Support LOCALVERSION commit
Add skeleton "generic IO mapping" infrastructure. commit
Tunable "max sectors" limit for block I/O requests (can help latency reduction) commit
BSD disklabel: handle more than 8 partitions commit
Add DEVPATH env variable to hotplug helper call commit
Drivers & architectures
Add m32r architecture commit
x86_64: emulate NUMA on non-NUMA hardware commit
x86-64: add apic={verbose,quiet,debug} commit
Add support for NUMA discovery on AMD dual core to x86-64 commit
ARM: Add IXP2000 support commit, commit, commit, commit, commit, commit, commit
ARM: Add support for ENP-2611 platform commit
ARM: Motorola i.MX architecture support commit
ARM: OMAP update adds board support files for OMAP H2 and H2 commit, commit, commit, commit, commit, commit
ARM: Add "noirqdebug" option to match x86 option. commit
ARM: kernel support for iWMMXt present on some XScale cores commit
Add ARM AMBA CLCD framebuffer driver. commit
ARM: Hynix h720x architecture support commit
ARM: Add CLCD support for Versatile platform commit, for Integrator/CP platform commit, for IM-PD/1 board commit
ARM: Intel XScale IOP310 removal commit
ARM: S3C2410 - Drive strength control for s3c2440 commit
ARM: Initial support for s3c2440 cpus commit
ppc32: add U-Boot support to Ocotea/440GX port commit
ppc32: emulate obsolete instructions commit
PPC32: Add a watchdog driver on PPC8xx. commit
ppc: Add Freescale MPC52xx I2C Support using i2c-mpc.c commit
ppc32: Add a noresidual option, to ignore residual data. commit
ppc64: HVSI driver commit
ppc64 iSeries virtual DVD-RAM commit
ppc64: topdown support commit
ppc64: restore smt-enabled=off kernel command line option commit
ppc64: enable POWER5 low power mode in idle loop commit
ppc64: powersave_nap sysctl commit
SPARC64: Initial KPROBES implementation. commit
IA64-SGI: Add full PROM version banner to /proc/sgi_prominfo/nodeXX/version commit
IA64: support for IA64 hardware performance counters via the perfmon interface commit
IA64: SGI Altix hardware performance monitoring API commit
mips: added interrupt control routines for vrc4173 commit
Time interpolator: Scalability enhancements and high resolution time for IA64 commit
uml: Uml base patch commit
UML: remove the COW block driver commit
uml: remove useless ioctls commit
uml: Adds LEGACY_PTY config option commit
uml: Use PTRACE_SCEMU (the so-called SYSEMU) to reduce syscall cost. commit
uml: Adds the "nosysemu" command line parameter to disable SYSEMU commit
uml: Adds /proc/sysemu to toggle SYSEMU usage. commit
x86 PAE swapspace expansion commit
r8169: napi support commit
r8169: ethtool .set_settings commit
r8169: ethtool .get_{settings/link} commit
Add support of VT1720-based mobo (still experimental and supporting AC97 only) commit
VIA82xx: add the DXS entry for Mitac/Vobis/Yakumo laptop. commit
Add the experimental support for ALC850. commit
input: implement true rawmode for PS/2 keyboards commit, commit
Input: mousedev - implement tapping for touchpads working in absolute mode, such as Synaptics commit
via-rhine: Add WOL support commit
CPUFREQ: new Dothan variant for speedstep-centrino commit
New driver for MV64340 GigE commit
input: Enhancements/fixes for PSX pad support: commit
Intel8x0: Added the PCI ID for nVidia CK8. commit
input: Add Dell SB Live! PCI ID to the emu10k1-gp driver. commit
input: Add Audigy LS PCI ID to emu10k1-gp.c commit
Input: Add serio_raw driver that binds to serio ports and provides unobstructed access to the underlying serio port via a char device commit
EMU10K1/EMU10K2: Audigy 2 ZS - side support commit
add new ethernet driver 'gianfar' commit
Add pci=firmware command line option commit
ACPI: add SMP suport to processor driver commit
ACPI: ACPI bus support for wakeup GPE commit
natsemi netpoll support commit
ATIIXP-modem: Added snd-atiixp driver for ATI IXP AC97 modem controllers. commit
ICE1712: Added the (experimental) support of Terratec Phase 88. commit
e100 - Support for Intel(R) PRO/100 VE Network Connection (82562) adapter commit
e100 - Auto MDI/MDI-X support commit
e100 - Support to load device firmware commit
ICE1724: Added the support of Pontis MS300 to snd-ice1724 driver. commit
USB: add CONFIG_USB_SUSPEND commit
USB: Add support for FT2232C chip to ftdi_sio commit
Add CONFIG_PM_DEBUG option commit
I2C: Add Intel IXP2000 GPIO-based I2C adapter commit
I2C: new device for sis630 commit
Intel8x0: Added the support of nVidia CK804. commit
Intel8x0: Added the support of MCP04. commit
Intel8x0-modem: Added the support of Nvidia modem. commit
ICE1712: Added the support of ZNF3-250 (supposed to be ZNF3-150 compatible). commit
AWACS: PPC Beep,PPC PMAC driver,PPC PowerMac driver Added the PCM beep support. commit
CPUFREQ: Adding SMP capability to MSR based Enhanced Speedstep. commit
USB USX2Y: snd-usb-usx2y driver for Tascam US-122/224/428 support commit
Intel8x0: Added buggy_irq module parameter to intel8x0 driver. commit
I2C: bus driver for multiple PowerPCs commit
USB: ipaq module: product id for HTC Himalaya commit
I2C: algorithm and bus driver for PCA9564 commit
USB: add ub driver commit
w1: Added driver for Dallas' DS9490* USB <-> W1 master. commit
Intel8x0-modem: Add the support of SIS7013 modem. commit
AGPGART: SiS 635 support. commit
CPUFREQ: Initial Dothan speedstep support. commit
libata: support commands SYNCHRONIZE CACHE, VERIFY, VERIFY(16) commit
libata: add ioctl infrastructure commit
ipr: New adapter support commit
ipr: New PCI IDs commit
USB generic driver: add support for Yamaha CVP-301, CVP-303, CVP-305, CVP-307, CVP-309, CVP-309GP, PSR-1500, PSR-3000, ELS-01, ELS-01C, PSR-295, PSR-293, DGX-205, DGX-203, DGX-305, DGX-505, DGP-7, DGP-5, PM5D, DME64N, DME24N, DTX, UB99 commit
Add new Megaraid driver version 2.20.0.1 commit
CPUFREQ: Support VIA C3 Nehemiah's with 200MHz FSB. commit
fbdev: use 8-bit DAC for capable hardware commit
fbdev: support for bold attribute for monochrome framebuffers commit
Support for Exar XR17C158 Octal UART commit
Altix system controller communication driver commit
new device driver to enable the IBM Multiport Serial Adapter commit
i20 rewrite commit
CPUFREQ: Merge on-demand cpufreq policy governor. commit
USB: add lh7a40x_udc driver commit
USB: add omap_udc driver commit
VIA82xx: Added the DXS entry for Uniwill/Targa Visionary XP-210. commit
USB: rip out the whole pwc driver as the author wishes to have done. commit
ATIIXP: add IXP400 support commit
parport: NetMOS 9805 interface commit
Add new i915 driver from Tungsten Graphics Inc. This driver covers the i830 chipsets also, a new X 2D + 3D driver are needed to use this but they have been integrated into at least the X.org tree at this point and I think the XFree86 tree commit
TG3: Add capacitive coupling support. commit
VLAN support for 3c59x/3c90x commit
Add IXDP2x01 board support to CS89x0 driver commit
SUNGEM: Add NAPI support. commit
SUNGEM: Add netpoll support. commit
device driver for the SGI system clock, mmtimer commit
Add MTD map driver for Intel IXP2000 NPU commit
PCMCIA: Add device ID for TI4520 to yenta_socket table. commit
SUNGEM: Add polling support. commit
MMC Provide major= module parameter for mmc_block commit
ide: Simtec BAST (EB2410ITX) / Thorcom VR1000 driver commit
ACPI4ASUS: support M6700R laptops commit
USB: isp1301_omap driver (On The Go) commit