Linux Today: Linux News On Internet Time.
Search Linux Today
Linux News Sections:  Developer -  High Performance -  Infrastructure -  IT Management -  Security -  Storage -
Linux Today Navigation
LT Home
Link to Us
Linux Jobs

More on LinuxToday

Linus Torvalds: Linux 2.6.0-test10

Nov 24, 2003, 13:00 (4 Talkback[s])


it's been almost a month between test9 and test10, with a constant but diminishing trickle of small patches. The full changes are slightly larger than I was hoping for, but considering that the patch is barely over 100kB compressed for a month worth of work, I'm still fairly pleased.

There is still something strange going on that seems to be triggered by preemption, so for now we suggest not enabling CONFIG_PREEMPT if you want the highest stability. On the other hand, I'd love to have more testing, so that we can try to figure out what the pattern is - but please mention explicitly that you ran with preemption if you have problems.

Quite a lot of the -test10 patches are one-liners and quite trivial. I've tried to be quite strict in patch acceptance, so the changes are largely fixes for things that can crash the machine, and they are also of the type "this can't possibly break anything". But hey, we all know that theory and practice don't always match ;)

I'm planning/hoping on basically turning this over to Andrew, and let him decide to make the final 2.6.0 or not. Timing-wise Andrew is apparently going to be off for a few weeks, so regardless of whether this turns out to be rock solid or not, we'll have a few weeks of final testing before that were to happen. Which means that I might still end up making a test11 if Andrew hasn't come back and we find something that warrants it.

Btw, I'm happy to say that maintainers have been self-policing themselves quite admirably. Thanks to everybody involved.

The changelog gives more details, but the bigger things here are various networking fixes, and the SCSI layer being better at refcounting some data structures (the oopses on USB storage removal that some people have seen should hopefully be fixed).

[ Btw, I tried to come up with a good name for this release. But the fact is, that as Scott Adams has so often pointed out, you can't do much better than "weasel" when it comes to funny. Ever since the "greased weasel" series of kernel releases I have been stuck for a good name.

This release is tentatively called the "stoned beaver" release (beavers are _almost_ as good as weasels, as I'm sure Scott Adams would agree).

If you feel strongly about the issue, please send your votes and ideas to "", I'm sure somebody will find your insight fascinating.

Thank you in advance. ]


Summary of changes from v2.6.0-test9 to v2.6.0-test10

Adam Belay:

  • Fix ISAPNP netdev initialization
  • reserve resources specified by the PnPBIOS properly

Alan Mayer:

  • ia64: fix bug in SN2 sn_pci_map_sg that causes MCA

Alan Stern:

  • Off-by-one bug in user page calculations for Direct I/O

Alexander Viro:

  • Fix cramfs metadata races

Alexey Kuznetsov:

  • [IPV4]: Fix SKB handling in ipmr xmit

Amir Noam:

  • [netdrvr bonding] fix monitoring functions
  • [bonding 2.6] Restore missing backward compatibility
  • [bonding 2.6] fix creation of /proc/net/bonding dir

Andi Kleen:

  • [NET]: Limit SO_BSDCOMPAT warning
  • Essential x86-64 updates
  • [NET]: Fix oops in ethertap_rx()
  • Fix IP checksum for SuSE 9.0 compiler
  • Fix TSS limit on x86-64
  • Fix oops in x86-64 strace path
  • Fix critical issue in x86-64 IOMMU code
  • Work around K8 errata on x86-64

Andrew Morton:

  • Fix binfmt_misc locking
  • digi_accelport warning fix
  • JBD: use-after-free fix
  • WinTV-D patch to make tuner functional
  • bttv jiffies warning fix
  • Export some symbols on x86-64
  • /proc/tty/driver/serial formatting fix
  • direct-io typo fix
  • sis900 skb free fix
  • [netdrvr 3c527] add MODULE_LICENSE tag
  • AS: handle non-block requests
  • 3c509 MCA compile fix
  • ext2 block allocation race fix
  • Disable IDE Tagged Command Queueing
  • char dev request_module fix
  • Fix RAID1 recovery
  • JBD: fix assertion failure
  • compile fix for voyager with gcc-3.3
  • [NET]: Remove __devinitdata from board_info[] in tlan.c driver
  • Fix scsi_report_lun_scan sign bug
  • gcc bug workaround for constant_test_bit()
  • videobuf_waiton race fix
  • gettimeofday resolution fix
  • sched_clock() fix
  • reiserfs pinned buffer fix
  • ia32: hugetlb needs pse
  • Fix bugs in ext2_new_inode()
  • remove ext2_reserve_inode()
  • fix percpu_counter_mod linkage problem
  • ide-scsi: warn when used for cdroms
  • ext3_new_inode fixlet
  • ext2 block allocator fixes
  • init.h needs to include compiler.h
  • cpu_sibling_map fix
  • fs/ext[23]/xattr.c pointer arithmetic fix
  • resource.c bounds checking fix
  • mpparse printk fix
  • disallow modular BINFMT_ELF
  • fix scsi_report_lun_scan bug

Andrew Victor:

  • [SERIAL PATCH] 1672/1: Restore sizeof(struct serial_struct)

Andrey Panin:

  • fix visws irq breakage

Andries E. Brouwer:

  • atkbd: 0xfa is ACK
  • Relax FATFS validity tests
  • Strange SCSI messages
  • Warn about old EZD and DM disk remappers

Anton Altaparmakov:

  • NTFS: Minor bug fix in attribute list attribute handling that fixes the I/O errors on "ls" of certain fragmented files found by at least two people running Windows XP.

Arjan van de Ven:

  • r8169 module license tag
  • fix starfire 64-bit b0rkage

Arnaldo Carvalho de Melo:

  • [LLC]: Fix array indexing in llc_add_pack()
  • [LLC]: In llc_ui_connect(), return error properly when device not found
  • [LLC]: Fix oops in procf handling
  • [LLC]: llc_lookup_listener has to consider the 'any' mac address
  • [LLC]: fix net_device refcounting bug
  • [LLC]: fix bug that prevented fcntl(O_NONBLOCK) from working with PF_LLC sockets
  • [LLC]: set local mac addr at connect time when userland left it as zeroes
  • [NET]: Introduce dev_getbyfirsthwtype
  • [LLC]: when the user doesn't specifies a local address to connect, do an autobind
  • [LLC]: Fix sockaddr, only need to provide one MAC address not three
  • [IPX]: Memset newly allocated atalk private area
  • [IPX]: Missing memset()'s in route and interface creation
  • [APPLETALK]: Mark me as the maintainer
  • [LLC]: fix procfs reading when there are saps without sockets
  • [LLC]: fix client side after sockaddr_llc fixup

Arun Sharma:

  • ia64: invoke schedule_tail unconditionally on ia32 emulation

Bart De Schuymer:

  • [NETFILTER]: Fix potential OOPS in ipt_REDIRECT
  • [NET]: Bart wrote arpt_mangle not DaveM. :-)

