---

Linus Torvalds: Linux 2.6.0-test10

Ok,

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 “feedback@beaver-overlord.com“,
I’m sure somebody will find your insight fascinating.

Thank you in advance. ]

Linus

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: akpm@osdl.org|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
    do
    wp_page()
  • Avoid racy optimization in signal sending
  • Fix ALI 15×3 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:

  • [NETFILTER]: Add IPCHAINS to MAINTAINERS entry

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

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis