commit 08e15e81a40e3241ce93b4a43886f3abda184aa6 Author: Linus Torvalds Date: Tue Mar 6 20:41:20 2007 -0800 Linux 2.6.21-rc3 .. hopefully most of the resume/suspend problems introduced by the timer and other changes are behind us. Signed-off-by: Linus Torvalds commit 38f3323037de22bb0089d08be27be01196e7148b Author: Linus Torvalds Date: Tue Mar 6 19:38:01 2007 -0800 Revert "[PATCH] LOG2: Alter get_order() so that it can make use of ilog2() on a constant" This reverts commit 39d61db0edb34d60b83c5e0d62d0e906578cc707. The commit was buggy in multiple ways: - the conversion to ilog2() was incorrect to begin with - it tested the wrong #defines, so on all architectures but FRV you'd never see the bug except for constant arguments. - the new "get_order()" macro used its arguments multiple times, and didn't even parenthesize them properly - despite the comments, it was not true that you could use it for constant initializers, since not all architectures even use the generic page.h header file. All of the problems are individually fixable, but it all boils down to: better just revert it, and re-do it from scratch. Cc: David Howells Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Andrew Morton Signed-off-by: Linus Torvalds commit 5d6deb940f880140fbcf5ec42e92534e78785e99 Author: Greg Ungerer Date: Wed Mar 7 11:28:13 2007 +1000 [PATCH] m68knommu: remove local_bh_count Remove un-used/un-referenced local_bh_count. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds commit 1ed35e0d8afd7cd57f5b592e56f2af6794bab5c5 Author: Greg Ungerer Date: Wed Mar 7 11:28:13 2007 +1000 [PATCH] m68knommu: use irq_handler_t and rtc_time in prototypes Use irq_handler_t for passing clock handler routine around. And use new rtc_time in place of hwclock_time. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds commit 8bb25184b3bed4930f65a138faf1905ca96054af Author: Greg Ungerer Date: Wed Mar 7 11:28:13 2007 +1000 [PATCH] m68knommu: GPIO line defines for the ColdFire 5282 For the Freescale M5282 ColdFire, Port UA Pin Assignment Register should set to UART mode. Patch submitted by David Wu . Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds commit 28580df03e18c33dd29af83c23c1d52f3df320f1 Author: Greg Ungerer Date: Wed Mar 7 11:28:13 2007 +1000 [PATCH] m68knommu: fix work queues in mcfserial.c driver Fix work queue code to support new model. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds commit ebfcfef44e4a759dd08a4b5e28848787b5530c0c Author: Greg Ungerer Date: Wed Mar 7 11:28:13 2007 +1000 [PATCH] m68knommu: set GPIO lines for serial ports on 5282 in mcfserial.c For the Freescale M5282 ColdFire, Port UA Pin Assignment Register should set to UART mode. Patch submitted by David Wu . Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds commit 8668fb5d8d1bbae1492baf4b8d72b5151a5c4d40 Author: Greg Ungerer Date: Wed Mar 7 11:28:13 2007 +1000 [PATCH] m68knommu: use irq_handler_t and remove regs arg for 68328 Remove regs arg from bad interrupt handler. Use irq_handler_t type for handler arg of local request_irq(). Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds commit 1ea9acc7823587266a26293a3b74deafc6637427 Author: Greg Ungerer Date: Wed Mar 7 11:28:13 2007 +1000 [PATCH] m68knommu: use irq_handler_t for passing handler types in 68328 setup Use irq_handler_t type for passing around timer interrupt routine in 368360 setup code. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds commit b032fde9097605f9f1099eeca28f3b5b09e55ec0 Author: Greg Ungerer Date: Wed Mar 7 11:28:13 2007 +1000 [PATCH] m68knommu: use irq_handler_t for passing handler types in 68360 setup Use irq_handler_t type for passing around timer interrupt routine. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds commit 03154a271012031ad6336dc3344679440ba49c24 Author: Mark Gross Date: Tue Mar 6 13:58:45 2007 -0800 [PATCH] minor updat to tlclk Kconfig entry The tlclk driver is going on the MPCBL005 so I need to make the Kconfig more more generic. Just some text changes. Signed-off-by: Mark Gross Signed-off-by: Linus Torvalds commit 059819a41d4331316dd8ddcf977a24ab338f4300 Author: Marcel Holtmann Date: Tue Mar 6 22:12:00 2007 +0100 [PATCH] Fix buffer overflow in Omnikey CardMan 4040 driver (CVE-2007-0005) Based on a patch from Don Howard When calling write() with a buffer larger than 512 bytes, the driver's write buffer overflows, allowing to overwrite the EIP and execute arbitrary code with kernel privileges. In read(), there exists a similar problem, but coming from the device. A malicous or buggy device sending more than 512 bytes can overflow of the driver's read buffer, with the same effects as above. Signed-off-by: Marcel Holtmann Signed-off-by: Harald Welte Signed-off-by: Linus Torvalds commit 266d4f40370757459f8aa063976c932d0de5e59b Author: Hugh Dickins Date: Tue Mar 6 19:20:11 2007 +0000 [PATCH] suspend regression: sysfs deadlock Suspend deadlocks when trying to unregister /sys/block/sr0. This comes from Oliver's commit 94bebf4d1b8e7719f0f3944c037a21cfd99a4af7 "Driver core: fix race in sysfs between sysfs_remove_file() and read()/write()". sysfs_write_file downs buffer->sem while calling flush_write_buffer, and flushing that particular write buffer entails downing buffer->sem in orphan_all_buffers, resulting in the obvious self-deadlock. Signed-off-by: Linus Torvalds commit 063ea774b021c70fa96139eb601f894aff8941c0 Author: Ralf Baechle Date: Tue Mar 6 20:28:02 2007 +0000 [MIPS] IP27: Build fix Signed-off-by: Ralf Baechle commit 08253b39f861e6167aa3acbe155f304ee800ce5a Author: Ralf Baechle Date: Tue Mar 6 17:04:49 2007 +0000 [MIPS] Wire up ioprio_set and ioprio_get. Signed-off-by: Ralf Baechle commit d52c2d5a626a2cb1848fa7063b3ab79e2752dac7 Author: Dave Johnson Date: Mon Mar 5 20:50:27 2007 -0500 [MIPS] Fix __raw_read_trylock() to allow multiple readers A deadlock can occur for mixed irq and non-irq rwlock readers if a 2nd reader attempts to take lock by looping around __raw_read_trylock(). Signed-off-by: Dave Johnson Signed-off-by: Ralf Baechle commit d0c91ae2bb3df9d7bef279d8f400e0c8ddde0b5e Author: Ralf Baechle Date: Mon Mar 5 15:54:20 2007 +0000 [MIPS] Export __copy_user_inatomic. Signed-off-by: Ralf Baechle commit b961153be981884d9eea4a6752b8169e44857c09 Author: Ralf Baechle Date: Mon Mar 5 00:56:15 2007 +0000 [MIPS] R2 bitops compile fix for gcc < 4.0. Signed-off-by: Ralf Baechle commit a5664c40750ce423f308dfd01ad4e82ecb7ac127 Author: Atsushi Nemoto Date: Mon Mar 5 00:41:39 2007 +0900 [MIPS] TX39: Remove redundant tx39_blast_icache() calls Apply commit 0550d9d13e02b30efa117d47fcadea450bb23d23 to c-tx39.c too. And fix a warning in local_tx39_flush_data_cache_page(). Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 0a22e0d43b6d6468544dd7559d5f3c4acb8b536e Author: Yoichi Yuasa Date: Fri Mar 2 12:42:33 2007 +0900 [MIPS] Cobalt: Fix early printk Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 57a2050c408620613c5715171364de2cc5566f22 Author: Ralf Baechle Date: Sun Mar 4 18:27:34 2007 +0000 [MIPS] SMTC: De-obscure Malta hooks. Should now be understandable why the thing works ... Signed-off-by: Ralf Baechle commit b3920590b589a1dbb41eb58ef0ed2699f136482a Author: Ralf Baechle Date: Sun Mar 4 18:25:51 2007 +0000 [MIPS] SMTC: Add fordward declarations for mm_struct and task_struct. Signed-off-by: Ralf Baechle commit 32fac80be6df4a2a09f7093b7f51bb6bc3ebef97 Author: Ralf Baechle Date: Sun Mar 4 18:23:48 2007 +0000 [MIPS] SMTC: must include Signed-off-by: Ralf Baechle commit 22e651c6ae78bc779e420d3092f962442dd31305 Author: Ralf Baechle Date: Sun Mar 4 18:22:56 2007 +0000 [MIPS] SMTC: must include Signed-off-by: Ralf Baechle commit f76b7ea48afb6daecbbc26f5408a75ac66b1cf23 Author: Ralf Baechle Date: Sun Mar 4 17:26:56 2007 +0000 [MIPS] Atlas, Malta: Fix build warning. Signed-off-by: Ralf Baechle commit cee87af2a5f75713b98d3e65e43872e547122cd5 Author: Magnus Damm Date: Tue Mar 6 02:34:26 2007 -0800 [IA64] kexec: Use EFI_LOADER_DATA for ELF core header The address where the ELF core header is stored is passed to the secondary kernel as a kernel command line option. The memory area for this header is also marked as a separate EFI memory descriptor on ia64. The separate EFI memory descriptor is at the moment of the type EFI_UNUSABLE_MEMORY. With such a type the secondary kernel skips over the entire memory granule (config option, 16M or 64M) when detecting memory. If we are lucky we will just lose some memory, but if we happen to have data in the same granule (such as an initramfs image), then this data will never get mapped and the kernel bombs out when trying to access it. So this is an attempt to fix this by changing the EFI memory descriptor type into EFI_LOADER_DATA. This type is the same type used for the kernel data and for initramfs. In the secondary kernel we then handle the ELF core header data the same way as we handle the initramfs image. This patch contains the kernel changes to make this happen. Pretty straightforward, we reserve the area in reserve_memory(). The address for the area comes from the kernel command line and the size comes from the specialized EFI parsing function vmcore_find_descriptor_size(). The kexec-tools-testing code for this can be found here: http://lists.osdl.org/pipermail/fastboot/2007-February/005983.html Signed-off-by: Magnus Damm Cc: Simon Horman Cc: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 41d5e5d73ecef4ef56b7b4cde962929a712689b4 Author: Nick Piggin Date: Tue Mar 6 02:34:25 2007 -0800 [IA64] permon use-after-free fix Perfmon associates vmalloc()ed memory with a file descriptor, and installs a vma mapping that memory. Unfortunately, the vm_file field is not filled in, so processes with mappings to that memory do not prevent the file from being closed and the memory freed. This results in use-after-free bugs and multiple freeing of pages, etc. I saw this bug on an Altix on SLES9. Haven't reproduced upstream but it looks like the same issue is there. Signed-off-by: Nick Piggin Cc: Stephane Eranian Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 50157b09b33c2ec3637d3b317b06a7235c57c7f2 Author: Alexandr Andreev Date: Tue Mar 6 02:34:24 2007 -0800 [IA64] sync compat getdents Add VERIFY_WRITE check in the beginning like compat_sys_getdents() (EINVAL vs EFAULT). Signed-off-by: Alexandr Andreev Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit a27e5a13d5863bb9de0ac80cb4bb3f4442f0aad1 Author: Lee Schermerhorn Date: Tue Mar 6 02:34:23 2007 -0800 [IA64] always build arch/ia64/lib/xor.o Always build ia64 xor.o because multiple config options now depend on it. Necessary to build .20-mm* on ia64 when, e.g., CONFIG_ASYNC_TX_DMA is defined. Don't know if '_ASYNC_TX_DMA makes sense on ia64. If not, maybe Kconfig should preclude it. Could have defined a Kconfig option that defaults to true if MD_RAID456 || ASYNC_TX_DMA to control building of xor.o, but xor.o is only 848 bytes and this IS ia64... Signed-off-by: Lee Schermerhorn Cc: Bob Picco Cc: Eric Whitney Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit d826393cdebe340b3716002bfb1298ab19b57e83 Author: schwab@suse.de Date: Tue Mar 6 02:34:22 2007 -0800 [IA64] Remove stack hard limit on ia64 Un-Breaks pthreads, since Oct 2003. Signed-off-by: Olaf Hering Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit f4a570997e71b892805a1e71303d09c327af135f Author: Horms Date: Tue Mar 6 02:34:21 2007 -0800 [IA64] point saved_max_pfn to the max_pfn of the entire system Make saved_max_pfn point to max_pfn of entire system. Without this patch is so that vmcore is zero length on ia64. This is because saved_max_pfn was wrongly being set to the max_pfn of the crash kernel's address space, rather than the max_pfg on the physical memory of the machine - the whole purpose of vmcore is to access physical memory that is not part of the crash kernel's addresss space. Signed-off-by: Simon Horman Signed-off-by: Zou Nan hai Sort-Of-Acked-By: Jay Lan Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 99c72ce091ec85868a0847e598eb7562dc0d8205 Author: Gerrit Renker Date: Tue Mar 6 14:24:44 2007 -0800 [DCCP]: Set RTO for newly created child socket This mirrors a recent change in tcp_open_req_child, whereby the icsk_rto of the newly created child socket was not set (but rather on the parent socket). Same fix for DCCP. Signed-off-by: Gerrit Renker Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 4d46861be6196d0f1614724590968d8da26af82a Author: Gerrit Renker Date: Tue Mar 6 14:24:18 2007 -0800 [DCCP]: Correctly split CCID half connections This fixes a bug caused by a previous patch, which causes DCCP servers in LISTEN state to not receive packets. This patch changes the logic so that * servers in either LISTEN or OPEN state get the RX half connection packets * clients in OPEN state get the TX half connection packets Signed-off-by: Gerrit Renker Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 1e51f9513e6b021abcaefd7c76f9b5d682f83232 Author: Johannes Berg Date: Tue Mar 6 13:44:06 2007 -0800 [NET]: Fix compat_sock_common_getsockopt typo. This patch fixes a typo in compat_sock_common_getsockopt. Signed-off-by: Johannes Berg Acked-by: James Morris Signed-off-by: David S. Miller commit 25667d675454f2cd258c5fa798a2281af1ef2ae9 Author: Tony Luck Date: Tue Mar 6 13:31:45 2007 -0800 Revert "[IA64] swiotlb abstraction (e.g. for Xen)" This reverts commit 51099005ab8e09d68a13fea8d55bc739c1040ca6. commit 64a146513f8f12ba204b7bf5cb7e9505594ead42 Author: David S. Miller Date: Tue Mar 6 11:21:05 2007 -0800 [NET]: Revert incorrect accept queue backlog changes. This reverts two changes: 8488df894d05d6fa41c2bd298c335f944bb0e401 248f06726e866942b3d8ca8f411f9067713b7ff8 A backlog value of N really does mean allow "N + 1" connections to queue to a listening socket. This allows one to specify "0" as the backlog and still get 1 connection. Noticed by Gerrit Renker and Rick Jones. Signed-off-by: David S. Miller commit c7276fde27bca89798f33c0be9543dc108468788 Author: Rafael J. Wysocki Date: Tue Mar 6 01:42:24 2007 -0800 [PATCH] kconfig: Update swsusp description Update the outdated and inaccurate description of the software suspend in Kconfig. Signed-off-by: Rafael J. Wysocki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 42a7fc4a6598221f1a547a76cdd45a8ab4d90e93 Author: Greg Banks Date: Tue Mar 6 01:42:23 2007 -0800 [PATCH] knfsd: provide sunrpc pool_mode module option Provide a module param "pool_mode" for sunrpc.ko which allows a sysadmin to choose the mode for mapping NFS thread service pools to CPUs. Values are: auto choose a mapping mode heuristically global (default, same as the pre-2.6.19 code) a single global pool percpu one pool per CPU pernode one pool per NUMA node Note that since 2.6.19 the hardcoded behaviour has been "auto", this patch makes the default "global". The pool mode can be changed after boot/modprobe using /sys, if the NFS and lockd services have been shut down. A useful side effect of this change is to fix a small memory leak when unloading the module. Signed-off-by: Greg Banks Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cda1fd4abd773216a888487af0170d0cc3d50454 Author: NeilBrown Date: Tue Mar 6 01:42:22 2007 -0800 [PATCH] knfsd: fix recently introduced problem with shutting down a busy NFS server When the last thread of nfsd exits, it shuts down all related sockets. It currently uses svc_close_socket to do this, but that only is immediately effective if the socket is not SK_BUSY. If the socket is busy - i.e. if a request has arrived that has not yet been processes - svc_close_socket is not effective and the shutdown process spins. So create a new svc_force_close_socket which removes the SK_BUSY flag is set and then calls svc_close_socket. Also change some open-codes loops in svc_destroy to use list_for_each_entry_safe. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a05ed73e1abfd7e0e7d474817245861deaa18af Author: NeilBrown Date: Tue Mar 6 01:42:22 2007 -0800 [PATCH] knfsd: remove CONFIG_IPV6 ifdefs from sunrpc server code They don't really save that much, and aren't worth the hassle. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7a37f5787e76bf1765c1add3a9a7163f841a28bb Author: NeilBrown Date: Tue Mar 6 01:42:21 2007 -0800 [PATCH] knfsd: use recv_msg to get peer address for NFSD instead of code-copying The sunrpc server code needs to know the source and destination address for UDP packets so it can reply properly. It currently copies code out of the network stack to pick the pieces out of the skb. This is ugly and causes compile problems with the IPv6 stuff. So, rip that out and use recv_msg instead. This is a much cleaner interface, but has a slight cost in that the checksum is now checked before the copy, so we don't benefit from doing both at the same time. This can probably be fixed. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0e8cd28a084691587549630dce728661401d343b Author: Jeff Dike Date: Tue Mar 6 01:42:20 2007 -0800 [PATCH] uml: comment the initialization of a global Comment the fact that sig_info is initialized early in boot, and thus doesn't need any locking. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b4cf95c69a72baf90b8f275294a3ff3d282ffe09 Author: Jeff Dike Date: Tue Mar 6 01:42:19 2007 -0800 [PATCH] uml: add a debugging message Add a debugging message in the case that mapping a stub fails. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7c7a89499a1089a36e40de2db54ff82f5988270d Author: Jeff Dike Date: Tue Mar 6 01:42:18 2007 -0800 [PATCH] uml: fix formatting violations in signal delivery code Fix a few formatting bugs in the signal code. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3b46e650165f691a30ddede1a79d2df02f3459d7 Author: Jeff Dike Date: Tue Mar 6 01:42:17 2007 -0800 [PATCH] linux/audit.h needs linux/types.h Include linux/types.h here because we need a definition of __u32. This file appears not be exported verbatim by libc, so I think this doesn't have any userspace consequences. Signed-off-by: Jeff Dike Cc: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f991633de626a5f16069d00e26b45142e037ce24 Author: Dimitri Gorokhovik Date: Tue Mar 6 01:42:17 2007 -0800 [PATCH] initramfs should not depend on CONFIG_BLOCK initramfs ended up depending on BLOCK: INITRAMFS_SOURCE <-- BLK_DEV_INITRD <-- BLOCK This inhibits use of customized-initramfs-over-ramfs without block layer (ramfs would still be enabled), useful in embedded applications. Move BLK_DEV_INITRD out of 'drivers/block/Kconfig' and into 'init/Kconfig', make it unconditional. Signed-off-by: Dimitri Gorokhovik Cc: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de69fee82c5962fb7bdaf6eb8a81302f418d1a1d Author: Mike Miller (OS Dev) Date: Tue Mar 6 01:42:16 2007 -0800 [PATCH] cciss: add struct pci_driver shutdown support (replaces reboot notifier) This patch adds support for the struct pci_driver shutdown method to cciss. We require notification of an impending reboot or shutdown so that we can flush the battery backed write cache (BBWC) on the Smart Array controller. Signed-off-by: Mike Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97c06978515ed6e071bfd4a5e858837dd2b0edcf Author: Mike Miller (OS Dev) Date: Tue Mar 6 01:42:14 2007 -0800 [PATCH] cciss: fix for 2TB support This patch changes the way we determine if a logical volume is larger than 2TB. The original test looked for a total_size of 0. Originally we added 1 to the total_size. That would make our read_capacity return size 0 for >2TB lv's. We assumed that we could not have a lv size of 0 so it seemed OK until we were in a clustered system. The backup node would see a size of 0 due to the reservation on the drive. That caused the driver to switch to 16-byte CDB's which are not supported on older controllers. After that everything was broken. It may seem petty but I don't see the value in trying to determine if the LBA is beyond the 2TB boundary. That's why when we switch we use 16-byte CDB's for all read/write operations. Please consider this for inclusion. Signed-off-by: Mike Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6ad67112a78623025632865d716b2f7645874c5 Author: Josh Triplett Date: Tue Mar 6 01:42:13 2007 -0800 [PATCH] Publish rcutorture module parameters via sysfs, read-only rcutorture's module parameters currently use permissions of 0, so they don't show up in /sys/module/rcutorture/parameters. Change the permissions on all module parameters to world-readable (0444). rcutorture does all of its initialization and thread startup when loaded and relies on the parameters not changing during execution, so they should not permit writing. However, reading seems fine. Signed-off-by: Josh Triplett Cc: "Paul E. McKenney" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5efee174f8a101cafb1607d2b629bed353701457 Author: Alexey Dobriyan Date: Tue Mar 6 01:42:13 2007 -0800 [PATCH] geode-aes: use unsigned long for spin_lock_irqsave Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57bf63d69cb6b7064e6fec5e83da4e1918168282 Author: Dave Kleikamp Date: Tue Mar 6 01:42:12 2007 -0800 [PATCH] fs: nobh_truncate_page() fix This fixes a regression caused by 22c8ca78f20724676b6006232bf06cc3e9299539. nobh_prepare_write() no longer marks the page uptodate, so nobh_truncate_page() needs to do it. Signed-off-by: Dave Kleikamp Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90675a27fa3eb0e97f1d040b183cceb44316e669 Author: Daniel Walker Date: Tue Mar 6 01:42:11 2007 -0800 [PATCH] fix vsyscall settimeofday I've only seen this on x86_64. The vsyscall state only gets updated when a timer interrupts comes in. So if the time is set long before the next timer, there will be a period when a gettimeofday() won't reflect the correct time. I added an explicit update_vsyscall() during the settimeofday(), that way the vsyscall state doesn't get stale. Signed-off-by: Daniel Walker Cc: Thomas Gleixner Acked-by: Ingo Molnar Acked-by: John Stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7a434814c7a6500b08bf4419ba8712b152d08d08 Author: Peter Zijlstra Date: Tue Mar 6 01:42:09 2007 -0800 [PATCH] mqueue: nested locking annotation Fix http://bugzilla.kernel.org/show_bug.cgi?id=8130 Signed-off-by: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a6753ca08541437f4c243708d2011b4758e17e8 Author: Adrian Bunk Date: Tue Mar 6 01:42:08 2007 -0800 [PATCH] remove arch/i386/kernel/tsc.c:custom_sched_clock Remove the no longer used custom_sched_clock. Signed-off-by: Adrian Bunk Acked-by: Zachary Amsden Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f8953856eb8dd62232aee6cacb46993dc2ac4869 Author: Thomas Gleixner Date: Tue Mar 6 01:42:08 2007 -0800 [PATCH] highres: do not run the TIMER_SOFTIRQ after switching to highres mode The TIMER_SOFTIRQ runs the hrtimers during bootup until a usable clocksource and clock event sources are registered. The switch to high resolution mode happens inside of the TIMER_SOFTIRQ, but runs the softirq afterwards. That way the tick emulation timer, which was set up in the switch to highres might be executed in the softirq context, which is a BUG. The rbtree has not to be touched by the softirq after the highres switch. This BUG was observed by Andres Salomon, who provided the information to debug it. Return early from the softirq, when the switch was sucessful. [dilinger@debian.org: add debug warning] [akpm@linux-foundation.org: make debug warning compile] Signed-off-by: Thomas Gleixner Cc: Andres Salomon Acked-by: Ingo Molnar Signed-off-by: Andres Salomon Acked-by: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d1d67174b42a02c7d106894df0ed155d595871f7 Author: Andres Salomon Date: Tue Mar 6 01:42:07 2007 -0800 [PATCH] hrtimers: hrtimer_clock_base description typo The description for the hrtimer_clock_base struct describes "hrtimer_base". That should be hrtimer_clock_base. Signed-off-by: Andres Salomon Acked-by: Thomas Gleixner Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8437fdc7428eac363579bf0cce2526c35573735c Author: Andres Salomon Date: Tue Mar 6 01:42:06 2007 -0800 [PATCH] hrtimers: fix HRTIMER_CB_IRQSAFE_NO_SOFTIRQ description The description for HRTIMER_CB_IRQSAFE_NO_SOFTIRQ is backwards; "NO SOFTIRQ" sounds a whole lot like it means it must not be run in a softirq. Signed-off-by: Andres Salomon Acked-by: Thomas Gleixner Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2272b0e03ea5731aca058eaf79c9955b36f0c083 Author: Andres Salomon Date: Tue Mar 6 01:42:05 2007 -0800 [PATCH] i386: make x86_64 tsc header require i386 rather than vice-versa Prior to commit 95492e4646e5de8b43d9a7908d6177fb737b61f0 ([PATCH] x86: rewrite SMP TSC sync code), the headers in asm-i386 did not really require anything in include/asm-x86_64. This means that distributions such as fedora did not include asm-x86_64 in kernel-devel headers for i386. Ingo's commit changed that, and broke things. This is easy enough to hack around in package builds by just including asm-x86_64 on i386, but that's kind of annoying. If anything, x86_64 should depend upon i386, not the other way around. This patch changes it so that asm-x86_64/tsc.h includes asm-i386/tsc.h, rather than vice-versa. Signed-off-by: Andres Salomon Acked-by: Ingo Molnar Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e585047ef97b4002a7f416b0ca01ab894f7755de Author: Thomas Gleixner Date: Tue Mar 6 01:42:04 2007 -0800 [PATCH] Scheduled removal of SA_xxx interrupt flags fixups 3 The obsolete SA_xxx interrupt flags have been used despite the scheduled removal. Fixup the remaining users. Signed-off-by: Thomas Gleixner Acked-by: Ingo Molnar Cc: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0de1517e23c2e28d58a6344b97a120596ea200bb Author: Mark Lord Date: Tue Mar 6 01:42:03 2007 -0800 [PATCH] Fix 2.6.21 rfcomm lockups Any attempt to open/use a bluetooth rfcomm device locks up scheduling completely on my machine. Interrupts (ping, alt-sysrq) seem to be alive, but nothing else. This was working fine in 2.6.20, broken now in 2.6.21-rc2-git* Reverting this change (below) fixes it: | author Marcel Holtmann | Sat, 17 Feb 2007 22:58:57 +0000 (23:58 +0100) | committer David S. Miller | Mon, 26 Feb 2007 19:42:41 +0000 (11:42 -0800) | commit c1a3313698895d8ad4760f98642007bf236af2e8 | tree 337a876f727061362b6a169f8759849c105b8f7a tree | snapshot | parent f5ffd4620aba9e55656483ae1ef5c79ba81f5403 commit | diff | | [Bluetooth] Make use of device_move() for RFCOMM TTY devices | | In the case of bound RFCOMM TTY devices the parent is not available | before its usage. So when opening a RFCOMM TTY device, move it to | the corresponding ACL device as a child. When closing the device, | move it back to the virtual device tree. | Signed-off-by: Marcel Holtmann The simplest fix for this bug is to prevent sysfs_move_dir() from self-deadlocking when (old_parent == new_parent). This patch prevents total system lockup when using rfcomm devices. Signed-off-by: Mark Lord Acked-by: Cornelia Huck Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 166f60dde0f3793e67bd0d76952eaa46705bbaa9 Author: James Simmons Date: Tue Mar 6 01:42:02 2007 -0800 [PATCH] fbdev: fix kconfig error if FB_DDC=n Fix the following error if FB_DDC=n Kernel: arch/x86_64/boot/bzImage is ready (#1) Building modules, stage 2. MODPOST 229 modules WARNING: "fb_ddc_read" [drivers/video/nvidia/nvidiafb.ko] undefined! make[1]: *** [__modpost] Error 1 Signed-off-by: Antonino Daplas Cc: James Simmons Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit df470c30da7900a3fbc48e3d34187a3786c1acdb Author: Randy Dunlap Date: Tue Mar 6 01:42:01 2007 -0800 [PATCH] atyfb: fix kconfig error part 2 Fix implicit declarations and missing code in atyfb. drivers/video/aty/atyfb_base.c:2137: warning: implicit declaration of function 'a ty_ld_lcd' drivers/video/aty/atyfb_base.c:2154: warning: implicit declaration of function 'a ty_st_lcd' atyfb_base.c:(.text+0x33e5c): undefined reference to `aty_ld_lcd' atyfb_base.c:(.text+0x33eb2): undefined reference to `aty_st_lcd' Signed-off-by: Randy Dunlap Signed-off-by: Antonino Daplas Cc: James Simmons Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b9860ecf2553fbc4c3bd66f5df7e82a6d5179775 Author: Dave Jones Date: Tue Mar 6 01:42:00 2007 -0800 [PATCH] nvidiafb backlight: Fix implicit declaration in nv_backlight drivers/video/nvidia/nv_backlight.c: In function 'nvidia_bl_init': drivers/video/nvidia/nv_backlight.c:103: error: implicit declaration of function 'pmac_has_backlight_type' Signed-off-by: Dave Jones Signed-off-by: Antonino Daplas Cc: James Simmons Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6261d720da40c51af96881ed210fe80f10138a7b Author: Andrew Morton Date: Tue Mar 6 01:41:58 2007 -0800 [PATCH] fix build with CONFIG_NO_IDLE_HZ=n arch/i386/kernel/vmi.c: In function 'vmi_safe_halt': arch/i386/kernel/vmi.c:262: warning: implicit declaration of function 'vmi_stop_hz_timer' arch/i386/kernel/vmi.c:266: warning: implicit declaration of function 'vmi_account_time_restart_hz_timer' Acked-by: Ingo Molnar Cc: Thomas Gleixner Cc: Zachary Amsden Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6321dd60c76b2e12383bc06046288b15397ed3a0 Author: Thomas Gleixner Date: Tue Mar 6 08:25:42 2007 +0100 [PATCH] Save/restore periodic tick information over suspend/resume The programming of periodic tick devices needs to be saved/restored across suspend/resume - otherwise we might end up with a system coming up that relies on getting a PIT (or HPET) interrupt, while those devices default to 'no interrupts' after powerup. (To confuse things it worked to a certain degree on some systems because the lapic gets initialized as a side-effect of SMP bootup.) This suspend / resume thing was dropped unintentionally during the last-minute -mm code reshuffling. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 6185af1f4254a53563fe6d6af652f5775fc70e25 Author: Jaroslav Kysela Date: Tue Mar 6 14:10:08 2007 +0100 [ALSA] version 1.0.14rc3 Signed-off-by: Jaroslav Kysela commit a715dfc7b9ef15ed5b398b185bd84cc015ff37f6 Author: Pierre Ossman Date: Tue Mar 6 13:38:49 2007 +0100 sdhci: release irq during suspend Release the device's irq during sleep, as all well-behaved drivers should. Signed-off-by: Pierre Ossman commit 62df67a523acd7a22d936bf946b1889dbd60ca98 Author: Mark Lord Date: Tue Mar 6 13:30:13 2007 +0100 sdhci: make isr tolerant of read errors The interrupt is shared with another device, which resumes earlier than the sdhci controller, and generates an interrupt. The sdhci interrupt handler runs, sees 0xffffffff in its own device's interrupt status, and tries to handle it.. The reason for the 0xffffffff is that the device is still suspended, and *all* regs are reading back 0xffffffff. Signed-off-by: Mark Lord Signed-off-by: Andrew Morton Signed-off-by: Pierre Ossman commit cd9277c011a99769fa371521b460ed57f6d280b1 Author: Pierre Ossman Date: Sun Feb 18 12:07:47 2007 +0100 mmc: require explicit support for high-speed The new high-speed timings are similar to each other and the old system, but not identical. And although things "just work" most of the time, sometimes it does not. So we need to start marking which hosts are known to fully comply with the new timings. Signed-off-by: Pierre Ossman commit c5f93cf19df633a8dbd7adf8130d604eec96e145 Author: Pierre Ossman Date: Mon Feb 19 11:34:43 2007 +0100 ncpfs: make sure server connection survives a kill Use internal buffers instead of the ones supplied by the caller so that a caller can be interrupted without having to abort the entire ncp connection. Signed-off-by: Pierre Ossman Acked-by: Petr Vandrovec commit f3be97427172856d6865ddfedea84fa3a9f33227 Author: Andrew Morton Date: Tue Mar 6 02:41:55 2007 -0800 sis900 warning fixes drivers/net/sis900.c: In function 'sis900_reset_phy': drivers/net/sis900.c:972: warning: 'status' may be used uninitialized in this function drivers/net/sis900.c: In function 'sis900_check_mode': drivers/net/sis900.c:1431: warning: 'status' may be used uninitialized in this function drivers/net/sis900.c: In function 'sis900_timer': drivers/net/sis900.c:1467: warning: 'status' may be used uninitialized in this function Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 84dd619e4dc3b0b1c40dafd98c90fd950bce7bc5 Author: Dale Farnsworth Date: Sat Mar 3 06:40:28 2007 -0700 mv643xx_eth: Place explicit port number in mv643xx_eth_platform_data We were using the platform_device.id field to identify which ethernet port is used for mv643xx_eth device. This is not generally correct. It will be incorrect, for example, if a hardware platform uses a single port but not the first port. Here, we add an explicit port_number field to struct mv643xx_eth_platform_data. This makes the mv643xx_eth_platform_data structure required, but that isn't an issue since all users currently provide it already. Signed-off-by: Dale Farnsworth Signed-off-by: Jeff Garzik commit b2cbbd8e0e8093fbf115ac2669482b016d781c78 Author: Don Fry Date: Mon Mar 5 18:13:09 2007 -0800 pcnet32: Fix PCnet32 performance bug on non-coherent architecutres The PCnet32 driver always passed the the size of the largest possible packet to the pci_dma_sync_single_for_cpu and pci_dma_sync_single_for_device. This results in a fairly large "colateral damage" in the caches and makes the flush operation itself much slower. On a system with a 40MHz CPU this patch increases network bandwidth by about 12%. Signed-off-by: Ralf Baechle Acked-by: Don Fry Signed-off-by: Jeff Garzik commit 4c44fd009ae79fc04e2c049f708792ad83400dde Author: Prarit Bhargava Date: Tue Mar 6 02:42:00 2007 -0800 __devinit & __devexit cleanups for de2104x driver Fixes MODPOST warnings similar to: WARNING: drivers/net/tulip/de2104x.o - Section mismatch: reference to .init.text:de_init_one from .data.rel.local after 'de_driver' (at offset 0x20) WARNING: drivers/net/tulip/de2104x.o - Section mismatch: reference to .exit.text:de_remove_one from .data.rel.local after 'de_driver' (at offset 0x28) Signed-off-by: Prarit Bhargava Cc: Valerie Henson Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit e12651539808437a97f3e33c659c3d7b4000e41e Author: Dmitriy Monakhov Date: Tue Mar 6 02:41:59 2007 -0800 3c59x: Handle pci_enable_device() failure while resuming Handle pci_enable_device() failure while resuming, we can safely exit here. Signed-off-by: Monakhov Dmitriy Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit cfa51b9dbf5aa385c6d1f8645587fdc4fe8c13fd Author: Maxim Levitsky Date: Tue Mar 6 02:41:53 2007 -0800 dmfe: Fix link detection Add link detection Signed-off-by: Maxim Levitsky Cc: Valerie Henson Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 4dc68f3de5e36d72663bb51b94662d2d5db84125 Author: Maxim Levitsky Date: Tue Mar 6 02:41:52 2007 -0800 dmfe: fix two bugs Fix a oops on module removal due to deallocating memory before unregistring driver Fix a NULL pointer dereference when dev_alloc_skb fails Signed-off-by: Maxim Levitsky Cc: Valerie Henson Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit f67ba792fa10e3a65226d53dccc1232908d86c20 Author: Maxim Levitsky Date: Tue Mar 6 02:41:51 2007 -0800 dmfe: trivial/spelling fixes Fix a typo, wrap lines on 80-th column, change KERN_ERR to KERN_INFO for link status message Signed-off-by: Maxim Levitsky Cc: Valerie Henson Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit ead9bffb157a22c1f883beb8d20ba8bf7bc92a58 Author: Andrew Morton Date: Tue Mar 6 02:41:49 2007 -0800 revert "drivers/net/tulip/dmfe: support basic carrier detection" Revert 7628b0a8c01a02966d2228bdf741ddedb128e8f8. Thomas Bachler reports: Commit 7628b0a8c01a02966d2228bdf741ddedb128e8f8 (drivers/net/tulip/dmfe: support basic carrier detection) breaks networking on my Davicom DM9009. ethtool always reports there is no link. tcpdump shows incoming packets, but TX is disabled. Reverting the above patch fixes the problem. Cc: Samuel Thibault Cc: Jeff Garzik Cc: Valerie Henson Cc: Thomas Bachler Cc: Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 18babd38547a042a4bfd4154a014d1ad33373eb0 Author: Li Yang Date: Tue Mar 6 16:54:05 2007 +0800 ucc_geth: returns NETDEV_TX_BUSY when BD ring is full Returns NETDEV_TX_BUSY when BD ring is full. Signed-off-by: Li Yang Signed-off-by: Jeff Garzik commit a394f013f05ba083d8547551280e0309ca70b08d Author: Li Yang Date: Tue Mar 6 16:53:46 2007 +0800 ucc_geth: Fix BD processing Fix broken BD processing code. Signed-off-by: Michael Barkowski Signed-off-by: Li Yang Signed-off-by: Jeff Garzik commit 6006f7f517b9a754e4c4628755c62872e322c68a Author: Sergei Shtylyov Date: Tue Mar 6 00:10:08 2007 +0400 natsemi: netpoll fixes Fix two issues in this driver's netpoll path: one usual, with spin_unlock_irq() enabling interrupts which nobody asks it to do (that has been fixed recently in a number of drivers) and one unusual, with poll_controller() method possibly causing loss of interrupts due to the interrupt status register being cleared by a simple read and the interrpupt handler simply storing it, not accumulating. Signed-off-by: Sergei Shtylyov Signed-off-by: Jeff Garzik commit a816c7c712ff9f6770168b91facb9bfa9f0acd48 Author: Jay Vosburgh Date: Wed Feb 28 17:03:37 2007 -0800 bonding: Improve IGMP join processing In active-backup mode, the current bonding code duplicates IGMP traffic to all slaves, so that switches are up to date in case of a failover from an active to a backup interface. If bonding then fails back to the original active interface, it is likely that the "active slave" switch's IGMP forwarding for the port will be out of date until some event occurs to refresh the switch (e.g., a membership query). This patch alters the behavior of bonding to no longer flood IGMP to all ports, and to issue IGMP JOINs to the newly active port at the time of a failover. This insures that switches are kept up to date for all cases. "GOELLESCH Niels" originally reported this problem, and included a patch. His original patch was modified by Jay Vosburgh to additionally remove the existing IGMP flood behavior, use RCU, streamline code paths, fix trailing white space, and adjust for style. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit e245cb71d490e5e516c0ca0688fad7de6c22943d Author: Jay Vosburgh Date: Wed Feb 28 17:03:27 2007 -0800 bonding: only receive ARPs for us The ARP validation code only needs ARPs for the bonding device. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit c4f283b1f275e5528c13c119e5cfc80cdba55d00 Author: Jay Vosburgh Date: Wed Feb 28 17:03:20 2007 -0800 bonding: fix double dev_add_pack Bonding can erroneously register the same packet_type to receive ARPs (for use by ARP validation): once at device open time, and once via sysfs. Since sysfs can change the validate setting (and thus register or unregister) at any time, a flag is needed to synchronize with device open in order to avoid double registrations, and the simplest place is within the packet_type structure itself. Double unregister is not an issue. Bug reported by Ulrich Oelmann . Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 2f24d159d5ac418c946e0d38ada46345753688b1 Author: Takashi Iwai Date: Thu Feb 15 18:56:43 2007 +0100 [ALSA] cmipci - Allow to disable integrated FM port The driver didn't allow to disable the integrated FM port (if available), and this annoyed people who don't want FM port. Now fm_port=0 disables the FM port unconditionally. fm_port=1 is used for enabling the integrated FM port (as default). Also fixed the documentation about this option. Fix ALSA bug#2491. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit dd87da1c5d3fd1d973d52e468f76fcc72ad69bd5 Author: Tobin Davis Date: Mon Feb 26 16:07:42 2007 +0100 [ALSA] hda-codec - Fix logic error in headphone mute for Conexant codecs This patch fixes a logic error introduced in the previous patch. Without it, speaker automute mutes the speakers when headphones are removed and unmutes when headphones are plugged in. This was reported by Gregorio Guidi after getting the earlier patch off this mailing list. Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit fe8970b47ae191d932f5bac9e225e74db6e188a3 Author: Takashi Iwai Date: Mon Feb 26 16:00:34 2007 +0100 [ALSA] hda-codec - Add missing Mic Boost for AD1986A codec Added the missing 'Mic Boost' switch for AD1986A codec. This influences largely on the recording level of mic-input on some boards. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit a31e8c7236f40b42f27c275a959ef129257b0bcd Author: Takashi Iwai Date: Thu Feb 22 12:47:25 2007 +0100 [ALSA] ac97 - Add Thinkpad X31 and R40 to AD1981x blacklist Added Thinkpad X31 and R40 to AD1981x line/HP-jack-sense blacklist for avoiding the harmful mixer controls. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit c187c041c6552339e4d8883a1a00c3c489354eca Author: Takashi Iwai Date: Mon Feb 19 15:27:33 2007 +0100 [ALSA] Add missing sysfs device assignment for ALSA PCI drivers Added the missing sysfs device assignment for ALSA PCI drivers. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 3fc24d850708b8dfd3472b25eac0c32dd7708925 Author: Takashi Iwai Date: Fri Feb 16 13:27:18 2007 +0100 [ALSA] hda-codec - Define pin configs for MacBooks Define pin configs for MacBook and MacBook Pro with STAC92xx codecs. The latter is detected automatically by checking codec SSID now. Also, fixed the documentation regarding available modeliof sigmatel codec chips. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit cc69d12d0a063fd5f25d9b395357be5ba438b0c6 Author: Takashi Iwai Date: Thu Feb 15 19:29:26 2007 +0100 [ALSA] hda-codec - Add missing Mic Boost controls for ALC262 Added missing Mic Boost controls for ALC262 codec chip. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 53ae5194e2f70939ceacd8a9be87f356c646759a Author: Liam Girdwood Date: Wed Feb 14 15:23:57 2007 +0100 [ALSA] soc - WM9712 PCM volume This patch suggested by Joe Sauer adds PCM playback volume kcontrol for the WM9712. Signed-off-by: Liam Girdwood Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 847c03e8ac30265787909f5710dee4c564a96df5 Author: Joe Sauer Date: Wed Feb 14 15:23:11 2007 +0100 [ALSA] soc - Fix WM9712 register cache entry This patch by Joe Sauer fixes the WM9712 codec register cache value for register 0x08. Value should be 0x0f0f and not 0xf0f0. Signed-off-by: Joe Sauer Signed-off-by: Liam Girdwood Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 081d17c4726131ba9ed763ea24f7235d8205fdf3 Author: Tobin Davis Date: Thu Feb 15 17:46:18 2007 +0100 [ALSA] hda-codec - Add method for configuring Mac Pro without PCI SSID This patch adds a switch to configure systems that do not provide PCI SSID's for HD Audio like Mac Pro with ALC885. Signed-off-by: Tobin Davis Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit f0f9674585c7b0b1abe9efb68667cb16c878cc45 Author: Takashi Iwai Date: Wed Feb 14 00:59:17 2007 +0100 [ALSA] hda-codec - Add LFE support on Dell M90 Added LFE support on Dell M90 laptop. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela commit 63ed71019c4437caef65fca1f83c990ae729024f Author: Bartlomiej Zolnierkiewicz Date: Sun Mar 4 04:48:08 2007 +0100 pata_pdc202xx_old: fix data corruption and other problems Fix wrong "port" calculations in pdc202xx_{configure_piomode,set_dmamode}() They were broken for all configurations except one (master device on primary channel, no other devices) and as a result device settings + PIO/DMA timings were being programmed into the wrong PCI registers. This could result in a large variety of problems including data corruption, hangs etc. (depending on devices used and your luck :-). ap->port_no ap->devno used PCI registers correct PCI registers 0 0 0x60-0x62 0x60-0x62 0 1 0x62-0x64 0x64-0x66 1 0 0x64-0x66 0x68-0x6a 1 1 0x66-0x68 0x6c-0x6e Also forward port recent fixes from drivers/ide pdc202xx_old driver: * fix XFER_MW_DMA0 timings (they were overclocked, use the official ones) * fix bitmasks for clearing bits of register B: - when programming DMA mode bit 0x10 of register B was cleared which resulted in overclocked PIO timing setting (iff PIO0 was used) - when programming PIO mode bits 0x18 weren't cleared so suboptimal timings were used for PIO1-4 if PIO0 was previously set (bit 0x10) and for PIO0/3/4 if PIO1/2 was previously set (bit 0x08) and finally bump driver version. Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Jeff Garzik commit 8b966dddc29899008fb178a533263afa8d1ad849 Author: Mikael Pettersson Date: Sat Mar 3 20:57:44 2007 +0100 pata_legacy: fix io/irq mismatch pata_legacy fails to detect the disk on my old ISA/VLB 486: it starts to probe io=0x1f0 ctr=0x3f6 irq=15, complains loudly about IDENTIFYs timing out, and finally fails. (Sorry I couldn't capture the kernel's boot messages.) It turns out that the driver's mapping from io to irq in legacy_irq[] is wrong: index 0 for io=0x1f0 has irq=15 but should have irq=14, and index 1 for io=0x170 has irq=14 but should have irq=15. This is confirmed by a comparison with include/asm-i386/ide.h:ide_default_irq(). This patch swaps the first two elements in legacy_irq[], which makes pata_legacy work on my 486. Signed-off-by: Mikael Pettersson Signed-off-by: Jeff Garzik commit 8af12cdb7c4aa9ed278ed71a8b5b130f2d8c8920 Author: Jason Gaston Date: Fri Mar 2 17:39:46 2007 -0800 ahci: RAID mode SATA patch for Intel ICH9M This patch adds the Intel ICH9M RAID controller DID for SATA support. Signed-off-by: Jason Gaston Signed-off-by: Jeff Garzik commit 8a236264f7d6db3f52881d37a86c5a5f704072b0 Author: Steve French Date: Tue Mar 6 00:31:00 2007 +0000 [CIFS] cifs_prepare_write was incorrectly rereading page in some cases Noticed by Shaggy. Signed-off-by: Shaggy Signed-off-by: Steve French commit 2470b648e17e0216922bb78c7f05b4668402459a Author: Cornelia Huck Date: Mon Mar 5 23:36:02 2007 +0100 [S390] cio: Call cancel_halt_clear even when actl == 0. The subchannel may just be status pending, even with actl == 0. We must go through the cancel_halt_clear procedure to put the subchannel into a defined state. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 7c8427c3fa1b2e77c5bd8cf219c1d55dccd0f167 Author: Cornelia Huck Date: Mon Mar 5 23:35:59 2007 +0100 [S390] cio: Use path verification to check for path state. After I/O has been killed by the common I/O layer, trigger path verification which will queue cio_device_nopath_notify itself if it finds a device to be without paths. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit ee04bbccdeb11bdbc54015be8dca30a0deeca5e4 Author: Cornelia Huck Date: Mon Mar 5 23:35:56 2007 +0100 [S390] cio: Fix locking when calling notify function. Make sure we hold the device lock when we modify the ccw device structure but always call the notify function without the lock held. Signed-off-by: Cornelia Huck Signed-off-by: Martin Schwidefsky commit 482b05dd533da162fa8d04c61712fae297bea3e0 Author: Gerald Schaefer Date: Mon Mar 5 23:35:54 2007 +0100 [S390] Fixed handling of access register mode faults. Replaced check_user_space() + __check_access_register with the new check_space(). The old functions made wrong assumptions about kernel and user space when the kernel and user address spaces are switched (kernel in home space, user in primary/secondary space). Secondly the user process can switch to the accress register mode if it is running in primary or secondary mode. In addition it can load an arbitrary value to the access registers. If any other value than 0 for primary space or 1 for secondary space is loaded and memory is accessed using the base register related to the access register, the program should be terminated with a SIGSEGV. To achieve that the DUALD pointer in the DUCT and the PSALD pointer in the PASTE need to point to an array of 8 invalid access-list entries to get a ALEN-translation exception if an invalid alet is used. Signed-off-by: Gerald Schaefer Signed-off-by: Martin Schwidefsky commit 046f3e821f146d6c473edb033af15a0604957af8 Author: Stefan Weinhuber Date: Mon Mar 5 23:35:52 2007 +0100 [S390] dasd: Use default recovery for SNSS requests For extended error reporting we sometimes have to start an Sense Subsystem Status request (SNSS). When this request needs to be recovered for some reason, the recovery request will fail with 'command reject'. Our usual recovery procedure will retry the failed request by creating a new request and chaining the failed request from that one. SNSS requests, though, must not be chained from anything, so the recovery request will fail permanently. Use the default recovery for SNSS request, which will just restart the original request without further ado. Signed-off-by: Stefan Weinhuber Signed-off-by: Martin Schwidefsky commit 5ea732fba7cf1ccded5e762f219a892be4d8d8dc Author: Heiko Carstens Date: Mon Mar 5 23:35:50 2007 +0100 [S390] check_bugs() should be inline. Don't have functions in header files unless they are inline. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 4925c7e22293dbf2b85351e8c2323ad8282396b3 Author: Michael Holzheu Date: Mon Mar 5 23:35:47 2007 +0100 [S390] tape: Compression overwrites crypto setting After switching compression on/off with the mt command, tape encryption is no longer working. The reason for that is, that the modeset_byte is set to the compression value instead of using bitwise and/or bit operations to enable/disable the corresponding bit. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 9c9c17613a78545a4a93b1370924f62eb282c903 Author: Heiko Carstens Date: Mon Mar 5 23:35:45 2007 +0100 [S390] nss: disable kexec. nss and kexec don't work together since kexec wants to write to the read-only text section of the shared kernel image. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit c5dd8586707800cd7bbdefcd675ad7d3c9afcd57 Author: Heiko Carstens Date: Mon Mar 5 23:35:43 2007 +0100 [S390] reipl: move dump_prefix_page out of text section. Reipl doesn't work on older machines were s390_reset_machine() gets called. The reason is that the text section is read-only but the variable dump_prefix_page is there. Since s390_reset_machine() writes to it we get a protection exception. Therefore move dump_prefix_page to the bss section. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 25864162c15e61b494aa619974a4d521270362f7 Author: Heiko Carstens Date: Mon Mar 5 23:35:41 2007 +0100 [S390] smp: disable preemption in smp_call_function/smp_call_function_on Avoid sprinkling a _lot_ of preempt_disable/preempt_enable pairs. This would be necessary for e.g. the iucv driver. Also this way we are more consistent with other architectures which disable preemption at least for smp_call_function. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit f794c8279d02ccd69429d816eb03fa12c130d06d Author: Martin Schwidefsky Date: Mon Mar 5 23:35:38 2007 +0100 [S390] kprobes breaks BUG_ON The illegal operation handler calls the die notifier with DIE_BPT to let kprobes pick up its breakpoint. If kprobes does not find its breakpoint it returns NOTIFY_STOP instead of NOTIFY_DONE. Since we use stop_machine_run on s390 to arm/disarm the kprobes breakpoints the race that kprobe_handler tries to solve by checking for the kprobes breakpoints does not exist. Removing the check makes BUG_ON working again. Signed-off-by: Martin Schwidefsky commit 187f5f84ef14a07dccf5f4503099708d60f6a724 Author: Eric Dumazet Date: Mon Mar 5 13:32:48 2007 -0800 [INET]: twcal_jiffie should be unsigned long, not int Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 122d76bd872d07d428f94c509428a65476e9b1af Author: Jan Altenberg Date: Mon Mar 5 13:29:55 2007 -0800 [GIANFAR]: Fix compile error in latest git I recognized a compile error in latest git: /here/workdir/git/drivers/net/gianfar.c: In function `gfar_vlan_rx_kill_vid': /here/workdir/git/drivers/net/gianfar.c:1135: error: structure has no member named `vgrp' This error was introduced in commit: commit 6d04e3b04b6ab569cabeb5ca28ad1be11777e895 ... [VLAN]: Avoid a 4-order allocation. Signed-off-by: Jan Altenberg Signed-off-by: David S. Miller commit 6f30e1867cb73602c6ed7f97e15a48e0a0c96cde Author: Florian Zumbiehl Date: Sun Mar 4 16:03:22 2007 -0800 [PPPOE]: Use ifindex instead of device pointer in key lookups. Otherwise we can potentially try to dereference a NULL device pointer in some cases. Signed-off-by: David S. Miller commit bc5f77434721a84705601e4d448d331c73900759 Author: Yasuyuki Kozakai Date: Sun Mar 4 16:00:32 2007 -0800 [NETFILTER]: ip6_route_me_harder should take into account mark Signed-off-by: Yasuyuki Kozakai Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b4d6202b3652f5dbce358b99dee7d7c80b567529 Author: Michal Miroslaw Date: Sun Mar 4 16:00:04 2007 -0800 [NETFILTER]: nfnetlink_log: fix reference counting Fix reference counting (memory leak) problem in __nfulnl_send() and callers related to packet queueing. Signed-off-by: Michal Miroslaw Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 7d90e86d31e8beeb66d6754aece890ac4a579887 Author: Patrick McHardy Date: Sun Mar 4 15:59:45 2007 -0800 [NETFILTER]: nfnetlink_log: fix module reference counting Count module references correctly: after instance_destroy() there might be timer pending and holding a reference for this netlink instance. Based on patch by Michal Miroslaw Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit dd16704eba171b32ef0cded3a4f562b33b911066 Author: Michal Miroslaw Date: Sun Mar 4 15:59:20 2007 -0800 [NETFILTER]: nfnetlink_log: fix possible NULL pointer dereference Eliminate possible NULL pointer dereference in nfulnl_recv_config(). Signed-off-by: Michal Miroslaw Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit a497097d35d37b47e885cf15bcaea01f279fe5e6 Author: Michal Miroslaw Date: Sun Mar 4 15:59:01 2007 -0800 [NETFILTER]: nfnetlink_log: fix NULL pointer dereference Fix the nasty NULL dereference on multiple packets per netlink message. BUG: unable to handle kernel NULL pointer dereference at virtual address 00000004 printing eip: f8a4b3bf *pde = 00000000 Oops: 0002 [#1] SMP Modules linked in: nfnetlink_log ipt_ttl ipt_REDIRECT xt_tcpudp iptable_nat nf_nat nf_conntrack_ipv4 xt_state ipt_ipp2p xt_NFLOG xt_hashlimit ip6_tables iptable_filter xt_multiport xt_mark ipt_set iptable_raw xt_MARK iptable_mangle ip_tables cls_fw cls_u32 sch_esfq sch_htb ip_set_ipmap ip_set ipt_ULOG x_tables dm_snapshot dm_mirror loop e1000 parport_pc parport e100 floppy ide_cd cdrom CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00010206 (2.6.20 #5) EIP is at __nfulnl_send+0x24/0x51 [nfnetlink_log] eax: 00000000 ebx: f2b5cbc0 ecx: c03f5f54 edx: c03f4000 esi: f2b5cbc8 edi: c03f5f54 ebp: f8a4b3ec esp: c03f5f30 ds: 007b es: 007b ss: 0068 Process swapper (pid: 0, ti=c03f4000 task=c03bece0 task.ti=c03f4000) Stack: f2b5cbc0 f8a4b401 00000100 c0444080 c012af49 00000000 f6f19100 f6f19000 c1707800 c03f5f54 c03f5f54 00000123 00000021 c03e8d08 c0426380 00000009 c0126932 00000000 00000046 c03e9980 c03e6000 0047b007 c01269bd 00000000 Call Trace: [] nfulnl_timer+0x15/0x25 [nfnetlink_log] [] run_timer_softirq+0x10a/0x164 [] __do_softirq+0x60/0xba [] do_softirq+0x31/0x35 [] do_IRQ+0x62/0x74 [] common_interrupt+0x23/0x28 [] default_idle+0x0/0x3f [] default_idle+0x2d/0x3f [] cpu_idle+0xa0/0xb9 [] start_kernel+0x1a8/0x1ac [] unknown_bootoption+0x0/0x181 ======================= Code: 5e 5f 5b 5e 5f 5d c3 53 89 c3 8d 40 1c 83 7b 1c 00 74 05 e8 2c ee 6d c7 83 7b 14 00 75 04 31 c0 eb 34 83 7b 10 01 76 09 8b 43 18 <66> c7 40 04 03 00 8b 53 34 8b 43 14 b9 40 00 00 00 e8 08 9a 84 EIP: [] __nfulnl_send+0x24/0x51 [nfnetlink_log] SS:ESP 0068:c03f5f30 <0>Kernel panic - not syncing: Fatal exception in interrupt <0>Rebooting in 5 seconds.. Panic no more! Signed-off-by: Micha Mirosaw Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 05f7b7b369e039458a77768619dde123d868c78d Author: Michal Miroslaw Date: Sun Mar 4 15:58:40 2007 -0800 [NETFILTER]: nfnetlink_log: fix use after free Paranoia: instance_put() might have freed the inst pointer when we spin_unlock_bh(). Signed-off-by: Michal Miroslaw Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ed32abeaf3a3da79b63af6a75f0bd0aa7e7eed9e Author: Michal Miroslaw Date: Sun Mar 4 15:58:15 2007 -0800 [NETFILTER]: nfnetlink_log: fix reference leak Stop reference leaking in nfulnl_log_packet(). If we start a timer we are already taking another reference. Signed-off-by: Michal Miroslaw Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit d3ab4298aa136d07219664d563d8decf0e75693f Author: Patrick McHardy Date: Sun Mar 4 15:57:46 2007 -0800 [NETFILTER]: tcp conntrack: accept SYN|URG as valid Some stacks apparently send packets with SYN|URG set. Linux accepts these packets, so TCP conntrack should to. Pointed out by Martijn Posthuma . Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit e281db5cdfc3ab077ab3e459d098cb4fde0bc57a Author: Patrick McHardy Date: Sun Mar 4 15:57:25 2007 -0800 [NETFILTER]: nf_conntrack/nf_nat: fix incorrect config ifdefs The nf_conntrack_netlink config option is named CONFIG_NF_CT_NETLINK, but multiple files use CONFIG_IP_NF_CONNTRACK_NETLINK or CONFIG_NF_CONNTRACK_NETLINK for ifdefs. Fix this and reformat all CONFIG_NF_CT_NETLINK ifdefs to only use a line. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ec68e97dedacc1c7fb20a4b23b7fa76bee56b5ff Author: Patrick McHardy Date: Sun Mar 4 15:57:01 2007 -0800 [NETFILTER]: conntrack: fix {nf,ip}_ct_iterate_cleanup endless loops Fix {nf,ip}_ct_iterate_cleanup unconfirmed list handling: - unconfirmed entries can not be killed manually, they are removed on confirmation or final destruction of the conntrack entry, which means we might iterate forever without making forward progress. This can happen in combination with the conntrack event cache, which holds a reference to the conntrack entry, which is only released when the packet makes it all the way through the stack or a different packet is handled. - taking references to an unconfirmed entry and using it outside the locked section doesn't work, the list entries are not refcounted and another CPU might already be waiting to destroy the entry What the code really wants to do is make sure the references of the hash table to the selected conntrack entries are released, so they will be destroyed once all references from skbs and the event cache are dropped. Since unconfirmed entries haven't even entered the hash yet, simply mark them as dying and skip confirmation based on that. Reported and tested by Chuck Ebbert Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 78ad0b840848bebe266bcc8f1f9be429d2105264 Author: David S. Miller Date: Sun Mar 4 20:36:18 2007 -0800 [SPARC64]: Fix floppy build failure. Just define a local {claim,release}_dma_lock() implementation for the floppy driver to use so we don't need to define and export to modules the silly dma_spin_lock. Signed-off-by: David S. Miller commit c3442e296517aee733d62fc3fe03211598902c7d Author: Ingo Molnar Date: Mon Mar 5 14:46:30 2007 +0100 [PATCH] paravirt: re-enable COMPAT_VDSO CONFIG_PARAVIRT broke old glibc bootup: it silently turned off the selectability of CONFIG_COMPAT_VDSO and thus rendered distro kernels unbootable on old-style VDSO glibc setups. the proper solution is to keep COMPAT_VDSO available - if a hypervisor needs any modification of that concept then we'll judge those changes in full context, once those changes are submitted. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 6ebf622b2577c50b1f496bd6a5e8739e55ae7b1c Author: Ingo Molnar Date: Mon Mar 5 13:20:11 2007 +0100 [PATCH] disable NMI watchdog by default there's a new NMI watchdog related problem: KVM crashes on certain bzImages because ... we enable the NMI watchdog by default (even if the user does not ask for it) , and no other OS on this planet does that so KVM doesnt have emulation for that yet. So KVM injects a #GP, which crashes the Linux guest: general protection fault: 0000 [#1] PREEMPT SMP Modules linked in: CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00000246 (2.6.20-rc5-rt0 #3) EIP is at setup_apic_nmi_watchdog+0x26d/0x3d3 and no, i did /not/ request an nmi_watchdog on the boot command line! Solution: turn off that darn thing! It's a debug tool, not a 'make life harder' tool!! with this patch the KVM guest boots up just fine. And with this my laptop (Lenovo T60) also stopped its sporadic hard hanging (sometimes in acpi_init(), sometimes later during bootup, sometimes much later during actual use) as well. It hung with both nmi_watchdog=1 and nmi_watchdog=2, so it's generally the fact of NMI injection that is causing problems, not the NMI watchdog variant, nor any particular bootup code. [ NMI breaks on some systems, esp in combination with SMM -Arjan ] Signed-off-by: Ingo Molnar Acked-by: Arjan van de Ven Signed-off-by: Linus Torvalds commit 0d05ad2c09af9fb33ae76f9f8d1c4e4d1a9de92c Author: Ingo Molnar Date: Mon Mar 5 13:15:40 2007 +0100 [PATCH] paravirt: let users decide whether they want VMI do not use default=y for CONFIG_VMI (we do not do that for any driver or special-hardware feature): the overwhelming majority of Linux users does not need it, and interested users and distributions can enable it as-needed. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit e9417fb324f355e8e0b5d78d3b5dc7b90693fdfb Author: Ingo Molnar Date: Mon Mar 5 13:13:46 2007 +0100 [PATCH] paravirt: clarify VMI description Clarify the description of the CONFIG_VMI option: describe the reality that VMI is a VMWare-only interface for now. Once that changes and another hypervisor adopts the VMI ABI we can change the text. As can be seen from the Xen paravirtualization patches submitted to lkml the Xen project has chosen its own, non-VMI interface between Xen and the para-Linux - so remove Xen from the description. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 3f1a73b6dd52f1f279c05263ee79ca14f45d9d25 Author: Ingo Molnar Date: Mon Mar 5 12:29:28 2007 +0100 [PATCH] paravirt: remove NO_IDLE_HZ on x86 Temove the mistaken turning on of NO_IDLE_HZ on x86+PARAVIRT kernels. It's an obsolete, limited form of dynticks. Signed-off-by: Ingo Molnar Acked-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit 8690ba446defe2e2b81803756c099d2943dfd5fd Author: David Miller Date: Mon Mar 5 01:35:36 2007 -0800 [PATCH] video/aty/mach64_ct.c: fix bogus delay loop CT based mach64 cards were reported to hang on sparc64 boxes when compiled with gcc-4.1.x and later. Looking at this piece of code, it's no surprise. A critical delay was implemented as an empty for() loop, and gcc 4.0.x and previous did not optimize it away, so we did get a delay. But gcc-4.1.x and later can optimize it away, and we get crashes. Use a real udelay() to fix this. Fix verified on SunBlade100. Signed-off-by: David S. Miller Signed-off-by: Linus Torvalds commit 8f485612231792373580e8b2fe8ceb3791549aa5 Author: Adrian Bunk Date: Mon Mar 5 00:30:56 2007 -0800 [PATCH] arch/i386/kernel/vmi.c must #include CC arch/i386/kernel/vmi.o /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c: In function 'vmi_map_pt_hook': /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c:387: error: 'KM_PTE0' undeclared (first use in this function) /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c:387: error: (Each undeclared identifier is reported only once /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c:387: error: for each function it appears in.) /home/bunk/linux/kernel-2.6/linux-2.6.21-rc2-mm1/arch/i386/kernel/vmi.c:387: error: 'KM_PTE1' undeclared (first use in this function) make[2]: *** [arch/i386/kernel/vmi.o] Error 1 Signed-off-by: Adrian Bunk Acked-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 00f8b0c1856447186f4d28a00c9ad955c566371d Author: Sam Ravnborg Date: Mon Mar 5 00:30:55 2007 -0800 [PATCH] usb-storage: do not rebuild when kernel version changes Replacing use of UTS_RELEASE with utsname()->release avoids that the usb-storage driver is recompiled each time the kernel version changes. Signed-off-by: Sam Ravnborg Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f9c99463b0cd05603d125c915e2886d55a686b82 Author: Roland Kletzing Date: Mon Mar 5 00:30:54 2007 -0800 [PATCH] Documentation for io-accounting / reporting via procfs Add some documentation for the new and very useful io-accounting feature. It's being added to Documentation/filesystems/proc.txt Signed-off-by: Roland Kletzing Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 721c04c65f5905ef64732394f6ae147be0aebf69 Author: Antonino A. Daplas Date: Mon Mar 5 00:30:54 2007 -0800 [PATCH] atyfb: Fix kconfig error Fix the following compile error: MODPOST 327 modules WARNING: "aty_st_lcd" [drivers/video/aty/atyfb.ko] undefined! WARNING: "aty_ld_lcd" [drivers/video/aty/atyfb.ko] undefined! make[1]: *** [__modpost] Error 1 make: *** [modules] Error 2 Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6346190b2fc0937bbc319b5f0e329789fb846ae6 Author: Michal Piotrowski Date: Mon Mar 5 00:30:53 2007 -0800 [PATCH] char/epca.c: remove unused function "drivers/char/epca.c:2741: warning: 'get_termio' defined but not used" Signed-off-by: Michal Piotrowski Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e81ce1f7ecdaed2844c75313b09af791d44e6373 Author: Heiko Carstens Date: Mon Mar 5 00:30:51 2007 -0800 [PATCH] timer/hrtimer: take per cpu locks in sane order Doing something like this on a two cpu system # echo 0 > /sys/devices/system/cpu/cpu0/online # echo 1 > /sys/devices/system/cpu/cpu0/online # echo 0 > /sys/devices/system/cpu/cpu1/online will give me this: ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.21-rc2-g562aa1d4-dirty #7 ------------------------------------------------------- bash/1282 is trying to acquire lock: (&cpu_base->lock_key){.+..}, at: [<000000000005f17e>] hrtimer_cpu_notify+0xc6/0x240 but task is already holding lock: (&cpu_base->lock_key#2){.+..}, at: [<000000000005f174>] hrtimer_cpu_notify+0xbc/0x240 which lock already depends on the new lock. This happens because we have the following code in kernel/hrtimer.c: migrate_hrtimers(int cpu) [...] old_base = &per_cpu(hrtimer_bases, cpu); new_base = &get_cpu_var(hrtimer_bases); [...] spin_lock(&new_base->lock); spin_lock(&old_base->lock); Which means the spinlocks are taken in an order which depends on which cpu gets shut down from which other cpu. Therefore lockdep complains that there might be an ABBA deadlock. Since migrate_hrtimers() gets only called on cpu hotplug it's safe to assume that it isn't executed concurrently on a The same problem exists in kernel/timer.c: migrate_timers(). As pointed out by Christian Borntraeger one possible solution to avoid the locking order complaints would be to make sure that the locks are always taken in the same order. E.g. by taking the lock of the cpu with the lower number first. To achieve this we introduce two new spinlock functions double_spin_lock and double_spin_unlock which lock or unlock two locks in a given order. Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Roman Zippel Cc: John Stultz Cc: Christian Borntraeger Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6bb74df481223731af6c7e0ff3adb31f6442cfcd Author: john stultz Date: Mon Mar 5 00:30:50 2007 -0800 [PATCH] clocksource init adjustments (fix bug #7426) This patch resolves the issue found here: http://bugme.osdl.org/show_bug.cgi?id=7426 The basic summary is: Currently we register most of i386/x86_64 clocksources at module_init time. Then we enable clocksource selection at late_initcall time. This causes some problems for drivers that use gettimeofday for init calibration routines (specifically the es1968 driver in this case), where durring module_init, the only clocksource available is the low-res jiffies clocksource. This may cause slight calibration errors, due to the small sampling time used. It should be noted that drivers that require fine grained time may not function on architectures that do not have better then jiffies resolution timekeeping (there are a few). However, this does not discount the reasonable need for such fine-grained timekeeping at init time. Thus the solution here is to register clocksources earlier (ideally when the hardware is being initialized), and then we enable clocksource selection at fs_initcall (before device_initcall). This patch should probably get some testing time in -mm, since clocksource selection is one of the most important issues for correct timekeeping, and I've only been able to test this on a few of my own boxes. Signed-off-by: John Stultz Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "David S. Miller" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4540768011352d38afb89d400eacb3e261507b70 Author: David Rientjes Date: Mon Mar 5 00:30:49 2007 -0800 [PATCH] x86_64: remove unusued 'flags' variable Removes unused 'flags' variable from setup_IO_APIC_irq(). Signed-off-by: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ff31d7757f57074ccfef352b9d156023914fb2b Author: Christian Krafft Date: Mon Mar 5 00:30:48 2007 -0800 [PATCH] ipmi: check, if default ports are accessible on PPC ipmi_si_intf tries to access default ports, if no device could be found elsewhere. On PPC we have a function to check, if these legacy IO ports are accessible. This patch adds a check for these ports on PPC. This patch fixes a breakage of IPMI module on PPC machines without a BMC. Signed-off-by: Christian Krafft Acked-by: Michael Ellerman Signed-off-by: Corey Minyard Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a8fa74ab529f23f812092ece8d7a4766af092332 Author: Dmitriy Monakhov Date: Mon Mar 5 00:30:47 2007 -0800 [PATCH] ecryptfs: handle AOP_TRUNCATED_PAGE better - In fact we don't have to fail if AOP_TRUNCATED_PAGE was returned from prepare_write or commit_write. It is beter to retry attempt where it is possible. - Rearange ecryptfs_get_lower_page() error handling logic, make it more clean. Signed-off-by: Dmitriy Monakhov Acked-by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 82b16528405131eadc18285da982d4806f6db34e Author: Dmitriy Monakhov Date: Mon Mar 5 00:30:46 2007 -0800 [PATCH] ecryptfs: lower root result must be adirectory - Currently after path_lookup succeed we dot't have any guarantie what it is DIR. This must be explicitly demanded. - path_lookup can't return negative dentry, So inode check is useless. Signed-off-by: Dmitriy Monakhov Acked-by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a5f5e43e2b1377392f9afe93aca29b9abf1d6a44 Author: Thomas Gleixner Date: Mon Mar 5 00:30:45 2007 -0800 [PATCH] fix "NMI appears to be stuck" Testing NMI watchdog ... CPU#0: NMI appears to be stuck (54->54)! CPU#1: NMI appears to be stuck (0->0)! Keep the PIT/HPET alive when nmi_watchdog = 1 is given on the command line. Signed-off-by: Thomas Gleixner Cc: Ingo Molnar Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d3baf2eb8bd680b2d4f509bc3dbf4dcd6e27a40 Author: NeilBrown Date: Mon Mar 5 00:30:44 2007 -0800 [PATCH] md: fix for raid6 reshape Recent patch for raid6 reshape had a change missing that showed up in subsequent review. Many places in the raid5 code used "conf->raid_disks-1" to mean "number of data disks". With raid6 that had to be changed to "conf->raid_disk - conf->max_degraded" or similar. One place was missed. This bug means that if a raid6 reshape were aborted in the middle the recorded position would be wrong. On restart it would either fail (as the position wasn't on an appropriate boundary) or would leave a section of the array unreshaped, causing data corruption. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c6b36e9a3c57b73c7a6bdf787baa55f21195bba9 Author: Zachary Amsden Date: Mon Mar 5 00:30:43 2007 -0800 [PATCH] vmi: smp fixes Critical fixes for SMP. Fix a couple functions which needed to be __devinit and fix a bogus parameter to AP startup that just so happened to work because the low virtual mapping of memory was still established. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 772205f62ebcce2d60bfa5166f56c78044afab7d Author: Zachary Amsden Date: Mon Mar 5 00:30:41 2007 -0800 [PATCH] vmi: apic ops Use para_fill instead of directly setting the APIC ops to the result of the vmi_get_function call - this allows one to implement a VMI ROM without implementing APIC functions, just using the native APIC functions. While doing this, I realized that there is a lot more cleanup that should have been done. Basically, we should never assume that the ROM implements a specific set of functions, and always allow fallback to the native implementation. This is critical for future compatibility. Signed-off-by: Anthony Liguori Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a9eddc952870d29aa9df96ab862327eb6afa23d9 Author: Zachary Amsden Date: Mon Mar 5 00:30:41 2007 -0800 [PATCH] vmi: fix nohz compile More goo from hrtimers integration. We do compile and run properly with NO_HZ enabled. There was a period when we didn't because of a missing export, but that was since fixed. And with the clocksource code now firmly in place, we can get rid of code that fixes up the wallclock, since this is done in the common infrastructure. This actually fixes a timer bug as well, that was caused by do_settimeofday no longer being callable with interrupts disabled due to the use of on_each_cpu(). Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e30fab3ad34aa8bfb55c9f0337d4a92a0595f41f Author: Zachary Amsden Date: Mon Mar 5 00:30:39 2007 -0800 [PATCH] vmi: pit override The time_init_hook in paravirt-ops no longer functions in the correct manner after the integration of the hrtimers code. The problem is that now the call path for time initialization is: time_init : late_time_init = hpet_time_init; late_time_init -> hpet_time_init: setup_pit_timer (BAD) do_time_init --> (via paravirt.h) time_init_hook --> (via arch_hooks.h) time_init_hook (in SUBARCH/setup.c) If this isn't confusing enough, the paravirt case goes through an indirect function pointer in the paravirt-ops table. The problem is, by the time the paravirt hook is called, the pit timer is already enabled. But paravirt guests have their own timer, and don't want to use the PIT. Rather than intensify the struggle for power going on here, just make it all nice and simple and just unconditionally do all timer setup in the late_time_init hook. This also has the advantage of enabling timers in the same place in all code paths, so everyone has the same bugs and we don't have outliers who break other code because they turn on timer too early or too late. So the paravirt-ops time init function is now by default hpet_time_init, which is the time init function used for native hardware. Paravirt guests have the chance to override this when they setup the paravirt-ops table, and should need no change. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eda08b1befaabcdfea1a9216ae13f9065e69baa7 Author: Zachary Amsden Date: Mon Mar 5 00:30:38 2007 -0800 [PATCH] vmi: paravirt drop udelay op Not respecting udelay causes problems with any virtual hardware that is passed through to real hardware. This can be noticed by any device that interacts with the real world in real time - like AP startup, which takes real time. Or keyboard LEDs, which should blink in real-time. Or floppy drives, but only when passed through to a real floppy controller on OSes which can't sufficiently buffer the floppy commands to emulate a zero latency floppy. Or IDE drives, when connecting to a physical CDROM. This was mostly a hack to get the kernel to boot faster, but it introduced a number of misvirtualization bugs, and Alan and Pavel argued pretty strongly against it. We were the only client, and now want to clean up this cruft. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9a1c13e91f100c12dcad3a1be1b12890bf32f6ff Author: Zachary Amsden Date: Mon Mar 5 00:30:37 2007 -0800 [PATCH] vmi: fix highpte Provide a PT map hook for HIGHPTE kernels to designate where they are mapping page tables. This information is required so the physical address of PTE updates can be determined; otherwise, the mm layer would have to carry the physical address all the way to each PTE modification callsite, which is even more hideous that the macros required to provide the proper hooks. So lets not mess up arch neutral code to achieve this, but keep the horror in an #ifdef HIGHPTE in include/asm-i386/pgtable.h. I had to use macros here because some types are not yet defined in all the include paths for this header. This patch is absolutely required for HIGHPTE kernels to operate properly with VMI. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1182d8528b620c23d043bccbbef092b42062960a Author: Zachary Amsden Date: Mon Mar 5 00:30:36 2007 -0800 [PATCH] vmi: cpu cycles fix In order to share the common code in tsc.c which does CPU Khz calibration, we need to make an accurate value of CPU speed available to the tsc.c code. This value loses a lot of precision in a VM because of the timing differences with real hardware, but we need it to be as precise as possible so the guest can make accurate time calculations with the cycle counters. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6cb9a8350aee789100a365794272ed20cc8f2401 Author: Zachary Amsden Date: Mon Mar 5 00:30:35 2007 -0800 [PATCH] vmi: sched clock paravirt op fix The custom_sched_clock hook is broken. The result from sched_clock needs to be in nanoseconds, not in CPU cycles. The TSC is insufficient for this purpose, because TSC is poorly defined in a virtual environment, and mostly represents real world time instead of scheduled process time (which can be interrupted without notice when a virtual machine is descheduled). To make the scheduler consistent, we must expose a different nature of time, that is scheduled time. So deprecate this custom_sched_clock hack and turn it into a paravirt-op, as it should have been all along. This allows the tsc.c code which converts cycles to nanoseconds to be shared by all paravirt-ops backends. It is unfortunate to add a new paravirt-op, but this is a very distinct abstraction which is clearly different for all virtual machine implementations, and it gets rid of an ugly indirect function which I ashamedly admit I hacked in to try to get this to work earlier, and then even got in the wrong units. Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7507ba34e827ca3c6bbcd34d20a8df8ba365fca6 Author: Zachary Amsden Date: Mon Mar 5 00:30:34 2007 -0800 [PATCH] vmi: timer fixes round two Critical bugfixes for the VMI-Timer code. 1) Do not setup a one shot alarm if we are keeping the periodic alarm armed. Additionally, since the periodic alarm can be run at a lower rate than HZ, let's fixup the guard to the no-idle-hz mode appropriately. This fixes the bug where the no-idle-hz mode might have a higher interrupt rate than the non-idle case. 2) The interrupt handler can no longer adjust xtime due to nested lock acquisition. Drop this. We don't need to check for wallclock time at every tick, it can be done in userspace instead. 3) Add a bypass to disable noidle operation. This is useful as a last minute workaround, or testing measure. 4) The code to skip the IO_APIC timer testing (no_timer_check) should be conditional on IO_APIC, not SMP, since UP kernels can have this configured in as well. Signed-off-by: Dan Hecht Signed-off-by: Zachary Amsden Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0dc952dc3e6d96d554a19fa7bee3f3b1d55e3cff Author: Christoph Lameter Date: Mon Mar 5 00:30:33 2007 -0800 [PATCH] Page migration: Fix vma flag checking Currently we do not check for vma flags if sys_move_pages is called to move individual pages. If sys_migrate_pages is called to move pages then we check for vm_flags that indicate a non migratable vma but that still includes VM_LOCKED and we can migrate mlocked pages. Extract the vma_migratable check from mm/mempolicy.c, fix it and put it into migrate.h so that is can be used from both locations. Problem was spotted by Lee Schermerhorn Signed-off-by: Christoph Lameter Signed-off-by: Lee Schermerhorn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1f2b69f9bdce8461341e5fb864568a2ee90079c8 Author: Paul Mundt Date: Mon Mar 5 00:30:31 2007 -0800 [PATCH] fb: sm501fb off-by-1 sysfs store Currently sm501fb_crtsrc_store() won't allow the routing to be changed via echos from userspace in to the sysfs file. The reason for this is that the strnicmp() for both heads uses a sizeof() for the string length, which ends up being strlen() + 1 (\0 in the normal case, but the echo gives a newline, which is where the issue occurs), this then causes a mismatch and subsequently bails with the -EINVAL. In addition to this, the hardcoded lengths were then used for the store length that was returned, which ended up being erroneous and resulting in a write error. There's also no point in returning anything but the full length since it will -EINVAL out on a mismatch well before then anyways. sizeof("string") is great for making sure you have space in your buffer, but rather less so for string comparisons :-) Signed-off-by: Paul Mundt Acked-by: Ben Dooks Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 69f7c0a1be84b10a81b6edcce2dbee0cdec26eba Author: Con Kolivas Date: Mon Mar 5 00:30:29 2007 -0800 [PATCH] sched: remove SMT nice Remove the SMT-nice feature which idles sibling cpus on SMT cpus to facilitiate nice working properly where cpu power is shared. The idling of cpus in the presence of runnable tasks is considered too fragile, easy to break with outside code, and the complexity of managing this system if an architecture comes along with many logical cores sharing cpu power will be unworkable. Remove the associated per_cpu_gain variable in sched_domains used only by this code. Also: The reason is that with dynticks enabled, this code breaks without yet further tweaks so dynticks brought on the rapid demise of this code. So either we tweak this code or kill it off entirely. It was Ingo's preference to kill it off. Either way this needs to happen for 2.6.21 since dynticks has gone in. Signed-off-by: Con Kolivas Acked-by: Ingo Molnar Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 759b9775c25f5e69aaea8a75c3914019e2dc5539 Author: Hugh Dickins Date: Mon Mar 5 00:30:28 2007 -0800 [PATCH] shmem and simple const super_operations shmem's super_operations were missed from the recent const-ification; and simple_fill_super()'s, which can share with get_sb_pseudo()'s. Signed-off-by: Hugh Dickins Acked-by: Josef 'Jeff' Sipek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cc2cccaec88d422e628e6b588078e1dbdc241896 Author: Johannes Berg Date: Mon Mar 5 00:30:27 2007 -0800 [PATCH] schedule wext/rtnl for removal Since wext is being replaced as fast as we can (it'll probably stick around for legacy drivers though) and the wext/netlink stuff was never really used, this schedules it for removal. The removal schedule is tight but there are no users of the code, the main user of the wext user interface are the wireless-tools, they only have an alpha version using the netlink interface and even that is incomplete. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de320199c0f425503eef17883a3ba90464bf35ba Author: Maciej W. Rozycki Date: Mon Mar 5 00:30:26 2007 -0800 [PATCH] dz: remove struct pt_regs references Remove remaining references to saved registers now that uart_handle_sysrq_char() does not want them. Signed-off-by: Maciej W. Rozycki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 49015bee4071d56456ef59f1f82be6531615341c Author: David Brownell Date: Mon Mar 5 00:30:22 2007 -0800 [PATCH] gpio_keys driver shouldn't be ARM-specific The gpio_keys driver is wrongly ARM-specific; it can't build on other platforms with GPIO suport. This fixes that problem. Signed-off-by: David Brownell Cc: Dmitry Torokhov Cc: pHilipp Zabel Cc: Haavard Skinnemoen Cc: Russell King Cc: Richard Purdie Cc: Ben Nizette Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0a938b9768d1fc0e12a884a6820a2e15df5a612c Author: David Brownell Date: Mon Mar 5 00:30:18 2007 -0800 [PATCH] add CONFIG_GENERIC_GPIO Most drivers using GPIOs already know they are running on a system that supports the generic GPIO calls, because of other platform dependencies. But the generic GPIO-based LED and input button drivers can't know that. So this patch adds a Kconfig hook, GENERIC_GPIO, to mark the platforms where will do the right thing. Currently that's a bunch of ARMs, and AVR32; more are on the way. It also fixes a dependency bug for the gpio button input driver; it was wrong to start with, now it covers all platforms with GENERIC_GPIO. Signed-off-by: David Brownell Acked-by: Richard Purdie Cc: Arnaud Patard Cc: Cc: Cc: pHilipp Zabel Cc: Haavard Skinnemoen Cc: Dmitry Torokhov Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1ad7c311079412541bebaf1c8436d405cc8c6b2c Author: Tony Breeds Date: Mon Mar 5 00:30:14 2007 -0800 [PATCH] Fix soft lockup with iSeries viocd driver Fix soft lockup with iSeries viocd driver, caused by eventually calling end_that_request_first() with nr_bytes 0. Some versions of hald do an SG_IO ioctl on the viocd device which becomes a request with hard_nr_sectors and hard_cur_sectors set to zero. Passing zero as the number of sectors to end_request() (which calls end_that_request_first()) causes an infinite loop when the bio is being freed. This patch makes sure that the zero is never passed. It only requires some number larger the the request size the terminate the loop. The lockup is triggered by hald, interrogating the device. Signed-off-by: Tony Breeds Signed-off-by: Jens Axboe Cc: Stephen Rothwell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5fdc2abe39b76822e34e7029ca5f69fe4bea58d4 Author: David Brownell Date: Mon Mar 5 00:30:13 2007 -0800 [PATCH] parport is an orphan The writing on the wall seem to be that the parport stack is orphaned, rather than maintained by four folk ... and having a webpage that says the latest patches are based on a 2.5 kernel. Signed-off-by: David Brownell Acked-by: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad5f1196792653dadf09c07a5fa917092b469c1c Author: Dmitriy Monakhov Date: Mon Mar 5 00:30:12 2007 -0800 [PATCH] ecryptfs: check xattr operation support fix - ecryptfs_write_inode_size_to_metadata() error code was ignored. - i_op->setxattr() must be supported by lower fs because used below. Signed-off-by: Monakhov Dmitriy Acked-by: Michael Halcrow Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58e0543e8f355b32f0778a18858b255adb7402ae Author: Eric W. Biederman Date: Mon Mar 5 00:30:11 2007 -0800 [PATCH] msi: support masking msi irqs without a mask bit For devices that do not support msi-x we only support 1 interrupt. Therefore we can disable that one interrupt by disabling the msi capability itself. If we leave the intx interrupts disabled while we have the msi capability disabled no interrupts should be delivered from that device. Devices with just the minimal msi support (and thus hitting this code path) include things like the intel e1000 nic, so it looks like is going to be a fairly common case and thus important to get right. Signed-off-by: Eric W. Biederman Cc: Michael Ellerman Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b1cbf4e4dddd708ba268c3a2bf38383a269d490a Author: Eric W. Biederman Date: Mon Mar 5 00:30:10 2007 -0800 [PATCH] msi: fix up the msi enable/disable logic enable/disable_msi_mode have several side effects which keeps them from being generally useful. So this patch replaces them with with two much more targeted functions: msi_set_enable and msix_set_enable. This patch makes pci_dev->msi_enabled and pci_dev->msix_enabled the definitive way to test if linux has enabled the msi capability, and has the appropriate msi data structures set up. This patch ensures that while writing the msi messages in save/restore and during device initialization we have the msi capability disabled so we don't get into races. The pci spec requires that we do not have the msi capability enabled and the msi messages unmasked while we write the messages. Completely disabling the capability is overkill but it is easy :) Care has been taken so we never have both a msi capability and intx enabled simultaneously. We haven't run into a problem yet but better safe then sorry. Signed-off-by: Eric W. Biederman Cc: Michael Ellerman Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f5f2b13129a6541debf8851bae843cbbf48298b7 Author: Eric W. Biederman Date: Mon Mar 5 00:30:07 2007 -0800 [PATCH] msi: sanely support hardware level msi disabling In some cases when we are not using msi we need a way to ensure that the hardware does not have an msi capability enabled. Currently the code has been calling disable_msi_mode to try and achieve that. However disable_msi_mode has several other side effects and is only available when msi support is compiled in so it isn't really appropriate. Instead this patch implements pci_msi_off which disables all msi and msix capabilities unconditionally with no additional side effects. pci_disable_device was redundantly clearing the bus master enable flag and clearing the msi enable bit. A device that is not allowed to perform bus mastering operations cannot generate intx or msi interrupt messages as those are essentially a special case of dma, and require bus mastering. So the call in pci_disable_device to disable msi capabilities was redundant. quirk_pcie_pxh also called disable_msi_mode and is updated to use pci_msi_off. Signed-off-by: Eric W. Biederman Cc: Michael Ellerman Cc: Paul Mackerras Cc: Benjamin Herrenschmidt Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58a53b246b4aed95f3f93b45828c8d9f26b1cfcb Author: Jean Delvare Date: Mon Mar 5 00:30:06 2007 -0800 [PATCH] io_apic.h needs apicdef.h A -mm patch caused: In file included from drivers/pci/quirks.c:532: include/asm/io_apic.h:61: error: "MAX_IO_APICS" undeclared here (not in a function) So let's include the needed header. Signed-off-by: Jean Delvare Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d5dedf99e4ca9860ce8a1dd42db1cb666c360632 Author: Andrew Morton Date: Mon Mar 5 00:30:04 2007 -0800 [PATCH] cyclades: return closing_wait In http://bugzilla.kernel.org/show_bug.cgi?id=8065, Shen points out that the cyclades driver forget to return closing_wait to userspace. Cc: Alan Cox Cc: Russell King Cc: Shen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 202d4e602555e68c2bc71775228876b0356785c8 Author: Richard Purdie Date: Sat Mar 3 17:43:52 2007 +0000 backlight: Allow enable/disable of fb backlights, fixing regressions Enabling the backlight by default appears to cause problems for many users. This patch disables backlight controls unless explicitly enabled by users via a module parameter. Since PMAC users are known to work, default to enabled in that case. Signed-off-by: Richard Purdie commit 238576e12fef1d52751c6e08db2d0bdb0e248caf Author: Richard Purdie Date: Mon Feb 26 22:06:09 2007 +0000 backlight: Fix nvidia backlight initial brightness Fix a mix up when the nvidia driver was converted resulting in the backlight having an incorrect initial brightness. Signed-off-by: Richard Purdie commit 8d91cbad8e6fd5b37bf584740f134508709ba035 Author: Russell King Date: Sun Mar 4 20:40:50 2007 +0000 [ARM] Acorn: move the i2c bus driver into drivers/i2c Move the Acorn IOC/IOMD I2C bus driver from drivers/i2c, strip out the reminants of the platform specific parts of the old PCF8583 RTC code, and remove the old obsolete PCF8583 driver. Signed-off-by: Russell King commit 23d046f43a05155e050a68f3ad1f19b672713374 Author: Russell King Date: Sun Mar 4 20:21:38 2007 +0000 [ARM] ARM SCSI: Don't try to dma_map_sg too many scatterlist entries An off-by-one bug meant we were always trying to map one too many scatterlist entries. This was mostly harmless prior to the checks going in to consistent_sync(), but now causes the kernel to BUG. Also, powertec.c was missing an assignment to info->ec. Signed-off-by: Russell King commit 6b4df7ee1f636f0dbf3896235582559c86cb18aa Author: Russell King Date: Sun Mar 4 20:19:07 2007 +0000 [ARM] ARM FAS216: don't modify scsi_cmnd request_bufflen SCSI doesn't want drivers to modify request_bufflen, so keep a driver-private copy of this in the scsi_pointer structure instead. Signed-off-by: Russell King commit bb71f99f8daefb4a2c2441298bc127aaff9af947 Author: Russell King Date: Sun Mar 4 20:33:07 2007 +0000 [ARM] rtc-pcf8583: Final fixes for this RTC on RiscPC Replace the I2C bus address, as per drivers/acorn/char/pcf8583.c. Also, since this driver also contains Acorn RiscPC specific code for obtaining the current year from the SRAM (and updating the platform specific checksum when writing new data back) this is NOT a platform independent driver. Document it as such, and update the dependencies to reflect this fact. Signed-off-by: Russell King commit 0ed8f210e68236f2034f827596f0a8201a907a9f Author: Russell King Date: Sun Mar 4 20:13:13 2007 +0000 [ARM] rtc-pcf8583: correct month and year offsets No, today is not 4th April 3907, it's 4th March 2007. Signed-off-by: Russell King commit f5e5b734d4c9ccc1f5f68bdf545bdc4b19681d28 Author: Russell King Date: Sun Mar 4 20:12:07 2007 +0000 [ARM] rtc-pcf8583: don't use BCD_TO_BIN/BIN_TO_BCD Both BCD_TO_BIN(x) and BIN_TO_BCD(x) have an unexpected side-effect - not only do they return the value as expected, they _modify_ their argument in the process. Let's play it safe and avoid these macros. Signed-off-by: Russell King commit 8b4ac6f316b493fae511921e25c72119f7b03170 Author: Florian Fainelli Date: Fri Mar 2 22:08:01 2007 +0100 [MIPS] MTX1: clear PCI errors This patch clears PCI errors after showing more debug informations. Signed-off-by: Florian Fainelli Signed-off-by: Ralf Baechle commit baa545fddd752f46ced034bc3d95778649b67c2d Author: Florian Fainelli Date: Fri Mar 2 22:07:48 2007 +0100 [MIPS] MTX1: add idsel cardbus ressources Adds cardbus ressources for MTX1 boards which have a PCMCIA controller. Signed-off-by: Florian Fainelli Signed-off-by: Ralf Baechle commit 6fff989157aa0506520637277ec4653306689c25 Author: Florian Fainelli Date: Fri Mar 2 22:07:41 2007 +0100 [MIPS] MTX1: remove unneeded settings This patch removes unnecessary settings at setup time. Signed-off-by: Florian Fainelli Signed-off-by: Ralf Baechle commit 5b648a98db05fd0152349a11a7f7e30b80643977 Author: Ralf Baechle Date: Fri Mar 2 11:42:11 2007 +0000 [MIPS] dma_sync_sg_for_cpu is a no-op except for non-coherent R10000s. Signed-off-by: Ralf Baechle commit 47d7c44b87df91fdb5d9c2678fc90afd46c14fbe Author: Yoichi Yuasa Date: Thu Mar 1 22:50:25 2007 +0900 [MIPS] Cobalt: update reserved resources This patch has removed unused timer resource. Moreover, the name of reserved resources ware changed. Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 3a1d8217e1f90c0b63654f25f3f2db0a1101a1e1 Author: Ralf Baechle Date: Thu Mar 1 15:35:54 2007 +0000 [MIPS] SN: PCI fixup needs to include . Signed-off-by: Ralf Baechle commit a9b6590ced1370537edad8dc60be32c044b2380e Author: Ralf Baechle Date: Thu Mar 1 15:30:01 2007 +0000 [MIPS] DMA: Fix a bunch of warnings due to missing inline keywords. Signed-off-by: Ralf Baechle commit 07c0d7437c7061fef61e35183781d126cebf138a Author: Ralf Baechle Date: Thu Mar 1 15:29:25 2007 +0000 [MIPS] RM: It should be #ifdef CONFIG_FOO not #if CONFIG_FOO ... Signed-off-by: Ralf Baechle commit 36a885306fdf7bb557c773309c993bfb2d0d693c Author: Ralf Baechle Date: Thu Mar 1 11:56:43 2007 +0000 [MIPS] Fix and cleanup the mess that a dozen prom_printf variants are. early_printk is a so much saner thing. Signed-off-by: Ralf Baechle commit ca471c86043f4a8b01cba02ba2d3431fddcaf606 Author: Ralf Baechle Date: Thu Mar 1 10:47:23 2007 +0000 [MIPS] DEC: Remove redeclarations of mips_machgroup and mips_machtype. Signed-off-by: Ralf Baechle commit 12e4396bf0b1cd62c9d71a06596914c7efa7dbaf Author: Atsushi Nemoto Date: Thu Mar 1 01:53:13 2007 +0900 [MIPS] No need to write c0_compare in plat_timer_setup If R4k counter was used for hpt_timer and interrupt source, c0_hpt_timer_init() initializes the c0_compare register. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit a0574e04807608998d4d115c07b7bc12bb499a44 Author: Atsushi Nemoto Date: Thu Mar 1 00:40:21 2007 +0900 [MIPS] Convert to RTC-class ds1742 driver The generic rtc-ds1742 driver can be used for RBTX4927 and JMR3927 (with __swizzle_addr trick). This patch also removes MIPS local DS1742 stuff. Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 148171b2ac1fb6a1a9f987f8daedc146c810a8ae Author: Ralf Baechle Date: Wed Feb 28 15:34:22 2007 +0000 [MIPS] Oprofile: Add missing break statements. This was causing oprofile to fail on R10000, R12000, R14000. Signed-off-by: Ralf Baechle commit 69f282765735b1df5e27b373e64e5238caca8c49 Author: Atsushi Nemoto Date: Wed Feb 28 01:42:19 2007 +0900 [MIPS] jmr3927: build fix Signed-off-by: Atsushi Nemoto Signed-off-by: Ralf Baechle commit 49fa3c0869677facd846adc928c332b4c20cdc25 Author: Thomas Bogendoerfer Date: Sat Feb 3 14:06:10 2007 +0100 [MIPS] SNI: Fix mc146818_decode_year Big endian RMs uses a different mc146818_decode_year than little endian RMs Correct mc146818_decode_year for years before 2000 Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit 821d313c257b9b04c3c82f0b303ee259c00dc620 Author: Ralf Baechle Date: Tue Feb 27 01:21:17 2007 +0000 [MIPS] Replace sys32_timer_create with the generic compat_sys_timer_create. Signed-off-by: Ralf Baechle commit 08274cefdc9efe709540be5d8e7c002346592d6d Author: Ralf Baechle Date: Tue Feb 27 01:11:28 2007 +0000 [MIPS] Replace sys32_socketcall with the generic compat_sys_socketcall. Signed-off-by: Ralf Baechle commit 440537ef409c7013134116a7ca155d43d25eb492 Author: Ralf Baechle Date: Tue Feb 27 00:56:37 2007 +0000 [MIPS] N32 waitid is the same as o32. Signed-off-by: Ralf Baechle commit e9cdb1e330d805f4453c1359cebe2bd6a06ce692 Author: Andrew Morton Date: Thu Mar 1 11:28:13 2007 +0200 KVM: Move kvmfs magic number to Use the standard magic.h for kvmfs. Cc: Avi Kivity Signed-off-by: Andrew Morton Signed-off-by: Avi Kivity commit 58e690e6fd47a682b49aed3510443d6797a03021 Author: Avi Kivity Date: Mon Feb 26 16:29:43 2007 +0200 KVM: Fix bogus failure in kvm.ko module initialization A bogus 'return r' can cause an otherwise successful module load to fail. This both denies users the use of kvm, and