Bartlomiej Zolnierkiewicz:

  • add support for new nForce IDE controllers
  • AMD/nForce driver update
  • fix ide-tape oops
  • fix rq->flags use in ide-tape.c

Christoph Hellwig:

  • scsi_device refcounting and list lockdown

Daniel McNeil:

  • Fix AIO reference counts

Dave Kleikamp:

  • JFS: remove racy, redundant call to block_invalidatepage
  • JFS: Fix race between link() and unlink()

David Brownell:

  • USB: usb ignores 64bit dma

David Mosberger:

  • Fix pte_modify() bug which allowed mprotect() to change too many bits
  • ia64: Fix _PAGE_CHG_MASK so PROT_NONE works again. Caught by Linus
  • ia64: From Linus: Always disable system call restart when invoking a signal handler. Otherwise, a restarted system call that gets interrupted before the restart has taken effect by _another_ signal will potentially restart the wrong system call.
  • ia64: Fix bug in fsys_rt_sigprocmask() which breaks new-stub-enabled libc/NPTL
  • ia64: Fix off-by-1 error in imm60 patching. The bug hasn't been observed in practice, but it's clearly wrong and just waiting there to get triggered...
  • ia64: From Linus/Paulus: reset restart_block function in restore_sigcontext(). Also update ia32 subsystem accordingly.
  • ia64: Drop printk from ia64_ni_syscall(). This is a temporary fix for 2.6.0. The proper fix is to replace ia64_ni_syscall with sys_ni_syscall, but that would make the patch quite large, so we defer that till 2.6.1.

