Ok, let's calm down for a while before the final 2.6.7.
-rc3 does a lot of sparse type cleanup, mainly thanks to Al Viro (but his
work ended up getting some other people involved too, since the list of
sparse warnings isn't as daunting any more). Some of that has unearthed
real bugs which Al fixed.
But there are DRM, AGP, cpufreq, sparc64, and input updates there too. See
the appended shortlog for more details,
Linus
Summary of changes from v2.6.7-rc2 to v2.6.7-rc3
Adam Kropelin:
[FB]: Fix uninitialized fb_cmap member in sbuslib.c
Adrian Bunk:
POSIX_MQUEUE depends on NET
SECURITY_SELINUX depends on NET
Alex Tsariounov:
ia64: fix comment-typo in entry.S
Alex Williamson:
ia64: setup cpu_to_node for cpus not present
Alexander Viro:
sparse: missed setsockopt wrappers
sparse: dev_ioctl() callers
sparse: missed piece of sock_get_timestamp() annotation
sparse: trivial part of net/* annotation
sparse: more net/* annotation
sparse: net/* non-ANSI argument lists
sparse: amd64 annotation - beginning
sparse: amd64 annotations - trivial part
sparse: amd64 - more trivial annotations
sparse: amd64 - #if abuse fixes
sparse: amd64 - long constants
sparse: amd64 - rest
sparse: fs/compat.c::copy_iocb() cleanup
sparse: tty_io annotation
sparse: tty_ioctl annotation
sparse: vt and friends
sparse: n_tty annotation
sparse: tty_driver ->write_proc()
sparse: SIOCGIFCONF handling - the rest of it
sparse alpha: beginning of __user annotation
sparse alpha: long constants
sparse alpha: #if abuses
sparse alpha: trivial parts of __user annotation
sparse alpha: utimes()
sparse alpha: the rest of it
trivial annotation for arch/i386/kernel/*
sparse: reiserfs annotation
sparse: asus_acpi dereference of userland pointers
sparse: sound sb fix
sparse: msnd sound fix
sparse: sound/core/timer.c fix
sparse: sound/core annotation - trivial part
sparse: annotation of include/sound (generic parts)
sparse: sound/core/pcm* annotation
sparse: opl annatation
sparse: rest of sound/core
sparse: sound/isa/gus annotation
sparse: sscape annotation
sparse: wavefront annotation
sparse: sb annotation
sparse: vx annotation
sparse: trident annotation
sparse: rme9652 annotation
sparse: emu10k1 annotation
sparse: rest of ALSA annotation
sparse: cs4281 annotation
sparse: cmpci annotation
sparse: es1371 annotation
sparse: es1370 annotation
sparse: esssolo annotation
sparse: rme96xx annotation
sparse: i810 annotation
sparse: cs46xx annotation
sparse: ali5455 annotation
sparse: sonicvibes annotation
sparse: maestro3 annotation
sparse: the rest of sound/* annotation
sparse: ad1889 annotation
sparse: btaudio annotation
sparse: maestro annotation
sparse: ymfpci annotation
sparse: msnd annotation
sparse: forte annotation
sparse: drivers/cpufreq annotation
sparse: drivers/cdrom annotation
sparse: drivers/md annotation
sparse: drivers/pnp annotation
sparse: DAC960 annotation
sparse: cciss annotation
sparse: cpqarray annotation
sparse: paride annotation
sparse: rest of drivers/block annotation
drivers/atm/ambassador.c delousing
drivers/atm/horizon.c delousing
sparse: atm annotation (core)
sparse: atm annotation - drivers
sparse: coda annotation
sparse: decnet annotation
sparse: ax25 annotation
sparse: netrom annotation
sparse: rose annotation
sparse: x25 annotation
sparse: ipx annotation
sparse: appletalk annotation
sparse: econet annotation
sparse: wanrouter annotation
sparse: net/bridge annotation
sparse: netlink annotation
sparse: irda annotation
sparse: vlan annotation
sparse: bluetooth annotation
sparse: sctp annotation
sparse: more netfilter annotation
sparse: mroute annotation
sparse: ->ifr_data annotation
sparse: ->ifr_data fixes
sparse: more wan annotations
sparse: selinux annotation
sparse: rest of net/* annotations (in this patchset, that is ;-)
sparse: hugetlb sysctl annotation
sparse: gdth.c annotation
sparse: misc scsi annotation
sparse: rest of drivers/net annotations in the patchset
sparse: misc headers annotations
sparse: ide-floppy annotation
sparse: synclink_cs annotation
sparse: synclink annotation
sparse: trivial fs annotations
sparse: usb/core/devio annotation
sparse: sonypi annotiation
sparse: ppdev annotation
sparse: misc drivers annotations
sparse: lp annotation
sparse: drivers/char/i8 annotation
sparse: tpqic annotation
sparse: if_mii() helper (from jgarzik)
sparse: the rest of ifr_data cleanups and annotations
sparse: drivers/net/tun.c annotation
sparse: depca annotation
sparse: slip.c annotation
Andi Kleen:
x86-64 update
Really fix empty node 0 on x86-64
Fix compilation on x86-64
Fix x86-64 compilation without CONFIG_NUMA
i386: add missing bitop.h memory clobbers
More x86-64 bugfixes
Use KERN_ALERT more for oopses
Andreas Dilger:
ext3: htree rename fix
Andrew Morton:
s2io section fix
ramfs o_sync oops fix
shrink_all_memory() fixes
Add reference_init.pl to `make buildcheck' target
direct-io invalidation fix
Add the sixth arg to the sys_futex() prototype
nfs-direct warning fix
Andries E. Brouwer:
partition table validity checking
Anton Altaparmakov:
NTFS: Add a new address space operations struct, ntfs_mst_aops, for
mst protected attributes. This is because the default ntfs_aops do
not make sense with mst protected data and were they to write
anything to such an attribute they would cause data corruption so
we provide ntfs_mst_aops which does not have any write related
operations set.
NTFS: Cleanup dirty ntfs inode handling (fs/ntfs/inode.[hc]) which
also includes an adapted ntfs_commit_inode() and an implementation
of ntfs_write_inode() which for now just cleans dirty inodes
without writing them (it does emit a warning that this is
happening).
NTFS: 2.1.12 release - Fix the second fix to the decompression
engine
Anton Blanchard:
ppc64: add eeh_add_device_early/late
ppc64: reset iseries progress indicator on boot
ppc64: bolt first vmalloc segment into SLB
ppc64: SLB accounting fix
ppc64: iseries bolted SLB fix
Arjan van de Ven:
[libata] Use standard headers from include/scsi, not drivers/scsi
Arun Sharma:
ia64: tighten FPH state context switch check
ia64: disable in-kernel ia32 emulation post Madison
Bartlomiej Zolnierkiewicz:
ide: fix for generic IDE PCI module
ide: ide_pci_device_t sanitization
ide: merge amd74xx.h into amd74xx.c
ide: use generic ide_init_hwif_ports() on m68k
ide: use <asm-i386/ide.h> as <asm-x86_64/ide.h>
ide: add IDE_ARCH_OBSOLETE_DEFAULTS
ide: remove useless /proc/ide/siimage from siimage.c
ide: simplify CONFIG_IDEDMA_ONLYDISK logic a bit
DMA mode setup fixes for piix.c/ata_piix.c
apply nForce2 fixup only if C1 Halt Disconnect is enabled
ide: remove unused ide_remove_setting() from ide.c
ide: use try_to_flush_leftover_data() in idedisk_error()
ide: remove needless exports
ide: sanitize __ide_do_rw_disk() debugging code
ide: remove dead code from ide-taskfile.c
Ben Dooks:
[ARM PATCH] 1906/1: S3C2410: serial minor number fix
Benjamin Herrenschmidt:
Fix rivafb's OpenFirmware parsing
ppc32: Fix CPUs with soft loaded TLB
ppc32: missed flush_tlb_page_nohash() cases
ppc64: make the TLB flush logic match ppc32
Bert Hubert:
s/tkill/tgkill/ in /** documentation */
Bjorn Helgaas:
ia64: fix hotplug config placement
active_load_balance() deadlock
Brian Gerst:
Mark cache_names __initdata
Brian Lazara:
ide: add new nForce IDE/SATA device IDs to amd74xx.c
Catalin Marinas:
[ARM PATCH] 1912/1: Wrong cache aliasing bit check
Chris Mason:
direct-io hole fix
Christoph Hellwig:
farsync needs <asm/io.h>
pnpbios only makes sense for X86
linux/timer.h needs linux/stddef.h
fix mca procfs stub
[SBUS]: Define dma direction bits in terms of enum
dma_data_direction
[ATM]: Simplify fore200e DMA macros even further
[SBUS]: Further cleanup of scsi driver header usage
ide: change CONFIG_IDEDISK_STOKE to a runtime option
[WATCHDOG] linux/watchdog.h include types.h patch
Colin Gibbs:
Fix readahead handling in knfsd
Colin Leroy:
Fix DRM mismerge(?)
Corey Minyard:
Fix procfs warnings when removing ipmi_si module
Fix ipmi compile failure
Darren Williams:
ia64: define pending_irq_cpumask in irq.c
Dave Airlie:
fix missing DRM_ERR()s - Eric Anholt
add R200_EMIT_RB3D_BLENDCOLOR state packet to support
GL_EXT_blend_color, GL_EXT_blend_func_separate and
GL_EXT_blend_equation_separate on r200 from Roland Scheidegger
MTD: add st m50fw0* to jedec_probe.c
Remove check that is needed only for 2.4 kernel fixes bug reports
on lk
Dave Jones:
[AGPGART] If ati_create_gatt_pages() fails, don't propagate an
address we've freed
[AGPGART] Various Intel/EM64T AGP fixes
[AGPGART] Don't abort if Intel-agp can't find AGP capability
[AGPGART] Make the driver only announce the PCI IDs it actually
supports
Update ia64 linux mailing-list and web-site addresses
ia64: Add defconfig for Ski simulator (patch by Darren Williams)
move #endif to correct place
ia64: Avoid intermediate-overflows in sched_clock()
ia64: Kill unused external declaration of "acpi_legacy_devices"
David S. Miller:
[SPARC64]: Update defconfig
[SPARC]: Do tty_flip_buffer_push outside of port lock
[PKT_SCHED]: Missing rta_len init in sch_delay
[SPARC64]: Fix NR_IRQS check in hardirq.h
[SPARC64]: Annotate 64-bit constants with 'UL'
[SPARC64]: __volatile --> __volatile__
[SPARC64]: Lots of sparse work for arch/sparc64
[SPARC]: Set sparse arch defines explicitly
[SPARC]: First stage of sparc32 sparse work
[IPV6]: ndisc_dst_alloc can never get a NULL dev
[SPARC64]: Compat syscall overhaul
[SPARC64]: Kill _exit kernelsyscall stub from unistd.h
[ATM]: fore200e dma direction macro tests no longer needed
[SPARC64]: New 6th arg of sys_futex needs sign extension
[SPARC64]: Update defconfig
[NETFILTER]: In ipt_TCPMSS, SYN packets are never hw checksummed
[SPARC64]: Fix compat_sys_wait4 extern decl
[SPARC64]: Tidy asm macros in sfp-util.h
[COMPAT]: Add __user attributes for pointers passed while KERNEL_DS
[AIO]: Split ki_user_obj into a 2 member union
[COMPAT]: Fix some sparse annotations in fs/compat_ioctl.c
[KERNEL]: Some sparse fixes for init/main.c
[TCP]: Need tcp_get_info decl in net/tcp.h
Diego Calleja GarcÃa:
Document checkstacks
Dmitry Torokhov:
Input: synaptics driver cleanup
Input: support Synaptics touchpads that have separate middle button
Input: pass maximum allowed protocol to psmouse_extensions instead
of accessing psmouse_max_proto directly allowing to avoid changing
the global parameter when synaptics initialization fails
Input: Change spurious ACK warning in atkbd to soften accusation
against XFree86
Input: fix trailing whitespace in atkbd
Input: remove unneeded fields in atkbd structure, convert to
bitfields
Input: Do not generate events from atkbd until keyboard is
completely initialized. It should suppress messages about suprious
NAKs when controller's timeout is longer than one in atkbd
Input: when getting a new device announce (0xAA 0x00) in psmouse
try reconnecting instead of rescanning to preserve (if possible)
the same input device.
Input: move "reconnect after so many errors" handling from
synaptics driver to psmouse so it can be used by other PS/2 protcol
drivers (but so far
Input: add protocol_handler to psmouse structure to ease adding new
protocols to psmouse module
Input: add psmouse_sliced_command (passes extended commands encoded
with 0xE8 to the mouse) and use it in Synaptics and Logitech
drivers
Input: do not modify device's properties when probing for protocol
extensions on reconnect as it may interfere with reconnect process
Input: allow disabling legacy psaux device even for non-embedded
systems
Input: serio trailing whitespace fixes
Input: make serio open and close methods optional
Input: trailing whitespace fixes
Input: - move set_abs_params from synaptics driver to input and
rename to input_set_abs_params
Input: trailing whitespace fixes in drivers/input/serio
Input: kbd98io_interrupt should return irqreturn_t
Input: kbd98_interrupt should return irqreturn_t
Input: various fixes for H3600 touchscreen driver
Input: twidjoy module
Input: trailing whitespace fixes in drivers/input/keyboard
Input: power - add MODULE_LICENSE
Input: trailing whitespace fixes in drivers/input/joystick
Input: trailing whitespace fixes in drivers/input/gameport
Input: trailing whitespace fixes in drivers/input
Input: do not call synaptics_init unless we are ready to do full
mouse setup
Input: split i8042 interrupt handling into an IRQ handler and a
tasklet
Patch from Sau Dan Lee Input: i8042 - kill the timer only after
removing interrupt handler,
Input: mousedev - better multiplex absolute and relative devices;
cleanups
Eugene Surovegin:
ppc32: reorg DMA API, add coherent alloc in irq
Gary Hade:
ia64: Fix early serial console setup regression on the IBM x450 and
x455
George France:
cpqarray.c: seed the random number pool
Herbert Xu:
[IPSEC]: Fix xfrm_tunnel leak
Check cmd in plip_ioctl
Hideaki Yoshifuji:
[IPV6] use appropriate __alignof__() for mibs
[NET] Introduce and use several common stuff for snmp item list
[IPV{4,6}] introduce ip-independent ipstats_mib based on ipv6_mib
[IPV6] rename snmp6_ipv6_list to snmp6_ipstats_list
[IPV4] use ip-independent ipstats_mib to store IPv4 statistics
[IPV6]: Store idev in routes
[IPV4]: Store idev in routes
[UDPv4]: Pass correct socket to ip_mc_sf_allow
Hugh Dickins:
mm: swapper_space.i_mmap_nonlinear
mm: follow_page invalid pte_page
mm: vma_adjust adjust_next wrap
mm: vma_adjust insert file earlier
mm: get_user_pages vs. try_to_unmap
mm: kill missed pte warning
Ian Campbell:
[ARM PATCH] 1890/2: Consolidate CPUFREQ handling in SOC PCMCIA
driver
Ingo Molnar:
md.c message during quiet boot
sched: remove noinline workaround
sched: honor the "sync" wakeup bit
Ivan Kokshaysky:
ide: don't put disks in standby mode on halt on Alpha
J. Bruce Fields:
kNFSd: exp_find(): remove null pointer check
kNFSd: nfsd_acceptable() typo fix
kNFSd: nfsd4 xdr name encoding improvements
kNFSd: gss_svc locking and refcounting fixes
kNFSd: rsc_lookup simplification
kNFSd: nfsd4_release_lockowner() oops fix
kNFSd: nfsd getattr fix
kNFSd: nfsd4 setclientid fix
kNFSd: nfsd4 file creation fix
kNFSd: documentation typo fixes
Jack Steiner:
sched: balance-on-exec fix
Jakub JelÃnek:
Add FUTEX_CMP_REQUEUE futex op
Jamal Hadi Salim:
[NET]: Add ARPHRD_NONE and use it in tun driver
[NETFILTER]: Small cleanup for {ipt,ip6t,arpt}_find_target
James Morris:
[NETFILTER]: Fix checksum bug for multicast/broadcast packets on
postrouting hook
[IPVS]: IPVS needs checksum fixups
Jan Kara:
quota: fix writing of quota info
quota: fix for old quota format
Jeff Garzik:
[netdrvr e1000] use generic ethtool_ops provided in
net/core/ethtool.c
input: Microtouch USB driver update Changed reset from standard USB
dev reset to vendor reset Changed data sent to host from
compensated to raw coordinates Eliminated vendor/product module
params Performed multiple successfull tests with an EXII-5010UC
Tom 'spot' Callaway:
[SBUS]: Stop using drivers/scsi/{scsi,hosts}.h in drivers
Tony Lindgren:
[ARM PATCH] 1902/1: OMAP update 1/3: entry-armv.S
Toshihiro Kobayashi:
[ARM PATCH] 1911/1: fix of odd PMD handling in
do_translation_fault()
Vojtech Pavlik:
input: Chips passing MUX detection incorrectly due to USB Legacy
support report MUX version 10.12, not 12.10. Fixed.
input: Profusion/ServerWorks chipset workaround in i8042.c for Ingo
Molnar
input: Fix emulation of mouse reset (0xff) command
input: Check for IM Explorer mice even if IMPS check failed
input: Exclude tasklet changes to i8042.c
William Lee Irwin III:
use aio workqueue in fs/aio.c
correct use_mm()/unuse_mm() to use task_lock() to protect ->mm