David S. Miller:

  • [SPARC]: Fix emul paths to be root relative
  • [IPV4]: Fix typo in ipmr.c
  • Revert signal handling changes in tcp.c - they break SIGURG
  • Revert "Zero initial timestamps are valid" changeset
  • [IPV6]: Do not virt_to_page() on stack addresses, fixes OOPS
  • [SPARC]: Add AIO syscalls, 32-bit compat handling will come later
  • [SPARC64]: Fix preempt handling in dec_and_lock.S
  • [SPARC64]: Get preempt building and working again
  • [NET/COMPAT]: Fix copying of ipt_entry objects in do_netfilter_replace()
  • [NET]: Make skb_copy_expand() copy header area too
  • [IPX]: Fix checksum computation
  • Cset exclude:|ChangeSet|20031029192849|64746
  • [NETLINK]: Initialize nl_pad in getname and recvmsg, noticed by Uli Drepper
  • [IPV4]: Initialize ARP seqfile state in start() method
  • [SPARC64]: Preserve cache/side-effect PTE bits in pte_modify()
  • [IRDA]: Fix IRQ save/restore handling in seq file handlers
  • [TG3]: Fix bugs in ETHTOOL_SSET introduced by ethtool_ops conversion
  • [TG3]: Bump driver version and release date
  • [TCP]: Normalize jiffies values reported to userspace
  • [SPARC64]: Fix PCI floppy IRQ enable/disable handling
  • [IPV6]: Fix packet quoting in icmpv6_send()
  • [SPARC]: Port over x86 signal bugfix in cset 1.1431
  • [COMPAT]: Fix arguments to compat statfs64 syscalls, 'sz' was missing
  • [SPARC64]: For 32-bit processes, use compat statfs64 syscall handlers not the normal ones
  • [SPARC]: Update to changeset 1.1445 version of signal fix
  • [SPARC]: Do not provide VGA_CONSOLE for sparc builds
  • [SPARC]: Port over cset 1.1459 x86 gettimeofday fix
  • [SPARC64]: Get PCI floppies fully functional again
  • [IPV4]: igmp.c needs linux/times.h

David Stevens:

  • [IPV6]: Fix UDP socket selection for multicast
  • [IPV6]: Fix milliseconds to jiffies conversion in multicast code
  • [IPV6]: In multicast code, set MAF_TIMER_RUNNING when timer is set
  • [IPV6]: Fix jiffies procfs output in multicast code
  • [IPV6]: In igmp6_group_queried, fix address check to comply with RFC2710
  • [IPV6]: Fix header length calculation in multicast input

Davide Libenzi:

  • More SiS interrupt routing

Eric Brower:

  • [SPARC]: Fix _IOC_SIZE() macro when direction is _IOC_NONE

George Anzinger:

  • Fix clock_nanosleep() signal restart issues

Greg Kroah-Hartman:

  • I2C: remove some MOD_INC and MOD_DEC usages that are not needed anymore
  • USB: don't build the whiteheat driver if on SMP as the locking is all messed up
  • fix reference count bug with class devices

Harald Welte:

  • [NETFILTER]: Fix ip_queue_maxlen sysctl

Herbert Xu:

  • [IPSEC]: Strengthen policy checks
  • [IPSEC]: Fix accidental too many ref drops on policies
  • [IPSEC]: Missing NULL algorithm checks in AH and IPCOMP init
  • [NET]: Use cpumask_t for cpumap in flow cache
  • [netdrvr tg3] initialize workqueue correctly
  • Fix double module_put in lockd
  • [IPV4]: Always set hoplimit metric, even for non-unicast routes
  • [netdrvr tg3] fix BCM5705 pending-RX count (was 64, now 63)

Hideaki Yoshifuji:

  • [NET]: Forward port iproute2 build fix from 2.4.23-preX
  • [IPV6]: Typo in address comparison
  • [IPV6]: Use real storage for cork'd packets, else MSG_MORE corrupts UDP packets
  • [IPV4,6]: Use common storage for cork'd flow, needed to handle mapped-ipv4 ipv6 addresses properly
  • [IPV6]: Process ipv4-mapped addresses properly on UDPv6 sockets
  • [IPV6]: Fix bogus semicolon typo in mcast.c
  • [IPV6]: Fix inappropriate usage of inet{,6}_sk()
  • [IPV4]: Remove out-of-date info CONFIG_INET help text
  • [IPV6]: Fix outdated and inaccurate information in Kconfig help
  • [CRYPTO]: crypto_alg_lookup() should fail when passed a NULL name
  • [IPV4/IPV6]: Fix one more inappropriate use of inet6_sk()->ipv6only
  • [IPV6]: Fix OOPS on NETDEV_CHANGENAME events
  • [JIFFIES]: linux/times.h needs asm/param.h (for USER_HZ)
  • [IPV4/IPV6]: Normalize jiffies reported to userspace in routing code
  • [DECNET]: Normalize jiffies reported to userspace
  • [IPV4/IPV6]: More userland jiffies reporting fixes for routing
  • [IPV4]: Fix jiffies procfs output in multicast code

Ingo Molnar:

  • SMP signal latency fix

Ivan Kokshaysky:

  • PCI: fix bug in pci_setup_bridge()
  • ALI IDE forward port from 2.4.x

Jack Steiner:

  • ia64: fix is_headless_node() for SN

James Bottomley:

  • Buslogic is MCA capable as well as PCI and ISA
  • lasi700: Fix missed variable name change causing module load error
  • Add missing .module initialisation to lasi700 and sim710

Jan Kara:

  • Drop spin lock when calling request_module in quota code

Jan Oravec:

  • [IPV6]: Fix len calculation after icmp changes

Jason Holmes:

  • make 2.6 megaraid recognize intel vendor id

Javier Achirica:

  • Fix compatibily issue with some APs
  • Fix wireless stats locking

Jay Estabrook:

  • Fix alpha "white box" boot

Jean Tourrilhes:

  • [IRDA]: Fix SKB leaks in af_irda.c, from Arnaldo Carvalho de Melo
  • [IRDA]: Fix two OOPSers in IrCOMM
  • [IRDA]: Fix races between IRNET and PPP
  • [IRDA]: Fix IrLMP open leak

Jeff Garzik:

  • [libata] only reset if ATA_FLAG_SATA_RESET is present
  • [libata] add per-driver port init/shutdown hooks, with helper defaults
  • [libata] convert Promise to packetized DMA
  • [libata] add ->host_stop hook, and copy ->private_data from probe_ent
  • [libata] fill in a lot more Promise PDC20621 support
  • [libata] more pdc20621 work
  • [libata] kill timer when thread dies
  • [libata] fix Promise build on older compilers
  • [libata] PDC20621 hdma fixes
  • [libata] Add paranoia checks/settings suggested by Promise
  • [libata] fix bugs in SATA reset code path
  • [libata] add Promise SATA pci id
  • [libata] fix ugly Promise interrupt masking bug
  • [libata] bump libata version
  • [libata] fix Promise PCI posting bugs
  • [libata promise] fixes suggested by Promise
  • [netdrvr sis190] fix oopsable bug in TX path, related to skb_padto return

Jens Axboe:

  • fix segment accounting with bounced pages

Jesse Barnes:

  • Fix bootmem breakage on ARM

John Levon:

  • [NETFILTER]: Fix modular iptables build

Julian Anastasov:

  • [IPVS]: avoid NULL ptr deref for dest in __ipvs_getout_rt
  • [IPVS]: make sure timer expires on one cpu

Jun Komuro:

  • [pcmcia fmvj18x_cs] share interrupts properly for TDK multifunction cards

Kawazoe Tomonori:

  • [netdrvr 8139too] add pci id

Kazunori Miyazawa:

  • [IPV6]: Fix IPSEC oops, RTF_NDISC flag gets dropped in __xfrm6_bundle_create()

Kevin Corry:

  • Fix DM on top of raid

Kevin Lahey:

  • [TCP]: When SYN is set, the window is not scaled

Kochi Takayoshi:

  • ia64: don't access per-CPU data of off-line CPUs

Krishna Kumar:

  • [NET]: Do not run netdev todo work from linkwatch code
  • [IPV6]: Fix hangs during interface down caused by ipv6_del_addr()
  • [IPV6]: Fix ref count bug in MLDv2, test idev->dead instead of IFF_UP

Len Brown:

Linus Torvalds:

  • Add a sticky "PF_DEAD" task flag to keep track of dead processes
  • Put the compiler barrier() on the right side of the preemption enable on UP-PREEMPT.
  • Fix ZOMBIE race with self-reaping threads
  • Don't force PS/2 mouse rate or resolution by default
  • Stop SIS 96x chips from lying about themselves
  • Forward-port PIRQ table updates from 2.4.x
  • Avoid user space access with interrupts disabled in vm86 support
  • Only truncate file types that can be truncated on minixfs
  • Fix cut-and-paste error in radeonfb.c
  • Don't fold nanosleep() into clock_nanosleep()
  • Fix double unlock of page_tablelock in dowp_page()
  • Avoid racy optimization in signal sending
  • Fix ALI 15x3 IDE driver oops
  • Always disable system call restart when invoking a signal handler
  • Re-instate the ALI northbridge checks in ALI IDE driver
  • Don't panic on a corrupt MP table. It's likely just a broken UP BIOS
  • Disable system call restart at sigreturn time rather than when invoking the signal. This fixes all races.
  • Limit USB storage transfers to 240 sectors
  • Work around binutils bug

Matthew Dharm:

  • USB: fix a thread-exit problem at module unload

Matthew Wilcox:

  • Fix panic-at-boot

Matthias Andree:

  • Properly terminate /proc/tty/driver/serial output lines of known UARTS when the caller has no CAP_SYS_ADMIN capability.

Maximilian Attems:


Michael Clark:

  • PCI: Fix oops in quirk_via_bridge

Mike Phillips:

  • ibmtr_cs/ibmtr - get working again

Neil Brown:

  • Fix nfsd extra dput()

Nickolai Zeldovich:

  • [NET]: Allow SOMAXCONN to be adjusted via sysctl

Patrick McHardy:

  • [NET]: Fix skb_copy_expand offset calculation
  • [NET SCHED]: Adjust qlen when grafting in multiple qdiscs
  • [NET SCHED]: Reset q.qlen in tbf_reset instead of purging an unused queue
  • [NET SCHED]: Fix queue limits in multiple qdiscs

Paul E. Erkkila:

  • [IPV4]: Make sure ipgre_tunnel_init() gets the correct ioctl settings

Paul Jackson:

  • ia64: fix bug in prof_cpumaskread_proc()

Paul Mackerras:

  • PPC32: Fix alignment problem with __extable and _bug_table
  • PPC32: Don't oops on out-of-range system call
  • PPC32: cancel syscall restart on signal delivery
  • Fix ppc system restart properly
  • PPC64: Fix possible race in syscall restart

Pekka Pietikäinen:

  • [netdrvr b44] Fix irq enable/disable; fix oops due to lack of SET_NETDEV_DEV() call

Pete Zaitcev:

  • [SPARC]: Eliminate references to linux/smp_lock.h, from willy

Philip Craig:

  • [netdrvr 8139cp] fix NAPI race

Prasanna Meda:

  • [netdrvr tulip] fix hashed setup frame code

Ralf Bächle:

  • drivers/pci DEBUG build fix
  • [netdrvr pcnet32] add missing pci_dma_sync_single

Randolph Chung:

  • fix __div64_32 to do division properly

Randy Dunlap:

  • Fix crash-on-boot in init_l440gx SMP

Rik van Riel:

  • [netdrvr starfire] include asm/io.h

Russell King:

  • [PCMCIA] Fix card detection
  • 2.6.0-test8: fix ARM ether driver naming
  • [ARM] Fix ARM signal handling
  • [ARM] Fix system call restarting

Rusty Russell:

  • [NETFILTER]: Fix ipchains oops in NAT
  • Fix for module initialization failure
  • [NETFILTER]: get_unique_tuple doesn't always return unique tuple

Stelian Pop:

  • sonypi: fix Zoom/Thumbphrase button events
  • meye: documentation

Stephen Hemminger:

  • [IRDA]: Fix references to dead mailing lists and URLs
  • [IPX]: Fix OOPS when ipxcfg_auto_create_interfaces is on
  • [IRDA]: Fix irlmp seqfile, initialize the iterator in start
  • [netdrvr de4x5] NE54-de4x5 - fix missing free on error path - found by viro

Stéphane Eranian:

  • ia64: fix perfmon UP breakage
  • ia64: fix 2 more perfmon2 bugs

Thomas Habets:

  • [SPARC]: Add missing symbol exports, this is fallout from kernel/ksyms.c being nuked

Thomas Winischhofer:

  • More SiS AGP ids

Tim Shepard:

  • [IPV6]: Fix /proc/sys/net/ipv6/icmp permissions

Tom Marshall:

  • [EBTABLES]: Fix ebt_limit for HZ=1000

Venkatesh Pallipadi:

  • Improper mapping of ACPI-HPET table

Ville Nuorvala:

  • [IPV6]: In ip6ip6 tunnel, set skb->h.raw after obtaining private copy
  • [IPV6]: In ip6ip6 tunnel, user provides flowlabel in network byte order
  • [IPV6]: Verify nlmsg_len in rt6_dump_route()

Vojtech Pavlik:

  • input: Always reset PS/2 mouse resolution and update speed to default values after probing

Wei Ni:

  • Legacy ALi5455 Audio Driver update

Willem Riede:

  • osst buglet

Yoshinori Sato:

  • fix h8/300 support