commit 4b119e21d0c66c22e8ca03df05d9de623d0eb50f Author: Linus Torvalds Date: Wed Apr 16 19:49:44 2008 -0700 Linux 2.6.25 commit c970d5a32ae1a90fba89892cc3432cf0b408cb8b Merge: 6af74b0... da19566... Author: Linus Torvalds Date: Wed Apr 16 18:58:37 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: it821x: do not describe noraid parameter with its value Pb1200/DBAu1200: fix bad IDE resource size Au1200: IDE driver build fix Au1200: kill IDE driver function prototypes avr32 mustn't select HAVE_IDE commit da19566552315389370c40e690054a31b7623de5 Author: Paul Bolle Date: Thu Apr 17 01:14:33 2008 +0200 it821x: do not describe noraid parameter with its value Describe noraid parameter with its name (and not its value). Signed-off-by: Paul Bolle Signed-off-by: Bartlomiej Zolnierkiewicz commit b4dcaea36b0376456c97698deba0089d2d67cbe7 Author: Sergei Shtylyov Date: Thu Apr 17 01:14:33 2008 +0200 Pb1200/DBAu1200: fix bad IDE resource size The header files for the Pb1200/DBAu1200 boards have wrong definition for the IDE interface's decoded range length -- it should be 512 bytes according to what the IDE driver does. In addition, the IDE platform device claims 1 byte too many for its memory resource -- fix the platform code and the IDE driver in accordance. Signed-off-by: Sergei Shtylyov Cc: Ralf Baechle Signed-off-by: Bartlomiej Zolnierkiewicz commit fabd3a223a96de1a91b2148655f2ed09ca9d1c20 Author: Sergei Shtylyov Date: Thu Apr 17 01:14:33 2008 +0200 Au1200: IDE driver build fix The driver fails to compile with CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA enabled: drivers/ide/mips/au1xxx-ide.c: In function `auide_build_dmatable': drivers/ide/mips/au1xxx-ide.c:256: error: implicit declaration of function `sg_virt' drivers/ide/mips/au1xxx-ide.c:275: error: implicit declaration of function `sg_next' drivers/ide/mips/au1xxx-ide.c:275: warning: assignment makes pointer from integer without a cast Fix this by including . While at it, remove the #include's without which the driver happily builds. Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 09a77441f27f51f5f9878c90c7ed67e303197a2a Author: Sergei Shtylyov Date: Thu Apr 17 01:14:33 2008 +0200 Au1200: kill IDE driver function prototypes Fix these warnings emitted when compiling drivers/ide/mips/au1xxx-ide.c: include/asm/mach-au1x00/au1xxx_ide.h:137: warning: 'auide_tune_drive' declared `static' but never defined include/asm/mach-au1x00/au1xxx_ide.h:138: warning: 'auide_tune_chipset' declared `static' but never defined by wiping out the whole "function prototyping" section from the header file as it mostly declared functions that are already dead in the IDE driver; move the only useful prototype into the driver. Signed-off-by: Sergei Shtylyov Cc: Ralf Baechle Signed-off-by: Bartlomiej Zolnierkiewicz commit 71fc4c0c441eab97630bf2b310e81ebff5e831d7 Author: Adrian Bunk Date: Thu Apr 17 01:14:32 2008 +0200 avr32 mustn't select HAVE_IDE There's a libata based PATA driver for avr32, but no support for drivers/ide/ on avr32. This patch fixes the following compile error: <-- snip --> ... CC [M] drivers/ide/ide-cd.o In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/drivers/ide/ide-cd.c:37: /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/ide.h:209:21: error: asm/ide.h: No such file or directory make[3]: *** [drivers/ide/ide-cd.o] Error 1 <-- snip --> Signed-off-by: Adrian Bunk Cc: Haavard Skinnemoen Acked-by: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit 6af74b03e00fc78806f75f6701b24b582bbb5c96 Merge: 1076bb4... 75ce6fa... Author: Linus Torvalds Date: Wed Apr 16 07:45:45 2008 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block * 'for-linus' of git://git.kernel.dk/linux-2.6-block: block: update git url for blktrace io context: increment task attachment count in ioc_task_link() commit 1076bb40585dc3a4ae6143ecc5a1654495b84c42 Merge: b4b8f57... 07c3b1a... Author: Linus Torvalds Date: Wed Apr 16 07:45:05 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB: remove broken usb-serial num_endpoints check USB: option: Add new vendor ID and device ID for AMOI HSDPA modem USB: support more Huawei data card product IDs USB: option.c: add more device IDs USB: Obscure Maxon BP3-USB Device Support 16d8:6280 for option driver commit b4b8f57965e007afbbb0175ea28f733723c5260b Merge: 424b00e... 56f367b... Author: Linus Torvalds Date: Wed Apr 16 07:44:27 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: [TCP]: Add return value indication to tcp_prune_ofo_queue(). PS3: gelic: fix the oops on the broken IE returned from the hypervisor b43legacy: fix DMA mapping leakage mac80211: remove message on receiving unexpected unencrypted frames Update rt2x00 MAINTAINERS entry Add rfkill to MAINTAINERS file rfkill: Fix device type check when toggling states b43legacy: Fix usage of struct device used for DMAing ssb: Fix usage of struct device used for DMAing MAINTAINERS: move to generic repository for iwlwifi b43legacy: fix initvals loading on bcm4303 rtl8187: Add missing priv->vif assignments netconsole: only set CON_PRINTBUFFER if the user specifies a netconsole [CAN]: Update documentation of struct sockaddr_can MAINTAINERS: isdn4linux@listserv.isdn4linux.de is subscribers-only [TCP]: Fix never pruned tcp out-of-order queue. [NET_SCHED] sch_api: fix qdisc_tree_decrease_qlen() loop commit 424b00e2c0f0c38f2cf5331391742ec998f6d89f Author: Paul Bolle Date: Wed Apr 16 11:08:22 2008 +0100 AFS: Do not describe debug parameters with their value Describe debug parameters with their names (and not their values). Signed-off-by: Paul Bolle Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 07c3b1a1001614442c665570942a3107a722c314 Author: Greg Kroah-Hartman Date: Mon Apr 14 14:17:29 2008 -0700 USB: remove broken usb-serial num_endpoints check The num_interrupt_in, num_bulk_in, and other checks in the usb-serial code are just wrong, there are too many different devices out there with different numbers of endpoints. We need to just be sticking with the device ids instead of trying to catch this kind of thing. It broke too many different devices. This fixes a large number of usb-serial devices to get them working properly again. Cc: Oliver Neukum Cc: stable Signed-off-by: Greg Kroah-Hartman commit 32147be4cc50e5e4445a8760125cacc258c61638 Author: tang kai Date: Mon Apr 14 10:06:35 2008 +0800 USB: option: Add new vendor ID and device ID for AMOI HSDPA modem This patch add new vendor ID and device ID for AMOI HSDPA modem. From: tang kai Signed-off-by: Greg Kroah-Hartman commit aad8a278f37e748bfe310a1366f2aa7e0dbaf365 Author: fangxiaozhi Date: Thu Apr 10 14:51:06 2008 +0800 USB: support more Huawei data card product IDs - declare the unusal device for Huawei data card devices in unusual_devs.h - disable the product ID matching for Huawei data card devices in usb_match_device function of driver.c - declare the product IDs in option.c. Signed-off-by: fangxiaozhi Signed-off-by: Greg Kroah-Hartman commit a1d9bc12e06a71b01f626040dc5149b357e8f1eb Author: Matthias Urlichs Date: Thu Apr 10 10:13:32 2008 +0200 USB: option.c: add more device IDs Add devices by AMOI and NovatelWireless. Signed-Off-By: Matthias Urlichs Signed-off-by: Greg Kroah-Hartman commit 80d9709832390fa7e721bbf4a017da474fdc6c29 Author: James Cameron Date: Wed Apr 9 18:59:13 2008 +1000 USB: Obscure Maxon BP3-USB Device Support 16d8:6280 for option driver The modem was detected, the ttyUSB{0,1,2} appeared, a call could be made, and the expected data rate was achieved. Tested for an hour or two, total of 100Mb. I shall do more testing. Signed-off-by: James Cameron Signed-off-by: Greg Kroah-Hartman commit 56f367bbfd5a7439961499ca6a2f0822d2074d83 Author: Vitaliy Gusev Date: Tue Apr 15 20:26:34 2008 -0700 [TCP]: Add return value indication to tcp_prune_ofo_queue(). Returns non-zero if tp->out_of_order_queue was seen non-empty. This allows tcp_try_rmem_schedule() to return early. Signed-off-by: Vitaliy Gusev Signed-off-by: David S. Miller commit b87e81e5c6e64ae0eae3b4f61bf07bfeec856184 Author: yakui.zhao@intel.com Date: Tue Apr 15 14:34:49 2008 -0700 acpi: unneccessary to scan the PCI bus already scanned http://bugzilla.kernel.org/show_bug.cgi?id=10124 this change: commit 08f1c192c3c32797068bfe97738babb3295bbf42 Author: Muli Ben-Yehuda Date: Sun Jul 22 00:23:39 2007 +0300 x86-64: introduce struct pci_sysdata to facilitate sharing of ->sysdata This patch introduces struct pci_sysdata to x86 and x86-64, and converts the existing two users (NUMA, Calgary) to use it. This lays the groundwork for having other users of sysdata, such as the PCI domains work. The Calgary bits are tested, the NUMA bits just look ok. replaces pcibios_scan_root by pci_scan_bus_parented... but in pcibios_scan_root we have a check about scanned busses. Cc: Cc: Stian Jordet Cc: Len Brown Cc: Greg KH Cc: Ingo Molnar Cc: "Yinghai Lu" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f1a3f2ac4ddf966cd0555dc445c6df65709c580 Author: Krzysztof Helt Date: Tue Apr 15 14:34:47 2008 -0700 acpi thermal trip points increased to 12 The THERMAL_MAX_TRIPS value is set to 10. It is too few for the Compaq AP550 machine which has 12 trip points. Signed-off-by: Krzysztof Helt Cc: Len Brown Cc: Zhang Rui Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f0a37e008750ead1751b7d5e89d220a260a46147 Author: Chuck Ebbert Date: Tue Apr 15 14:34:47 2008 -0700 acpi: bus: check once more for an empty list after locking it List could have become empty after the unlocked check that was made earlier, so check again inside the lock. Should fix https://bugzilla.redhat.com/show_bug.cgi?id=427765 Signed-off-by: Chuck Ebbert Cc: Cc: Len Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d1e7780638a9192f15caf590e0081bf915fdef71 Author: Ben Dooks Date: Tue Apr 15 14:34:46 2008 -0700 spi: spi_s3c24xx must initialize num_chipselect The SPI core now expects num_chipselect to be set correctly as due to added checks on the chip being selected before an transfer is allowed. This patch adds a num_cs field to the platform data which needs to be set correctly before adding the SPI platform device. Signed-off-by: Ben Dooks Signed-off-by: David Brownell Cc: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 50f426b55d919dd017af35bb6a08753d1f262920 Author: Ben Dooks Date: Tue Apr 15 14:34:45 2008 -0700 spi: spi_s3c24xx must initialize bus_num Pass the bus number we expect the S3C24XX SPI driver to attach to via the platform data. Signed-off-by: Ben Dooks Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4bb5eba06b4bc57e30b0f6336c9907e85c395197 Author: Ben Dooks Date: Tue Apr 15 14:34:44 2008 -0700 spi: spi_s3c24xx driver must init completion The s3c24xx_spi_txrx() function should initialise the completion each time before using it, otherwise we end up with the possibility of returning success before the interrupt handler has processed all the data. Signed-off-by: Ben Dooks Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 335e92e8a515420bd47a6b0f01cb9a206c0ed6e4 Author: Jan Kara Date: Tue Apr 15 14:34:43 2008 -0700 vfs: fix possible deadlock in ext2, ext3, ext4 when using xattrs mb_cache_entry_alloc() was allocating cache entries with GFP_KERNEL. But filesystems are calling this function while holding xattr_sem so possible recursion into the fs violates locking ordering of xattr_sem and transaction start / i_mutex for ext2-4. Change mb_cache_entry_alloc() so that filesystems can specify desired gfp mask and use GFP_NOFS from all of them. Signed-off-by: Jan Kara Reported-by: Dave Jones Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 423bec43079a2942a3004034df7aad76469758d8 Author: Nishanth Aravamudan Date: Tue Apr 15 14:34:43 2008 -0700 Documentation: correct overcommit caveat in hugetlbpage.txt As shown by Gurudas Pai recently, we can put hugepages into the surplus state (by echo 0 > /proc/sys/vm/nr_hugepages), even when /proc/sys/vm/nr_overcommit_hugepages is 0. This is actually correct, to allow the original goal (shrink the static pool to 0) to succeed (we are converting hugepages to surplus because they are in use). However, the documentation does not accurately reflect this case. Update it. Signed-off-by: Nishanth Aravamudan Acked-by: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 91446b064c748fc2a238fd68b677c9671e536bfd Author: KOSAKI Motohiro Date: Tue Apr 15 14:34:42 2008 -0700 add "Isolate" migratetype name to /proc/pagetypeinfo In a5d76b54a3f3a40385d7f76069a2feac9f1bad63 (memory unplug: page isolation by KAMEZAWA Hiroyuki), "isolate" migratetype added. but unfortunately, it doesn't treat /proc/pagetypeinfo display logic. this patch add "Isolate" to pagetype name field. /proc/pagetype before: ------------------------------------------------------------------------------------------------------------------------ Free pages count per migrate type at order 0 1 2 3 4 5 6 7 8 9 10 Node 0, zone DMA, type Unmovable 1 2 2 2 1 2 2 1 1 0 0 Node 0, zone DMA, type Reclaimable 0 0 0 0 0 0 0 0 0 0 0 Node 0, zone DMA, type Movable 2 3 3 1 3 3 2 0 0 0 0 Node 0, zone DMA, type Reserve 0 0 0 0 0 0 0 0 0 0 1 Node 0, zone DMA, type 0 0 0 0 0 0 0 0 0 0 0 Node 0, zone Normal, type Unmovable 1 9 7 4 1 1 1 1 0 0 0 Node 0, zone Normal, type Reclaimable 5 2 0 0 1 1 0 0 0 1 0 Node 0, zone Normal, type Movable 0 1 1 0 0 0 1 0 0 1 60 Node 0, zone Normal, type Reserve 0 0 0 0 0 0 0 0 0 0 1 Node 0, zone Normal, type 0 0 0 0 0 0 0 0 0 0 0 Node 0, zone HighMem, type Unmovable 0 0 1 1 1 0 1 1 2 2 0 Node 0, zone HighMem, type Reclaimable 0 0 0 0 0 0 0 0 0 0 0 Node 0, zone HighMem, type Movable 236 62 6 2 2 1 1 0 1 1 16 Node 0, zone HighMem, type Reserve 0 0 0 0 0 0 0 0 0 0 1 Node 0, zone HighMem, type 0 0 0 0 0 0 0 0 0 0 0 Number of blocks type Unmovable Reclaimable Movable Reserve Node 0, zone DMA 1 0 2 1 0 Node 0, zone Normal 10 40 169 1 0 Node 0, zone HighMem 2 0 283 1 0 after: ------------------------------------------------------------------------------------------------------------------------ Free pages count per migrate type at order 0 1 2 3 4 5 6 7 8 9 10 Node 0, zone DMA, type Unmovable 1 2 2 2 1 2 2 1 1 0 0 Node 0, zone DMA, type Reclaimable 0 0 0 0 0 0 0 0 0 0 0 Node 0, zone DMA, type Movable 2 3 3 1 3 3 2 0 0 0 0 Node 0, zone DMA, type Reserve 0 0 0 0 0 0 0 0 0 0 1 Node 0, zone DMA, type Isolate 0 0 0 0 0 0 0 0 0 0 0 Node 0, zone Normal, type Unmovable 0 2 1 1 0 1 0 0 0 0 0 Node 0, zone Normal, type Reclaimable 1 1 1 1 1 0 1 1 1 0 0 Node 0, zone Normal, type Movable 0 1 1 1 0 1 0 1 0 0 196 Node 0, zone Normal, type Reserve 0 0 0 0 0 0 0 0 0 0 1 Node 0, zone Normal, type Isolate 0 0 0 0 0 0 0 0 0 0 0 Node 0, zone HighMem, type Unmovable 0 1 0 0 0 1 1 1 2 2 0 Node 0, zone HighMem, type Reclaimable 0 0 0 0 0 0 0 0 0 0 0 Node 0, zone HighMem, type Movable 1 0 1 1 0 0 0 0 1 0 200 Node 0, zone HighMem, type Reserve 0 0 0 0 0 0 0 0 0 0 1 Node 0, zone HighMem, type Isolate 0 0 0 0 0 0 0 0 0 0 0 Number of blocks type Unmovable Reclaimable Movable Reserve Isolate Node 0, zone DMA 1 0 2 1 0 Node 0, zone Normal 8 4 207 1 0 Node 0, zone HighMem 2 0 283 1 0 Signed-off-by: KOSAKI Motohiro Acked-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b82d4043b3550df00a036f6aa2c8ab9578a283ef Author: Dmitri Vorobiev Date: Tue Apr 15 14:34:40 2008 -0700 Fix typos in Documentation/filesystems/seq_file.txt A couple of typos crept into the newly added document about the seq_file interface. This patch corrects those typos and simultaneously deletes unnecessary trailing spaces. Signed-off-by: Dmitri Vorobiev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1f4deba80a0d9fa92832684e683335b742a530e8 Author: WANG Cong Date: Tue Apr 15 14:34:38 2008 -0700 uml: compile error fix This patch fixes this error: In file included from /home/wangcong/projects/linux-2.6/arch/um/kernel/smp.c:9: include2/asm/tlb.h: In function `tlb_remove_page': include2/asm/tlb.h:101: error: implicit declaration of function `page_cache_release' And since including in will break sparc, we add this #include in uml's own header. Acked-by: Jeff Dike Signed-off-by: WANG Cong Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e115f2d89253490fb2dbf304b627f8d908df26f1 Author: Li Zefan Date: Tue Apr 15 14:34:37 2008 -0700 memcg: fix oops in oom handling When I used a test program to fork mass processes and immediately move them to a cgroup where the memory limit is low enough to trigger oom kill, I got oops: BUG: unable to handle kernel NULL pointer dereference at 0000000000000808 IP: [] _spin_lock_irqsave+0x8/0x18 PGD 4c95f067 PUD 4406c067 PMD 0 Oops: 0002 [1] SMP CPU 2 Modules linked in: Pid: 11973, comm: a.out Not tainted 2.6.25-rc7 #5 RIP: 0010:[] [] _spin_lock_irqsave+0x8/0x18 RSP: 0018:ffff8100448c7c30 EFLAGS: 00010002 RAX: 0000000000000202 RBX: 0000000000000009 RCX: 000000000001c9f3 RDX: 0000000000000100 RSI: 0000000000000001 RDI: 0000000000000808 RBP: ffff81007e444080 R08: 0000000000000000 R09: ffff8100448c7900 R10: ffff81000105f480 R11: 00000100ffffffff R12: ffff810067c84140 R13: 0000000000000001 R14: ffff8100441d0018 R15: ffff81007da56200 FS: 00007f70eb1856f0(0000) GS:ffff81007fbad3c0(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000808 CR3: 000000004498a000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process a.out (pid: 11973, threadinfo ffff8100448c6000, task ffff81007da533e0) Stack: ffffffff8023ef5a 00000000000000d0 ffffffff80548dc0 00000000000000d0 ffff810067c84140 ffff81007e444080 ffffffff8026cef9 00000000000000d0 ffff8100441d0000 00000000000000d0 ffff8100441d0000 ffff8100505445c0 Call Trace: [] ? force_sig_info+0x25/0xb9 [] ? oom_kill_task+0x77/0xe2 [] ? mem_cgroup_out_of_memory+0x55/0x67 [] ? mem_cgroup_charge_common+0xec/0x202 [] ? handle_mm_fault+0x24e/0x77f [] ? default_wake_function+0x0/0xe [] ? get_user_pages+0x2ce/0x3af [] ? mem_cgroup_charge_common+0x2d/0x202 [] ? make_pages_present+0x8e/0xa4 [] ? mmap_region+0x373/0x429 [] ? do_mmap_pgoff+0x2ff/0x364 [] ? sys_mmap+0xe5/0x111 [] ? tracesys+0xdc/0xe1 Code: 00 00 01 48 8b 3c 24 e9 46 d4 dd ff f0 ff 07 48 8b 3c 24 e9 3a d4 dd ff fe 07 48 8b 3c 24 e9 2f d4 dd ff 9c 58 fa ba 00 01 00 00 66 0f c1 17 38 f2 74 06 f3 90 8a 17 eb f6 c3 fa b8 00 01 00 RIP [] _spin_lock_irqsave+0x8/0x18 RSP CR2: 0000000000000808 ---[ end trace c3702fa668021ea4 ]--- It's reproducable in a x86_64 box, but doesn't happen in x86_32. This is because tsk->sighand is not guarded by RCU, so we have to hold tasklist_lock, just as what out_of_memory() does. Signed-off-by: Li Zefan Cc: KAMEZAWA Hiroyuki Acked-by: Balbir Singh Cc: Pavel Emelianov Cc: Paul Menage Cc: Oleg Nesterov Cc: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e169c139642fb4c682ec12a409725508dbefa520 Author: Kay Sievers Date: Tue Apr 15 14:34:35 2008 -0700 serial: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable serial platform drivers, to re-enable auto loading. NOTE that Kconfig for some of these drivers doesn't allow modular builds, and thus doesn't match the driver source's unload support. Presumably their unload code is buggy and/or weakly tested... [dbrownell@users.sourceforge.net: more drivers, registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Acked-by: Peter Korsgaard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 12c2c019eb9b0b586a061b336766d11cca449499 Author: Kay Sievers Date: Tue Apr 15 14:34:34 2008 -0700 pcmcia: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable PCMCIA platform drivers, to re-enable auto loading. [dbrownell@users.sourceforge.net: registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6c238503ee3d015c5f8a701b2bfbeaad90a6d4b Author: Kay Sievers Date: Tue Apr 15 14:34:33 2008 -0700 misc: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable 'misc' platform drivers, to re-enable auto loading. [dbrownell@users.sourceforge.net: bugfix, registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c43f89c2084f46e3ec59ddcbc52ecf4b1e9b015a Author: Alexey Dobriyan Date: Tue Apr 15 14:34:33 2008 -0700 fbdev: fix /proc/fb oops after module removal /proc/fb is not removed during rmmod. Steps to reproduce: modprobe fb rmmod fb ls /proc BUG: unable to handle kernel paging request at ffffffffa0094370 IP: [] proc_get_inode+0x101/0x130 PGD 203067 PUD 207063 PMD 17e758067 PTE 0 Oops: 0000 [1] SMP last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:05:02.0/resource CPU 1 Modules linked in: nf_conntrack_irc xt_state iptable_filter ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_conntrack ip_tables x_tables vfat fat usbhid ehci_hcd uhci_hcd usbcore sr_mod cdrom [last unloaded: fb] Pid: 21205, comm: ls Not tainted 2.6.25-rc8-mm2 #14 RIP: 0010:[] [] proc_get_inode+0x101/0x130 RSP: 0018:ffff81017c4bfc78 EFLAGS: 00010246 RAX: 0000000000008000 RBX: ffff8101787f5470 RCX: 0000000048011ccc RDX: ffffffffa0094320 RSI: ffff810006ad43b0 RDI: ffff81017fc2cc00 RBP: ffff81017e450300 R08: 0000000000000002 R09: ffff81017c5d1000 R10: 0000000000000000 R11: 0000000000000246 R12: ffff81016b903a28 R13: ffff81017f822020 R14: ffff81017c4bfd58 R15: ffff81017f822020 FS: 00007f08e71696f0(0000) GS:ffff81017fc06480(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: ffffffffa0094370 CR3: 000000017e54a000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process ls (pid: 21205, threadinfo ffff81017c4be000, task ffff81017de48770) Stack: ffff81017c5d1000 00000000ffffffea ffff81017e450300 ffffffff802bdd1e ffff81017f802258 ffff81017c4bfe48 ffff81016b903a28 ffff81017f822020 ffff81017c4bfd48 ffffffff802b9ba0 ffff81016b903a28 ffff81017f802258 Call Trace: [] ? proc_lookup_de+0x8e/0x100 [] ? proc_root_lookup+0x20/0x60 [] ? do_lookup+0x1b7/0x210 [] ? __link_path_walk+0x53d/0x7f0 [] ? mntput_no_expire+0x28/0x130 [] ? path_walk+0x5a/0xc0 [] ? do_path_lookup+0x83/0x1c0 [] ? getname+0xe5/0x210 [] ? __user_walk_fd+0x4b/0x80 [] ? vfs_lstat_fd+0x2c/0x70 [] ? filldir+0xae/0xf0 [] ? de_put+0x9/0x50 [] ? mnt_want_write+0x2d/0x80 [] ? touch_atime+0x1f/0x170 [] ? proc_root_readdir+0x7d/0xa0 [] ? sys_newlstat+0x27/0x50 [] ? vfs_readdir+0x9b/0xd0 [] ? sys_getdents+0xce/0xe0 [] ? system_call_after_swapgs+0x7b/0x80 Code: b7 83 b2 00 00 00 25 00 f0 00 00 3d 00 80 00 00 74 19 48 89 93 f0 00 00 00 48 89 df e8 39 9a fd ff 48 89 d8 48 83 c4 08 5b 5d c3 <48> 83 7a 50 00 48 c7 c0 60 16 45 80 48 c7 c2 40 17 45 80 48 0f RIP [] proc_get_inode+0x101/0x130 RSP CR2: ffffffffa0094370 ---[ end trace c71hiarjan8ab739 ]--- Signed-off-by: Alexey Dobriyan "Antonino A. Daplas" Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c4ded9715c05724939c9a4bd72555c2ade71d97 Author: Kay Sievers Date: Tue Apr 15 14:34:30 2008 -0700 leds: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable platform LED drivers, to re-enable auto loading. [dbrownell@users.sourceforge.net: more drivers, registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Acked-by: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b653e06ce2d70d21483f22ef1b1b63749c54223 Author: Zhao Yakui Date: Tue Apr 15 14:34:29 2008 -0700 rtc: fix the error in the function of cmos_set_alarm There is a bug in the function of cmos_set_alarm. RTC alarm time for October can't be set correctly. For October: 0x0A will be written into the RTC region (MONTH_ALARM) in current kernel. But in fact 0x10 should be written. Wildcards are also not handled correctly. Signed-off-by: Zhao Yakui Signed-off-by: Zhang Rui Signed-off-by: David Brownell Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bc65c724d5a2c61539b2c52680941505152fcf30 Author: Kay Sievers Date: Tue Apr 15 14:34:28 2008 -0700 mmc: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable MMC host platform drivers, to re-enable auto loading. Also, add missing owner declarations in driver init. [dbrownell@users.sourceforge.net: registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Acked-by: Pierre Ossman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bead9a3abd15710b0bdfd418daef606722d86282 Author: Ingo Molnar Date: Wed Apr 16 01:40:00 2008 +0200 mm: sparsemem memory_present() fix Fix memory corruption and crash on 32-bit x86 systems. If a !PAE x86 kernel is booted on a 32-bit system with more than 4GB of RAM, then we call memory_present() with a start/end that goes outside the scope of MAX_PHYSMEM_BITS. That causes this loop to happily walk over the limit of the sparse memory section map: for (pfn = start; pfn < end; pfn += PAGES_PER_SECTION) { unsigned long section = pfn_to_section_nr(pfn); struct mem_section *ms; sparse_index_init(section, nid); set_section_nid(section, nid); ms = __nr_to_section(section); if (!ms->section_mem_map) ms->section_mem_map = sparse_encode_early_nid(nid) | SECTION_MARKED_PRESENT; 'ms' will be out of bounds and we'll corrupt a small amount of memory by encoding the node ID and writing SECTION_MARKED_PRESENT (==0x1) over it. The corruption might happen when encoding a non-zero node ID, or due to the SECTION_MARKED_PRESENT which is 0x1: mmzone.h:#define SECTION_MARKED_PRESENT (1UL<<0) The fix is to sanity check anything the architecture passes to sparsemem. This bug seems to be rather old (as old as sparsemem support itself), but the exact incarnation depended on random details like configs, which made this bug more prominent in v2.6.25-to-be. An additional enhancement might be to print a warning about ignored or trimmed memory ranges. Signed-off-by: Ingo Molnar Tested-by: Christoph Lameter Cc: Pekka Enberg Cc: Mel Gorman Cc: Nick Piggin Cc: Andrew Morton Cc: Rafael J. Wysocki Cc: Yinghai Lu Cc: KAMEZAWA Hiroyuki Signed-off-by: Linus Torvalds commit c4cbb34bbdaaa841ef7c027f7b420db4c318c4fd Merge: 0517dee... b358492... Author: David S. Miller Date: Tue Apr 15 19:15:00 2008 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6 commit cf39cc3b56bc4a562db6242d3069f65034ec7549 Author: Kyle McMartin Date: Tue Apr 15 18:36:38 2008 -0400 [PARISC] fix signal trampoline cache flushing The signal trampolines were accidently flushing the kernel I$ instead of the users. Fix that up, and also add a missing user D$ flush while we're at it. Signed-off-by: Kyle McMartin Signed-off-by: Linus Torvalds commit 093a07e2fdfaddab7fc7d4adc76cc569c86603d7 Author: Linus Torvalds Date: Tue Apr 15 13:09:54 2008 -0700 Fix locking bug in "acquire_console_semaphore_for_printk()" When I cleaned up printk() and split up the printk locking logic in commit 266c2e0abeca649fa6667a1a427ad1da507c6375 ("Make printk() console semaphore accesses sensible") I had incorrectly moved the call to have_callable_console() outside of the console semaphore. That was buggy. The console semaphore protects the console_drivers list that is used by have_callable_console(). Thanks go to Bongani Hlope who saw this as a hang on shutdown and reboot and bisected the bug to the right commit, and tested this patch. See http://lkml.org/lkml/2008/4/11/315 Bisected-and-tested-by: Bongani Hlope Cc: Alexey Dobriyan Signed-off-by: Linus Torvalds commit b358492cd2a9c67bff352c5a60d86e7fc9627477 Author: Masakazu Mokuno Date: Mon Apr 14 18:07:21 2008 +0900 PS3: gelic: fix the oops on the broken IE returned from the hypervisor This fixes the bug that the driver would try to over-scan the memory if the sum of the length field of every IEs does not match the length returned from the hypervisor. Signed-off-by: Masakazu Mokuno Signed-off-by: John W. Linville commit dc4ae1f46dbbcd08b3b5e23ad5ef87bf4bb41adf Author: Stefano Brivio Date: Mon Apr 14 00:59:49 2008 +0200 b43legacy: fix DMA mapping leakage This fixes a DMA mapping leakage in the case where we reject a DMA buffer because of its address. The patch by Michael Buesch has been ported to b43legacy. Signed-off-by: Stefano Brivio Cc: Christian Casteyde Signed-off-by: John W. Linville commit b3fc9c6c58c986f7a24fd8b0794d1e0794935a28 Author: Johannes Berg Date: Sun Apr 13 10:12:47 2008 +0200 mac80211: remove message on receiving unexpected unencrypted frames Some people are getting this message a lot, and we have traced it to broken access points that much too often send completely empty frames (all bytes zeroed, which they shouldn't do at all.) Since we cannot do anything about such frames in any case except the special case where we're debugging an AP, just remove the message. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 2dd0f69222c481574baf6a4affb9256a7c7410e7 Author: Ivo van Doorn Date: Sat Apr 12 19:25:00 2008 +0200 Update rt2x00 MAINTAINERS entry Add the tree entry for rt2x00 to inform people about the rt2x00.git tree. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit e089764596ccde1037f2849fcee002c68986e67c Author: Ivo van Doorn Date: Sat Apr 12 19:23:55 2008 +0200 Add rfkill to MAINTAINERS file I have been acting as the maintainer since the rfkill introduction, so lets make it official by adding a rfkill entry in the MAINTAINERS file. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 89796f64a20d31e74ee0051df2e26812c852e734 Author: Carlos Corbacho Date: Sat Apr 12 16:39:47 2008 +0100 rfkill: Fix device type check when toggling states rfkill_switch_all() is supposed to only switch all the interfaces of a given type, but does not actually do this; instead, it just switches everything currently in the same state. Add the necessary type check in. (This fixes a bug I've been seeing while developing an rfkill laptop driver, with both bluetooth and wireless simultaneously changing state after only pressing either KEY_WLAN or KEY_BLUETOOTH). Signed-off-by: Carlos Corbacho Signed-off-by: John W. Linville commit cdbbe3d1f53086ece706674d3bf4f6d148083694 Author: Michael Buesch Date: Fri Apr 11 12:16:36 2008 +0200 b43legacy: Fix usage of struct device used for DMAing This fixes b43legacy for the SSB DMA API change. Signed-off-by: Michael Buesch Cc: Stefano Brivio Signed-off-by: John W. Linville commit 4ac58469f13028e1eb97f8bc7b0fca5072591d8d Author: Michael Buesch Date: Fri Apr 11 11:59:00 2008 +0200 ssb: Fix usage of struct device used for DMAing This fixes DMA on architectures where DMA is nontrivial, like PPC64. We must use the host-device's (PCI) struct device for any DMA operation instead of the SSB device. For this we add a new struct device pointer to the SSB device structure that will always point to the right device for DMAing. Without this patch b43 and b44 drivers won't work on complex-DMA architectures, that for example need dev->archdata for DMA operations. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 2d4543fdb487b1301ae48703dea3e66ead2d3c75 Author: Reinette Chatre Date: Thu Apr 10 13:16:27 2008 -0700 MAINTAINERS: move to generic repository for iwlwifi Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 385f848a986b4677bc91e5f5f9033449a876819d Author: Stefano Brivio Date: Sun Apr 6 17:10:53 2008 +0200 b43legacy: fix initvals loading on bcm4303 This allows for the correct initial values to be uploaded to bcm4303 devices. It should be correct, but I can't reliably test this as I suspect there's something going wrong with an hardware rfkill switch on my laptop. Please test. Signed-off-by: Stefano Brivio Signed-off-by: John W. Linville commit aa979a6acbb468b0ebe8cf36dc782a5b3cc1e28d Author: Herton Ronaldo Krzesinski Date: Wed Apr 9 16:38:31 2008 -0300 rtl8187: Add missing priv->vif assignments This adds missing priv->vif assignments after "mac80211: don't use interface indices in drivers" change. As rtl8180, rtl8187 also needs priv->vif to be set, as without this an oops can happen in rtl8187_tx function (priv->vif is passed to ieee80211_rts_duration). Signed-off-by: Herton Ronaldo Krzesinski Acked-by: Pavel Roskin Signed-off-by: John W. Linville commit 0de19a456cb59106420864927fdec152310f70b6 Merge: abe2f41... fd785d6... Author: Linus Torvalds Date: Tue Apr 15 11:00:05 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.25 * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.25: sh: export empty_zero_page sh: arch/sh/kernel/traps_32.c needs asm/fpu.h sh: fix compressed kernel build sh64: add missing #include 's commit fd785d6b18b930b76ad5076eed6e9af43195b281 Author: Andrew Morton Date: Wed Apr 16 02:21:47 2008 +0900 sh: export empty_zero_page ERROR: "empty_zero_page" [fs/ext4/ext4dev.ko] undefined! Signed-off-by: Andrew Morton Signed-off-by: Paul Mundt commit fad0f90134197259b5a935c69d7556ee847f242c Author: Andrew Morton Date: Wed Apr 16 02:03:51 2008 +0900 sh: arch/sh/kernel/traps_32.c needs asm/fpu.h arch/sh/kernel/traps_32.c: In function `do_reserved_inst': arch/sh/kernel/traps_32.c:667: error: implicit declaration of function `do_fpu_inst' Signed-off-by: Andrew Morton Signed-off-by: Paul Mundt commit 85eee6072bae69acfab903df596b5f468df03470 Author: Manuel Lauss Date: Wed Apr 16 02:01:55 2008 +0900 sh: fix compressed kernel build commit 54a015104136974262afa4b8ddd943ea70dec8a2 broke zImage build on sh arch: LD vmlinux SYSMAP System.map SYSMAP .tmp_System.map AS arch/sh/boot/compressed/head_32.o In file included from /k/arch/sh/boot/compressed/head_32.S:11: /k/include/linux/linkage.h:34: error: syntax error in macro parameter list Fix it for both sh and sh64. Signed-off-by: Manuel Lauss Signed-off-by: Paul Mundt commit 50387b3e11075fe798f5d44fa1b5491788a8742a Author: Adrian Bunk Date: Sun Apr 13 21:15:38 2008 +0300 sh64: add missing #include 's This patch fixes some compile errors due to missing save_fpu() prototypes on sh64 caused by commit 9bbafce2eec190ef7e44b0eb1095ba17ce6ad3af (sh: Fix occasional FPU register corruption under preempt). Signed-off-by: Adrian Bunk Signed-off-by: Paul Mundt commit 75ce6faccdbbea4465876a759917d4994660c025 Author: Jens Axboe Date: Tue Apr 15 10:23:35 2008 +0200 block: update git url for blktrace Signed-off-by: Jens Axboe commit 0517deed78be9cc9ce9799bf15da58fd0d2078bb Author: Michael Ellerman Date: Tue Apr 15 00:49:04 2008 -0700 netconsole: only set CON_PRINTBUFFER if the user specifies a netconsole Since 0bcc1816188e570bde1d56a208996660f2633ae0 (netconsole: Support dynamic reconfiguration using configfs), the netconsole is always registered, regardless of whether the user actually specified a netconsole configuration on the command line. However because netconsole has CON_PRINTBUFFER set, when it is registered it causes the printk buffer to be replayed to all consoles. When there is no netconsole configured this is a) pointless, and b) somewhat annoying for the user of the existing console. So instead we should only set CON_PRINTBUFFER if there is a netconsole configuration found on the command line. This retains the existing behaviour if a netconsole is setup by the user, and avoids spamming other consoles when we're only registering for the dynamic netconsole case. Signed-off-by: Michael Ellerman Signed-off-by: David S. Miller commit 56690c2151d33534f0537fd03c533eda81d96f0f Author: Oliver Hartkopp Date: Tue Apr 15 00:46:38 2008 -0700 [CAN]: Update documentation of struct sockaddr_can The struct sockaddr_can has been simplified in the code review process. This patch updates this simplification also in the associated documentation in can.txt . Signed-off-by: Oliver Hartkopp Signed-off-by: David S. Miller commit d5d52273b92913399e78fc4877f89d38ef8b367a Author: Paul Bolle Date: Tue Apr 15 00:40:48 2008 -0700 MAINTAINERS: isdn4linux@listserv.isdn4linux.de is subscribers-only https://www.isdn4linux.de/mailman/listinfo/isdn4linux: "To prevent spamming, you have to subscribe first. Mails from non-members are silently ignored!" Signed-off-by: Paul Bolle Signed-off-by: David S. Miller commit b000cd3707e7b25d76745f9c0e261c23d21fa578 Author: Vitaliy Gusev Date: Tue Apr 15 00:33:38 2008 -0700 [TCP]: Fix never pruned tcp out-of-order queue. tcp_prune_queue() doesn't prune an out-of-order queue at all. Therefore sk_rmem_schedule() can fail but the out-of-order queue isn't pruned . This can lead to tcp deadlock state if the next two conditions are held: 1. There are a sequence hole between last received in order segment and segments enqueued to the out-of-order queue. 2. Size of all segments in the out-of-order queue is more than tcp_mem[2]. Signed-off-by: Vitaliy Gusev Signed-off-by: David S. Miller commit d237e5c7ce82b6c7e1aa50348520a0c5a47274fa Author: Jens Axboe Date: Tue Apr 15 09:25:33 2008 +0200 io context: increment task attachment count in ioc_task_link() Thanks to Nikanth Karthikesan for reporting this. Signed-off-by: Jens Axboe commit abe2f41430770270a1512bf78f489284bfbdbd04 Author: Alexey Korolev Date: Mon Apr 14 20:45:06 2008 +0100 JFFS2 Fix of panics caused by wrong condition for hole frag creation in write_begin This fixes a regression introduced in commit 205c109a7a96d9a3d8ffe64c4068b70811fef5e8 when switching to write_begin/write_end operations in JFFS2. The page offset is miscalculated, leading to corruption of the fragment lists and subsequently to memory corruption and panics. [ Side note: the bug is a fairly direct result of the naming. Nick was likely misled by the use of "offs", since we tend to use the notion of "offset" not as an absolute position, but as an offset _within_ a page or allocation. Alternatively, a "pgoff_t" is a page index, but not a byte offset - our VM naming can be a bit confusing. So in this case, a VM person would likely have called this a "pos", not an "offs", or perhaps talked about byte offsets rather than page offsets (since it's counted in bytes, not pages). - Linus ] Signed-off-by: Alexey Korolev Signed-off-by: Vasiliy Leonenko Signed-off-by: David Woodhouse Signed-off-by: Linus Torvalds commit 066a3b5b2346febf9a655b444567b7138e3bb939 Author: Jarek Poplawski Date: Mon Apr 14 15:10:42 2008 -0700 [NET_SCHED] sch_api: fix qdisc_tree_decrease_qlen() loop TC_H_MAJ(parentid) for root classes is the same as for ingress, and if ingress qdisc is created qdisc_lookup() returns its pointer (without ingress NULL is returned). After this all qdisc_lookups give the same, and we get endless loop. (I don't know how this could hide for so long - it should trigger with every leaf class deleted if it's qdisc isn't empty.) After this fix qdisc_lookup() is omitted both for ingress and root parents, but looking for root is only wasting a little time here... Many thanks to Enrico Demarin for finding a test for catching this bug, which probably bothered quite a lot of admins. Reported-by: Enrico Demarin , Signed-off-by: Jarek Poplawski Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 19e729a928172103e101ffd0829fd13e68c13f78 Author: J. Bruce Fields Date: Mon Apr 14 15:03:02 2008 -0400 locks: fix possible infinite loop in fcntl(F_SETLKW) over nfs Miklos Szeredi found the bug: "Basically what happens is that on the server nlm_fopen() calls nfsd_open() which returns -EACCES, to which nlm_fopen() returns NLM_LCK_DENIED. "On the client this will turn into a -EAGAIN (nlm_stat_to_errno()), which in will cause fcntl_setlk() to retry forever." So, for example, opening a file on an nfs filesystem, changing permissions to forbid further access, then trying to lock the file, could result in an infinite loop. And Trond Myklebust identified the culprit, from Marc Eshel and I: 7723ec9777d9832849b76475b1a21a2872a40d20 "locks: factor out generic/filesystem switch from setlock code" That commit claimed to just be reshuffling code, but actually introduced a behavioral change by calling the lock method repeatedly as long as it returned -EAGAIN. We assumed this would be safe, since we assumed a lock of type SETLKW would only return with either success or an error other than -EAGAIN. However, nfs does can in fact return -EAGAIN in this situation, and independently of whether that behavior is correct or not, we don't actually need this change, and it seems far safer not to depend on such assumptions about the filesystem's ->lock method. Therefore, revert the problematic part of the original commit. This leaves vfs_lock_file() and its other callers unchanged, while returning fcntl_setlk and fcntl_setlk64 to their former behavior. Signed-off-by: J. Bruce Fields Tested-by: Miklos Szeredi Cc: Trond Myklebust Cc: Marc Eshel Signed-off-by: Linus Torvalds commit a985aabe4d7a720b109c2b63549f8641676a9c88 Merge: 1018cf9... e2df9e0... Author: Linus Torvalds Date: Mon Apr 14 08:10:27 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel: revert "sched: fix fair sleepers" commit 1018cf9b0f27646c37a52a079989dc0552b2451c Merge: 533bb8a... 1892225... Author: Linus Torvalds Date: Mon Apr 14 07:57:07 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: [libata] make ali_atapi_dma static [libata] sata_svw: fix reversed port count commit 533bb8a4d7388686243c37a414c4448ba3566f8a Merge: 4f3f8e9... 159d833... Author: Linus Torvalds Date: Mon Apr 14 07:56:24 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (31 commits) [BRIDGE]: Fix crash in __ip_route_output_key with bridge netfilter [NETFILTER]: ipt_CLUSTERIP: fix race between clusterip_config_find_get and _entry_put [IPV6] ADDRCONF: Don't generate temporary address for ip6-ip6 interface. [IPV6] ADDRCONF: Ensure disabling multicast RS even if privacy extensions are disabled. [IPV6]: Use appropriate sock tclass setting for routing lookup. [IPV6]: IPv6 extension header structures need to be packed. [IPV6]: Fix ipv6 address fetching in raw6_icmp_error(). [NET]: Return more appropriate error from eth_validate_addr(). [ISDN]: Do not validate ISDN net device address prior to interface-up [NET]: Fix kernel-doc for skb_segment [SOCK] sk_stamp: should be initialized to ktime_set(-1L, 0) net: check for underlength tap writes net: make struct tun_struct private to tun.c [SCTP]: IPv4 vs IPv6 addresses mess in sctp_inet[6]addr_event. [SCTP]: Fix compiler warning about const qualifiers [SCTP]: Fix protocol violation when receiving an error lenght INIT-ACK [SCTP]: Add check for hmac_algo parameter in sctp_verify_param() [NET_SCHED] cls_u32: refcounting fix for u32_delete() [DCCP]: Fix skb->cb conflicts with IP [AX25]: Potential ax25_uid_assoc-s leaks on module unload. ... commit 4f3f8e94b7b079131f0faf641e8afd790a6537d1 Author: David Howells Date: Mon Apr 14 11:20:59 2008 +0100 FRV: Correctly determine the address of an illegal instruction Correctly determine the address of an illegal instruction. The EPCR0 register holds this value (masked by EPCR0_PC) if the validity bit is set (masked by EPCR0_V). So the test as to whether the contents of the register are usable should be involve checking the _V bit, not the _PC bits. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit e2df9e0905136eebeca66eb9a994ca48d0fa7990 Author: Ingo Molnar Date: Mon Apr 14 08:50:02 2008 +0200 revert "sched: fix fair sleepers" revert "sched: fix fair sleepers" (e22ecef1d2658ba54ed7d3fdb5d60829fb434c23), because it is causing audio skipping, see: http://bugzilla.kernel.org/show_bug.cgi?id=10428 the patch is correct and the real cause of the skipping is not understood (tracing makes it go away), but time has run out so we'll revert it and re-try in 2.6.26. Signed-off-by: Ingo Molnar commit 159d83363b629c91d020734207c1bc788b96af5a Author: Patrick McHardy Date: Mon Apr 14 00:46:01 2008 -0700 [BRIDGE]: Fix crash in __ip_route_output_key with bridge netfilter The bridge netfilter code attaches a fake dst_entry with a pointer to a fake net_device structure to skbs it passes up to IPv4 netfilter. This leads to crashes when the skb is passed to __ip_route_output_key when dereferencing the namespace pointer. Since bridging can currently only operate in the init_net namespace, the easiest fix for now is to initialize the nd_net pointer of the fake net_device struct to &init_net. Should fix bugzilla 10323: http://bugzilla.kernel.org/show_bug.cgi?id=10323 Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 4dee959723e2bf3a0f9343a46841cd2f0029d424 Author: Pavel Emelyanov Date: Mon Apr 14 00:44:52 2008 -0700 [NETFILTER]: ipt_CLUSTERIP: fix race between clusterip_config_find_get and _entry_put Consider we are putting a clusterip_config entry with the "entries" count == 1, and on the other CPU there's a clusterip_config_find_get in progress: CPU1: CPU2: clusterip_config_entry_put: clusterip_config_find_get: if (atomic_dec_and_test(&c->entries)) { /* true */ read_lock_bh(&clusterip_lock); c = __clusterip_config_find(clusterip); /* found - it's still in list */ ... atomic_inc(&c->entries); read_unlock_bh(&clusterip_lock); write_lock_bh(&clusterip_lock); list_del(&c->list); write_unlock_bh(&clusterip_lock); ... dev_put(c->dev); Oops! We have an entry returned by the clusterip_config_find_get, which is a) not in list b) has a stale dev pointer. The problems will happen when the CPU2 will release the entry - it will remove it from the list for the 2nd time, thus spoiling it, and will put a stale dev pointer. The fix is to make atomic_dec_and_test under the clusterip_lock. Signed-off-by: Pavel Emelyanov Signed-off-by: Patrick McHardy commit 9625ed72e8bd619c3984f3024bd37143b7f0c7b0 Author: YOSHIFUJI Hideaki Date: Sun Apr 13 23:47:11 2008 -0700 [IPV6] ADDRCONF: Don't generate temporary address for ip6-ip6 interface. As far as I can remember, I was going to disable privacy extensions on all "tunnel" interfaces. Disable it on ip6-ip6 interface as well. Also, just remove ifdefs for SIT for simplicity. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit b077d7ababdb5433aef18c62bf1f785e8729f49a Author: YOSHIFUJI Hideaki Date: Sun Apr 13 23:42:18 2008 -0700 [IPV6] ADDRCONF: Ensure disabling multicast RS even if privacy extensions are disabled. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit e9df2e8fd8fbc95c57dbd1d33dada66c4627b44c Author: YOSHIFUJI Hideaki Date: Sun Apr 13 23:40:51 2008 -0700 [IPV6]: Use appropriate sock tclass setting for routing lookup. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 7cd636fe9ce5de0051c11283911baca4291868c8 Author: YOSHIFUJI Hideaki Date: Sun Apr 13 23:33:52 2008 -0700 [IPV6]: IPv6 extension header structures need to be packed. struct ipv6_opt_hdr is the common structure for IPv6 extension headers, and it is common to increment the pointer to get the real content. On the other hand, since the structure consists only of 1-byte next-header field and 1-byte length field, size of that structure depends on architecture; 2 or 4. Add "packed" attribute to get 2. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit b45e9189c058bfa495073951ff461ee0eea968be Author: David S. Miller Date: Sun Apr 13 23:14:15 2008 -0700 [IPV6]: Fix ipv6 address fetching in raw6_icmp_error(). Fixes kernel bugzilla 10437 Based almost entirely upon a patch by Dmitry Butskoy. When deciding what raw sockets to deliver the ICMPv6 to, we should use the addresses in the ICMPv6 quoted IPV6 header, not the top-level one. Signed-off-by: David S. Miller commit 2ed9926e16094ad143b96b09c64cba8bcba05ee1 Author: Patrick McHardy Date: Sun Apr 13 22:45:40 2008 -0700 [NET]: Return more appropriate error from eth_validate_addr(). Paul Bolle wrote: > http://bugzilla.kernel.org/show_bug.cgi?id=9923 would have been much easier to > track down if eth_validate_addr() would somehow complain aloud if an address > is invalid. Shouldn't it make at least some noise? I guess it should return -EADDRNOTAVAIL similar to eth_mac_addr() when validation fails. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit d2dcba612b357a4687843ad4f46629d219233fd7 Author: Paul Bolle Date: Sun Apr 13 22:44:20 2008 -0700 [ISDN]: Do not validate ISDN net device address prior to interface-up Commit bada339 (Validate device addr prior to interface-up) caused a regression in the ISDN network code, see: http://bugzilla.kernel.org/show_bug.cgi?id=9923 The trivial fix is to remove the pointer to eth_validate_addr() in the net_device struct in isdn_net_init(). Signed-off-by: Paul Bolle Signed-off-by: David S. Miller commit 4c821d753d5c097babd6609bcd85f08e254a3505 Author: Ben Hutchings Date: Sun Apr 13 21:52:48 2008 -0700 [NET]: Fix kernel-doc for skb_segment The kernel-doc comment for skb_segment is clearly wrong. This states what it actually does. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit f37f0afb2916ccf287428983026261db78c7661a Author: Eric Dumazet Date: Sun Apr 13 21:39:26 2008 -0700 [SOCK] sk_stamp: should be initialized to ktime_set(-1L, 0) Problem spotted by Andrew Brampton Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit e01bf1c83332c4653ffd30eed20a94a9c83d82b2 Author: Rusty Russell Date: Sat Apr 12 18:49:30 2008 -0700 net: check for underlength tap writes If the user gives a packet under 14 bytes, we'll end up reading off the end of the skb (not oopsing, just reading off the end). Signed-off-by: Rusty Russell Acked-by: Max Krasnyanskiy Signed-off-by: David S. Miller commit 14daa02139dcb3193b2b0250c0720a23ef610c49 Author: Rusty Russell Date: Sat Apr 12 18:48:58 2008 -0700 net: make struct tun_struct private to tun.c There's no reason for this to be in the header, and it just hurts recompile time. Signed-off-by: Rusty Russell Acked-by: Max Krasnyanskiy Signed-off-by: David S. Miller commit a40a7d15ba602b547f56b7b19e0282fe4fc3dee3 Author: Pavel Emelyanov Date: Sat Apr 12 18:40:38 2008 -0700 [SCTP]: IPv4 vs IPv6 addresses mess in sctp_inet[6]addr_event. All IP addresses that are present in a system are duplicated on struct sctp_sockaddr_entry. They are linked in the global list called sctp_local_addr_list. And this struct unions IPv4 and IPv6 addresses. So, there can be rare case, when a sockaddr_in.sin_addr coincides with the corresponding part of the sockaddr_in6 and the notifier for IPv4 will carry away an IPv6 entry. The fix is to check the family before comparing the addresses. Signed-off-by: Pavel Emelyanov Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit ab38fb04c9f8928cfaf6f4966633d783419906a1 Author: Vlad Yasevich Date: Sat Apr 12 18:40:06 2008 -0700 [SCTP]: Fix compiler warning about const qualifiers Fix 3 warnings about discarding const qualifiers: net/sctp/ulpevent.c:862: warning: passing argument 1 of 'sctp_event2skb' discards qualifiers from pointer target type net/sctp/sm_statefuns.c:4393: warning: passing argument 1 of 'SCTP_ASOC' discards qualifiers from pointer target type net/sctp/socket.c:5874: warning: passing argument 1 of 'cmsg_nxthdr' discards qualifiers from pointer target type Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit f4ad85ca3ef8a1ede76c5020a28a8f4057b4d24f Author: Gui Jianfeng Date: Sat Apr 12 18:39:34 2008 -0700 [SCTP]: Fix protocol violation when receiving an error lenght INIT-ACK When receiving an error length INIT-ACK during COOKIE-WAIT, a 0-vtag ABORT will be responsed. This action violates the protocol apparently. This patch achieves the following things. 1 If the INIT-ACK contains all the fixed parameters, use init-tag recorded from INIT-ACK as vtag. 2 If the INIT-ACK doesn't contain all the fixed parameters, just reflect its vtag. Signed-off-by: Gui Jianfeng Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit 72da7b3860cabf427590b4982bc880bafab4d5c8 Author: Wei Yongjun Date: Sat Apr 12 18:39:19 2008 -0700 [SCTP]: Add check for hmac_algo parameter in sctp_verify_param() RFC 4890 has the following text: The HMAC algorithm based on SHA-1 MUST be supported and included in the HMAC-ALGO parameter. As a result, we need to check in sctp_verify_param() that HMAC_SHA1 is present in the list. If not, we should probably treat this as a protocol violation. It should also be a protocol violation if the HMAC parameter is empty. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit e56cfad132f2ae269082359d279c17230c987e74 Author: Jarek Poplawski Date: Sat Apr 12 18:37:13 2008 -0700 [NET_SCHED] cls_u32: refcounting fix for u32_delete() Deleting of nonroot hnodes mostly doesn't work in u32_delete(): refcnt == 1 is expected, but such hnodes' refcnts are initialized with 0 and charged only with "link" nodes. Now they'll start with 1 like usual. Thanks to Patrick McHardy for an improving suggestion. Signed-off-by: Jarek Poplawski Acked-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit 028b027524b162eef90839a92ba4b8bddf23e06c Author: Patrick McHardy Date: Sat Apr 12 18:35:41 2008 -0700 [DCCP]: Fix skb->cb conflicts with IP dev_queue_xmit() and the other IP output functions expect to get a skb with clear or properly initialized skb->cb. Unlike TCP and UDP, the dccp_skb_cb doesn't contain a struct inet_skb_parm at the beginning, so the DCCP-specific data is interpreted by the IP output functions. This can cause false negatives for the conditional POST_ROUTING hook invocation, making the packet bypass the hook. Add a inet_skb_parm/inet6_skb_parm union to the beginning of dccp_skb_cb to avoid clashes. Also add a BUILD_BUG_ON to make sure it fits in the cb. [ Combined with patch from Gerrit Renker to remove two now unnecessary memsets of IPCB(skb)->opt ] Signed-off-by: Patrick McHardy Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit ae1b6a31b1f9ef2c7ba5ef89799f210a9ba6937c Author: Pavel Emelyanov Date: Sat Apr 12 18:33:50 2008 -0700 [AX25]: Potential ax25_uid_assoc-s leaks on module unload. The ax25_uid_free call walks the ax25_uid_list and releases entries from it. The problem is that after the fisrt call to hlist_del_init the hlist_for_each_entry (which hides behind the ax25_uid_for_each) will consider the current position to be the last and will return. Thus, the whole list will be left not freed. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 2de58e30db3f7e83592e22fb459dd6695b648889 Author: Sergei Shtylyov Date: Sat Apr 12 18:30:58 2008 -0700 tg3: fix MMIO for PPC 44x platforms The driver stores the PCI resource addresses into 'unsigned long' variable before calling ioremap_nocache() on them. This warrants kernel oops when the registers are accessed on PPC 44x platforms which (being 32-bit) have PCI memory space mapped beyond 4 GB. The arch/ppc/ kernel has a fixup in ioremap() that creates an illusion that the PCI memory resource is mapped below 4 GB, but arch/powerpc/ code got rid of this trick, having instead CONFIG_RESOURCES_64BIT enabled. [ Bump driver version and release date -DaveM ] Signed-off-by: Sergei Shtylyov Signed-off-by: David S. Miller commit 16a79142e51f9eedbf3ae9a20d9cdb2f88c86acc Author: Krzysztof Halasa Date: Sat Apr 12 10:10:40 2008 +0200 Mark generic HDLC + PPP as broken. PPP support in generic HDLC in Linux 2.6.25 is broken and will cause a kernel panic when a device configured in PPP mode is activated. It will be replaced by new PPP implementation after Linux 2.6.25 is released. This affects only PPP support in generic HDLC (mostly Hitachi SCA and SCA-II based drivers, wanxl, and few others). Standalone syncppp and async PPP support are not affected. Signed-off-by: Krzysztof Halasa Signed-off-by: Jeff Garzik commit 44fb3126d7e6fb411775551b4653643f1d28ebe9 Author: Thomas Klein Date: Fri Apr 4 15:04:53 2008 +0200 ehea: Fix DLPAR memory add support This patch fixes two weaknesses in send/receive packet handling which may lead to kernel panics during DLPAR memory add operations. Signed-off-by: Thomas Klein Signed-off-by: Jeff Garzik commit 5a81f14330ce70bc256b624593768fd1b4170d27 Author: Stephen Hemminger Date: Thu Apr 10 21:30:38 2008 -0700 sc92031: sysfs link missing Add missing sysfs device association. Compile tested only -ENOHW. Addresses http://bugzilla.kernel.org/show_bug.cgi?id=10380 Signed-off-by: Stephen Hemminger Cc: Cesar Eduardo Barros Cc: Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit c500cb265e35c76d741714a61bc635e0f02d64d2 Author: Sonic Zhang Date: Thu Apr 10 21:30:37 2008 -0700 smc91x driver: fix bug: print warning only in interrupt mode http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3956 Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit a376e79c6079c2ba6c5fadb0e85a3bb7e465ad89 Author: Ayaz Abdulla Date: Thu Apr 10 21:30:35 2008 -0700 forcedeth: mac address fix This critical patch fixes a mac address issue recently introduced. If the device's mac address was in correct order and the flag NVREG_TRANSMITPOLL_MAC_ADDR_REV was set, during nv_remove the flag would get cleared. During next load, the mac address would get reversed because the flag is missing. As it has been indicated previously, the flag is cleared across a low power transition. Therefore, the driver should set the mac address back into the reversed order when clearing the flag. Also, the driver should set back the flag after a low power transition to protect against kexec command calling nv_probe a second time. Signed-off-by: Ayaz Abdulla Cc: "Yinghai Lu" Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 72cfe92266540d8510946921a599f140a3d4aaa8 Author: Atsushi Nemoto Date: Sat Apr 12 00:58:14 2008 +0900 macb: Use semicolon instead of comma for statement It seems no good reason to use comma here. Signed-off-by: Atsushi Nemoto Signed-off-by: Jeff Garzik commit 84b7901f8d5a17536ef2df7fd628ab865df8fe3a Author: Atsushi Nemoto Date: Thu Apr 10 23:30:07 2008 +0900 macb: Call phy_disconnect on removing Call phy_disconnect() on remove routine. Otherwise the phy timer causes a kernel crash when unloading. Signed-off-by: Atsushi Nemoto Signed-off-by: Jeff Garzik commit 3d137fdd16b26be31a653f83d6ce4d3a1ed8701e Author: Joakim Tjernlund Date: Fri Apr 11 00:54:43 2008 +0200 ucc_geth: fix non-functional fixed phy support The new Fixed PHY method, fixed-link property, isn't impl. for ucc_geth which makes fixed PHYs non functional. Add support for the new method to restore the Fixed PHY functionality. Signed-off-by: Joakim Tjernlund Signed-off-by: Li Yang Signed-off-by: Jeff Garzik commit 9a3c243d7d87f401682247dbeff94067d814c192 Author: Laurent Pinchart Date: Fri Apr 11 14:05:50 2008 +0200 fs_enet: Don't call NAPI functions when NAPI is not used. fs_enet_close() calls napi_disable() unconditionally. This patch skips the call when use_napi isn't set. Signed-off-by: Laurent Pinchart Signed-off-by: Jeff Garzik commit c63eddb200690023e7c67f4dd9f132ad91660517 Author: Stephen Hemminger Date: Thu Apr 10 15:06:14 2008 -0500 sky2: missing chip name for Yukon Supreme Any usage of sky2 on new Yukon Supreme would cause a NULL dereference. The chip is very new, so the support is still untested; vendor has not sent any eval hardware. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 1892225f788a73beae2ec26f6f2fa4cd2e5868d0 Author: Adrian Bunk Date: Fri Apr 11 20:28:27 2008 +0300 [libata] make ali_atapi_dma static This patch makes the needlessly global ali_atapi_dma static. Signed-off-by: Adrian Bunk Signed-off-by: Jeff Garzik commit aeb74914ef0e6746f15b11c0399048de9c5c05b8 Author: Jeff Garzik Date: Sat Apr 12 00:11:35 2008 -0400 [libata] sata_svw: fix reversed port count According to Broadcom, two chips have their port counts flipped. The proper count is: 0x241 is 8 ports 0x242 is 4 ports Reported by Yohei Honda on kernel bz 10424. Signed-off-by: Jeff Garzik commit 120dd64cacd4fb796bca0acba3665553f1d9ecaa Author: Linus Torvalds Date: Fri Apr 11 13:32:29 2008 -0700 Linux 2.6.25-rc9 commit 14897e35fdc045fff9baabf0354570da22386706 Merge: b0fac02... 14dadf1... Author: Linus Torvalds Date: Fri Apr 11 13:24:16 2008 -0700 Merge branch 'docs' of git://git.lwn.net/linux-2.6 * 'docs' of git://git.lwn.net/linux-2.6: Add additional examples in Documentation/spinlocks.txt Move sched-rt-group.txt to scheduler/ Documentation: move rpc-cache.txt to filesystems/ Documentation: move nfsroot.txt to filesystems/ Spell out behavior of atomic_dec_and_lock() in kerneldoc Fix a typo in highres.txt Fixes to the seq_file document Fill out information on patch tags in SubmittingPatches Add the seq_file documentation commit 14dadf1d5eb5bea2dd115852cfee880505c1c169 Author: Mark Fasheh Date: Thu Apr 10 13:55:21 2008 -0700 Add additional examples in Documentation/spinlocks.txt Checkpatch will throw an error if code doesn't use the correct initializers for static spinlocks: ERROR: Use of SPIN_LOCK_UNLOCKED is deprecated: see Documentation/spinlocks.txt This is fine, but Documentation/spinlocks.txt isn't very clear on how to _use_ the new initializers for static variables. To save people time in the future, I added two small examples of how to fix old-style static initializers to be more lockdep friendly. Signed-off-by: Mark Fasheh Signed-off-by: Jonathan Corbet commit d396c5f158547e50c2b78bc984cb4a72d76e969b Author: J. Bruce Fields Date: Mon Apr 7 16:39:38 2008 -0400 Move sched-rt-group.txt to scheduler/ Signed-off-by: J. Bruce Fields Signed-off-by: Jonathan Corbet commit 8bcd1cc293f4e76edbfd8f422770c80a018b82d9 Author: J. Bruce Fields Date: Mon Apr 7 15:59:04 2008 -0400 Documentation: move rpc-cache.txt to filesystems/ This file is nfs-related. (Maybe Documentation/filesystems/ would benefit from a separate nfs/ directory at some point.) Signed-off-by: J. Bruce Fields Signed-off-by: Jonathan Corbet commit 6ded55da6be9f186ae1022724a5881b43846c164 Author: J. Bruce Fields Date: Mon Apr 7 15:59:03 2008 -0400 Documentation: move nfsroot.txt to filesystems/ Documentation/ is a little large, and filesystems/ seems an obvious place for this file. Signed-off-by: J. Bruce Fields Signed-off-by: Jonathan Corbet commit dc07e721a26ec7e0adb66340f1763d220cfbbd0c Author: J. Bruce Fields Date: Mon Apr 7 15:59:05 2008 -0400 Spell out behavior of atomic_dec_and_lock() in kerneldoc A little more detail here wouldn't hurt. Signed-off-by: J. Bruce Fields Signed-off-by: Jonathan Corbet commit b0fac02370cffad956ff3de5e8ed4df7e7b875d7 Author: Heiko Carstens Date: Fri Apr 11 13:46:54 2008 +0200 Fix "$(AS) -traditional" compile breakage caused by asmlinkage_protect git commit 54a015104136974262afa4b8ddd943ea70dec8a2 ("asmlinkage_protect replaces prevent_tail_call") causes this build failure on s390: AS arch/s390/kernel/entry64.o In file included from arch/s390/kernel/entry64.S:14: include/linux/linkage.h:34: error: syntax error in macro parameter list make[1]: *** [arch/s390/kernel/entry64.o] Error 1 make: *** [arch/s390/kernel] Error 2 and some other architectures. The reason is that some architectures add the "-traditional" flag to the invocation of $(AS), which disables variadic macro argument support. So just surround the new define with an #ifndef __ASSEMBLY__ to prevent any side effects on asm code. Cc: Roland McGrath Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Linus Torvalds commit 099ce8f4712dcff975ed7619f831b4df95aac773 Merge: 90768c0... fa16eef... Author: Linus Torvalds Date: Fri Apr 11 08:10:51 2008 -0700 Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6 * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: i2c-tiny-usb: New VID/PID pair i2c-davinci: Fix lost interrupt i2c-ibm_iic: Fast mode parm desc fixup commit 90768c09bca4f306c00a0cdbcb2f82601231e93e Merge: 3f06350... 7951f0b... Author: Linus Torvalds Date: Fri Apr 11 08:10:24 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: [NETNS][IPV6] tcp - assign the netns for timewait sockets [IPV4]: Fix byte value boundary check in do_ip_getsockopt(). BNX2X: Correct bringing chip out of reset [NETFILTER]: nf_nat: autoload IPv4 connection tracking [NETFILTER]: xt_hashlimit: fix mask calculation [XFRM]: xfrm_user: fix selector family initialization rt61pci: rt61pci_beacon_update do not free skb twice ssb-mipscore: Fix interrupt vectors ssb-pcicore: Fix IRQ TPS flag handling mac80211: use short_preamble mode from capability if ERP IE not present [NET]: Undo code bloat in hot paths due to print_mac(). [TCP]: Don't allow FRTO to take place while MTU is being probed [TCP]: tcp_simple_retransmit can cause S+L [TCP]: Fix NewReno's fast rexmit/recovery problems with GSOed skb [TCP]: Restore 2.6.24 mark_head_lost behavior for newreno/fack nl80211: fix STA AID bug b43legacy: fix bcm4303 crash iwlwifi: fix n-band association problem ipw2200: set MAC address on radiotap interface libertas: fix mode initialization problem commit 3f0635016246e2fee6e80b4741299833c68b065e Merge: 0859ab5... d786a4a... Author: Linus Torvalds Date: Fri Apr 11 08:09:57 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC]: Fix several regset and ptrace bugs. commit 0859ab59a8a48d2a96b9d2b7100889bcb6bb5818 Author: Davide Libenzi Date: Thu Apr 10 21:29:29 2008 -0700 signalfd: fix for incorrect SI_QUEUE user data reporting Michael Kerrisk found out that signalfd was not reporting back user data pushed using sigqueue: http://groups.google.com/group/linux.kernel/msg/9397cab8551e3123 The following patch makes signalfd report back the ssi_ptr and ssi_int members of the signalfd_siginfo structure. Signed-off-by: Davide Libenzi Acked-by: Michael Kerrisk Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 544451a1a36b06f43fc67112ede3b92e6203eb9d Author: Bjorn Helgaas Date: Thu Apr 10 21:29:28 2008 -0700 pnp: increase number of devices supported per protocol Increase the PNP "number of devices" limit. We currently use an unsigned char, which limits us to 256 devices per protocol. This patch changes that to an unsigned int. Not all backends can take advantage of this: we limit ISAPNP to 10 devices in isapnp_cfg_begin(), and PNPBIOS is limited to 256 devices because the BIOS interfaces use a one-byte device node number. But there is no limit on the number of PNPACPI devices we may have. Large HP Integrity machines have more than 256, which causes the current "unsigned char number" to wrap around. This causes errors like this: pnp: PnP ACPI init kobject_add failed for 00:00 with -EEXIST, don't try to register things with the same name in the same directory. Call Trace: [] show_stack+0x40/0xa0 [] dump_stack+0x30/0x60 [] kobject_add+0x290/0x2c0 [] device_add+0x160/0x860 [] device_register+0x30/0x60 [] __pnp_add_device+0x130/0x180 [] pnp_add_device+0xb0/0xe0 [] pnpacpi_add_device+0x510/0x5a0 [] pnpacpi_add_device_handler+0x50/0x80 This patch increases the limit to fix this PNPACPI problem. It should not have any adverse effect on ISAPNP or PNPBIOS because their limits are still enforced in the backends. Signed-off-by: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd2ab67030e9116f1e4aae1289220255412b37fd Author: Dan Williams Date: Thu Apr 10 21:29:27 2008 -0700 md: close a livelock window in handle_parity_checks5 If a failure is detected after a parity check operation has been initiated, but before it completes handle_parity_checks5 will never quiesce operations on the stripe. Explicitly handle this case by "canceling" the parity check, i.e. clear the STRIPE_OP_CHECK flags and queue the stripe on the handle list again to refresh any non-uptodate blocks. Kernel versions >= 2.6.23 are susceptible. Cc: Cc: NeilBrown Signed-off-by: Dan Williams Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 231bc2a222411f43bfb0fbb6d64c0f34c7b1039f Author: Mike Pagano Date: Thu Apr 10 21:29:26 2008 -0700 cciss: error: implicit declaration of function 'sg_init_table' This patch adds the missing include directive to the cciss.c source file.   This was discovered by our release team when building the kernel for the Alpha architecture. Errors were found as references to functions 'sg_init_table' and 'sg_page' do not exist without the include for Alpha. Signed-off-by: Mike Pagano Cc: Jens Axboe Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad28a07bcadc5945f7a90d9de3a196825e69d9d3 Author: Kay Sievers Date: Thu Apr 10 21:29:25 2008 -0700 rtc: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable RTC platform drivers, to re-enable module auto loading. [dbrownell@users.sourceforge.net: more drivers, minor fix] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Cc: Greg KH Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f37d193c7c150c40059c7ce5de34e8b28a9cd4ae Author: Kay Sievers Date: Thu Apr 10 21:29:23 2008 -0700 watchdog: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable watchdog drivers, to re-enable auto loading. [dbrownell@users.sourceforge.net: more drivers; registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Cc: Wim Van Sebroeck Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f4fce61d410b96ae263b001c45f73df1863dad8d Author: Kay Sievers Date: Thu Apr 10 21:29:22 2008 -0700 usb host: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable USB HCDs, to allow re-enable auto loading. [dbrownell@users.sourceforge.net: more drivers; registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f34c32f13ce8c539f3f582562358e39a86b00e83 Author: Kay Sievers Date: Thu Apr 10 21:29:21 2008 -0700 usb gadget: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable usb peripheral drivers, to re-eable module auto loading. [dbrownell@users.sourceforge.net: registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7e38c3c4453bdb5ffdf8bf0ff0d9a760540f0893 Author: Kay Sievers Date: Thu Apr 10 21:29:20 2008 -0700 spi: fix platform driver hotplug/coldplug Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable SPI platform drivers, to allow module auto loading. [dbrownell@users.sourceforge.net: more drivers: registration fixes] Signed-off-by: Kay Sievers Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8d1c98b0b5c0148b519c6416e689ef6a89ffcea3 Author: Davide Libenzi Date: Thu Apr 10 21:29:19 2008 -0700 eventfd/kaio integration fix Jeff Roberson discovered a race when using kaio eventfd based notifications. When it occurs it can lead tomissed wakeups and hung userspace. This patch fixes the race by moving the notification inside the spinlocked section of kaio. The operation is safe since eventfd spinlock and kaio one are unrelated. Signed-off-by: Davide Libenzi Cc: Zach Brown Cc: Jeff Roberson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d479540dbaba6f7acdb48e0242fee868c7a68116 Author: Randy Dunlap Date: Thu Apr 10 21:29:18 2008 -0700 rtc: rtc-s35390a.c needs the bitreverse library rtc-s35390a uses BITREVERSE functions so it needs to select that config symbol to ensure that the functions are built. drivers/built-in.o: In function `s35390a_set_datetime': linux-2.6.25-rc8-git7/drivers/rtc/rtc-s35390a.c:144: undefined reference to `byte_rev_table' drivers/built-in.o: In function `s35390a_get_datetime': linux-2.6.25-rc8-git7/drivers/rtc/rtc-s35390a.c:163: undefined reference to `byte_rev_table' Signed-off-by: Randy Dunlap Acked-by: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b6c3006d204a0b86e1ebe02ca38f9f071a03c7ef Author: Paul Menage Date: Thu Apr 10 21:29:16 2008 -0700 cgroups: include hierarchy ids in /proc//cgroup Extend the /proc//cgroup file to include the appropriate hierarchy ID on each line. Currently this ID isn't really needed since a hierarchy can be completely identified by the set of subsystems bound to it, but this is likely to change in the near future in order to support stateless subsystems and merging/rebinding of subsystems. Getting this change into 2.6.25 reduces the need for an API change later. Signed-off-by: Paul Menage Cc: Balbir Singh Cc: Pavel Emelyanov Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fa16eefd3e835dd81c688a2a743eb59331162ed5 Author: Till Harbaum Date: Fri Apr 11 12:07:05 2008 +0200 i2c-tiny-usb: New VID/PID pair I have recently bought some USB PIDs from EZPrototypes for my USB projects and one will be for the i2c-tiny-usb. I have not yet started to use the new one in the official i2c-tiny-usb firmware since i think it makes sense to get the change into the kernel before releasing a modified firmware. This patch adds support for the EZPrototypes USB vid/pid pair used in later i2c-tiny-usb firmware versions (avrusb v1.06 and up, usbtiny v2.06 and up). Signed-off-by: Till Harbaum Signed-off-by: Jean Delvare commit b73a9aece56594bdb73712c8b9a8a4ad05fdeb33 Author: Troy Kisky Date: Fri Apr 11 12:07:05 2008 +0200 i2c-davinci: Fix lost interrupt DAVINCI_I2C_STR_REG is a write 1 to clear register, so don't use a read/modify/write cycle. Signed-off-by: Troy Kisky Acked-by: Dirk Behme Signed-off-by: Kevin Hilman Signed-off-by: Jean Delvare commit 852fb2ac76241868454d07818ea0d87fcd9e5301 Author: Paul Mundt Date: Fri Apr 11 12:07:04 2008 +0200 i2c-ibm_iic: Fast mode parm desc fixup Noticed this when grepping for fast mode module params, the i2c-ibm_iic driver was using a non-existent variable for MODULE_PARM_DESC. Fix it up to reflect what it's actually supposed to be describing. Signed-off-by: Paul Mundt Signed-off-by: Jean Delvare commit 7951f0b03a63d657c72c7d54d306ef3357e7e604 Author: Daniel Lezcano Date: Thu Apr 10 20:53:10 2008 -0700 [NETNS][IPV6] tcp - assign the netns for timewait sockets Copy the network namespace from the socket to the timewait socket. Signed-off-by: Daniel Lezcano Acked-by: Mark Lord Signed-off-by: David S. Miller commit d10d89ec78114f925f63c5126a2b2490f501a462 Author: Linus Torvalds Date: Thu Apr 10 17:35:23 2008 -0700 Add commentary about the new "asmlinkage_protect()" macro It's really a pretty ugly thing to need, and some day it will hopefully be obviated by teaching gcc about the magic calling conventions for the low-level system call code, but in the meantime we can at least add big honking comments about why we need these insane and strange macros. I took my comments from my version of the macro, but I ended up deciding to just pick Roland's version of the actual code instead (with his prettier syntax that uses vararg macros). Thus the previous two commits that actually implement it. Signed-off-by: Linus Torvalds commit 598af051a79d05b751fe793f1fe09fcf74763e02 Author: Roland McGrath Date: Thu Apr 10 15:38:45 2008 -0700 asmlinkage_protect sys_io_getevents Use asmlinkage_protect in sys_io_getevents, because GCC for i386 with CONFIG_FRAME_POINTER=n can decide to clobber an argument word on the stack, i.e. the user struct pt_regs. Here the problem is not a tail call, but just the compiler's use of the stack when it inlines and optimizes the body of the called function. This seems to avoid it. Signed-off-by: Roland McGrath Signed-off-by: Linus Torvalds commit 54a015104136974262afa4b8ddd943ea70dec8a2 Author: Roland McGrath Date: Thu Apr 10 15:37:38 2008 -0700 asmlinkage_protect replaces prevent_tail_call The prevent_tail_call() macro works around the problem of the compiler clobbering argument words on the stack, which for asmlinkage functions is the caller's (user's) struct pt_regs. The tail/sibling-call optimization is not the only way that the compiler can decide to use stack argument words as scratch space, which we have to prevent. Other optimizations can do it too. Until we have new compiler support to make "asmlinkage" binding on the compiler's own use of the stack argument frame, we have work around all the manifestations of this issue that crop up. More cases seem to be prevented by also keeping the incoming argument variables live at the end of the function. This makes their original stack slots attractive places to leave those variables, so the compiler tends not clobber them for something else. It's still no guarantee, but it handles some observed cases that prevent_tail_call() did not. Signed-off-by: Roland McGrath Signed-off-by: Linus Torvalds commit 783e391b7b5b273cd20856d8f6f4878da8ec31b3 Author: Venki Pallipadi Date: Thu Apr 10 09:49:58 2008 -0700 x86: Simplify cpu_idle_wait This patch also resolves hangs on boot: http://lkml.org/lkml/2008/2/23/263 http://bugzilla.kernel.org/show_bug.cgi?id=10093 The bug was causing once-in-few-reboots 10-15 sec wait during boot on certain laptops. Earlier commit 40d6a146629b98d8e322b6f9332b182c7cbff3df added smp_call_function in cpu_idle_wait() to kick cpus that are in tickless idle. Looking at cpu_idle_wait code at that time, code seemed to be over-engineered for a case which is rarely used (while changing idle handler). Below is a simplified version of cpu_idle_wait, which just makes a dummy smp_call_function to all cpus, to make them come out of old idle handler and start using the new idle handler. It eliminates code in the idle loop to handle cpu_idle_wait. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Linus Torvalds commit a1e58bbdc969c3fe60addca7f2729779d22a83c1 Author: Harvey Harrison Date: Thu Apr 10 13:38:23 2008 -0700 lzo: fix typo in decompressor Shift of a LE value seems strange, probably meant to shift the cpu-order variable as in the prvious section of the switch statement. Signed-off-by: Harvey Harrison Acked-by: Richard Purdie Signed-off-by: Linus Torvalds commit f17520e1f19172057328e50ffed01a42534921e9 Author: David Howells Date: Thu Apr 10 16:11:05 2008 +0100 FRV: Don't make smp_{r, w, }mb() interpolate MEMBAR when CONFIG_SMP=n [try #2] Don't make smp_{r,w,}mb() interpolate a MEMBAR instruction when CONFIG_SMP=n as SMP memory barries on UP systems should interpolate a compiler barrier only. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit ed9b949f55bc8a6bb6083ce0eddb53d06aee302a Author: David Howells Date: Thu Apr 10 16:11:00 2008 +0100 FRV: Make NOMMU-mode work with base addresses other than 0xC0000000 [try #2] Make NOMMU-mode work with base addresses other than 0xC0000000 by: (1) Giving the code that sets up the protection registers the right address in __sdram_base. Rather than being hard coded to 0xC0000000, the value of __page_offset is obtained from the linker script. (2) Eliminate the check in __switch_to() that verifies the current thread info is in the 0xCxxxxxxx region. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit e31c243f984628d02f045dc4b622f1e2827860dc Author: David Howells Date: Thu Apr 10 16:10:55 2008 +0100 FRV: Add support for emulation of userspace atomic ops [try #2] Use traps 120-126 to emulate atomic cmpxchg32, xchg32, and XOR-, OR-, AND-, SUB- and ADD-to-memory operations for userspace. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 0c93d8e4d342b1b5cda1037f2527fcf443c80fbc Author: David Howells Date: Thu Apr 10 16:10:50 2008 +0100 FRV: Move STACK_TOP_MAX up [try #2] Move STACK_TOP_MAX up so that we don't try moving the stack above it as that causes setup_arg_pages() to malfunction. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit a31b9dd8edc6e4e75b5299fee6093b3c54548446 Author: David Howells Date: Thu Apr 10 16:10:45 2008 +0100 FRV: Handle update_mmu_cache() being called when current->mm is NULL [try #2] Handle update_mmu_cache() being called when current->mm is NULL. We cache static TLB mappings for the current page table in DAMPR4 and DAMPR5 on the theory that the next data lookup is likely to be in the same general region, and thus is likely to be mapped by the same page table. However, we can't get this information if we can't access the appropriate mm_struct. If current->mm is NULL, we just clear the cache in the knowledge that the TLB miss handlers will load it. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 5d69a029ab13ddef5bdad69174fabafada4a87fd Merge: 999646e... e6957ea... Author: Linus Torvalds Date: Thu Apr 10 13:39:29 2008 -0700 Merge branch 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6 * 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6: [XFS] Ensure "both" features2 slots are consistent [XFS] Fix superblock features2 field alignment problem [XFS] remove shouting-indirection macros from xfs_sb.h commit 999646e3f953c734f8eced551fc1ea28719ba7a7 Merge: 76b0c26... 4faa3c8... Author: Linus Torvalds Date: Thu Apr 10 13:39:07 2008 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block * 'for-linus' of git://git.kernel.dk/linux-2.6-block: cfq-iosched: do not leak ioc_data across iosched switches splice: fix infinite loop in generic_file_splice_read() commit 76b0c26af2736b7e5b87e6ed7ab63901483d5736 Author: Roman Zippel Date: Wed Apr 9 17:44:07 2008 +0200 HFS+: fix unlink of links Some time ago while attempting to handle invalid link counts, I botched the unlink of links itself, so this patch fixes this now correctly, so that only the link count of nodes that don't point to links is ignored. Thanks to Vlado Plaga to notify me of this problem. Signed-off-by: Roman Zippel Signed-off-by: Linus Torvalds commit 951e07c930f5f66b676eaa4c32a1b0d8e2d7d06a Author: David S. Miller Date: Thu Apr 10 01:29:36 2008 -0700 [IPV4]: Fix byte value boundary check in do_ip_getsockopt(). This fixes kernel bugzilla 10371. As reported by M.Piechaczek@osmosys.tv, if we try to grab a char sized socket option value, as in: unsigned char ttl = 255; socklen_t len = sizeof(ttl); setsockopt(socket, IPPROTO_IP, IP_MULTICAST_TTL, &ttl, &len); getsockopt(socket, IPPROTO_IP, IP_MULTICAST_TTL, &ttl, &len); The ttl returned will be wrong on big-endian, and on both little- endian and big-endian the next three bytes in userspace are written with garbage. It's because of this test in do_ip_getsockopt(): if (len < sizeof(int) && len > 0 && val>=0 && val<255) { It should allow a 'val' of 255 to pass here, but it doesn't so it copies a full 'int' back to userspace. On little-endian that will write the correct value into the location but it spams on the next three bytes in userspace. On big endian it writes the wrong value into the location and spams the next three bytes. Signed-off-by: David S. Miller commit 4faa3c8150c1d4f7b38d962eda7851083e218e3f Author: Fabio Checconi Date: Thu Apr 10 08:28:01 2008 +0200 cfq-iosched: do not leak ioc_data across iosched switches When switching scheduler from cfq, cfq_exit_queue() does not clear ioc->ioc_data, leaving a dangling pointer that can deceive the following lookups when the iosched is switched back to cfq. The pattern that can trigger that is the following: - elevator switch from cfq to something else; - module unloading, with elv_unregister() that calls cfq_free_io_context() on ioc freeing the cic (via the .trim op); - module gets reloaded and the elevator switches back to cfq; - reallocation of a cic at the same address as before (with a valid key). To fix it just assign NULL to ioc_data in __cfq_exit_single_io_context(), that is called from the regular exit path and from the elevator switching code. The only path that frees a cic and is not covered is the error handling one, but cic's freed in this way are never cached in ioc_data. Signed-off-by: Fabio Checconi Signed-off-by: Jens Axboe commit e6957ea48429aeda4f5d51af4238231d44b0dc4a Author: Eric Sandeen Date: Thu Apr 10 12:19:34 2008 +1000 [XFS] Ensure "both" features2 slots are consistent Since older kernels may look in the sb_bad_features2 slot for flags, rather than zeroing it out on fixup, we should make it equal to the sb_features2 value. Also, if the ATTR2 flag was not found prior to features2 fixup, it was not set in the mount flags, so re-check after the fixup so that the current session will use the feature. Also fix up the comments to reflect these changes. SGI-PV: 980085 SGI-Modid: xfs-linux-melb:xfs-kern:30778a Signed-off-by: Eric Sandeen Signed-off-by: David Chinner Signed-off-by: Lachlan McIlroy commit ee1c090825bf2f1cb9712489c234eabf69a9a78f Author: David Chinner Date: Thu Mar 6 13:45:50 2008 +1100 [XFS] Fix superblock features2 field alignment problem Due to the xfs_dsb_t structure not being 64 bit aligned, the last field of the on-disk superblock can vary in location This causes problems when the filesystem gets moved to a different platform, or there is a 32 bit userspace and 64 bit kernel. This patch detects the defect at mount time, logs a warning such as: XFS: correcting sb_features alignment problem in dmesg and corrects the problem so that everything is OK. it also blacklists the bad field in the superblock so it does not get used for something else later on. SGI-PV: 977636 SGI-Modid: xfs-linux-melb:xfs-kern:30539a Signed-off-by: David Chinner Signed-off-by: Christoph Hellwig Signed-off-by: Eric Sandeen Signed-off-by: Lachlan McIlroy commit 6211870992502efdccf9cd6bae155c83277835fa Author: Eric Sandeen Date: Thu Mar 6 13:44:28 2008 +1100 [XFS] remove shouting-indirection macros from xfs_sb.h Remove macro-to-small-function indirection from xfs_sb.h, and remove some which are completely unused. SGI-PV: 976035 SGI-Modid: xfs-linux-melb:xfs-kern:30528a Signed-off-by: Eric Sandeen Signed-off-by: Donald Douwsma Signed-off-by: Lachlan McIlroy commit 8191ecd1d14c6914c660dfa007154860a7908857 Author: Jens Axboe Date: Thu Apr 10 08:24:25 2008 +0200 splice: fix infinite loop in generic_file_splice_read() There's a quirky loop in generic_file_splice_read() that could go on indefinitely, if the file splice returns 0 permanently (and not just as a temporary condition). Get rid of the loop and pass back -EAGAIN correctly from __generic_file_splice_read(), so we handle that condition properly as well. Signed-off-by: Jens Axboe commit d786a4a6599740eaa4b8d1e1d466853f02db11d4 Author: David S. Miller Date: Wed Apr 9 19:39:25 2008 -0700 [SPARC]: Fix several regset and ptrace bugs. 1) ptrace should pass 'current' to task_user_regset_view() 2) When fetching general registers using a 64-bit view, and the target is 32-bit, we have to convert. 3) Skip the whole register window get/set code block if the user isn't asking to access anything in there. Otherwise we have problems if the user doesn't have an address space setup. Fetching ptrace register is still valid at such a time, and ptrace does not try to access the register window area of the regset. Signed-off-by: David S. Miller commit f4be31ec9690cfe6e94fcbed6ae60a6a38b3c3ed Author: Steven Rostedt Date: Wed Apr 9 19:04:07 2008 -0400 pop previous section in alternative.c gcc expects all toplevel assembly to return to the original section type. The code in alteranative.c does not do this. This caused some strange bugs in sched-devel where code would end up in the .rodata section and when the kernel sets the NX bit on all .rodata, the kernel would crash when executing this code. This patch adds a .previous marker to return the code back to the original section. Credit goes to Andrew Pinski for telling me it wasn't a gcc bug but a bug in the toplevel asm code in the kernel. ;-) Signed-off-by: Steven Rostedt Signed-off-by: Linus Torvalds commit 44cad261025c04327fd7e847a7088fd3031b0c3e Merge: c5b9004... 5a55261... Author: Linus Torvalds Date: Wed Apr 9 18:36:12 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6: SELinux: don't BUG if fs reuses a superblock commit 5a55261716e838f188598ab3d7a0abf9cf1338f8 Author: Eric Paris Date: Wed Apr 9 14:08:35 2008 -0400 SELinux: don't BUG if fs reuses a superblock I (wrongly) assumed that nfs_xdev_get_sb() would not ever share a superblock and so cloning mount options would always be correct. Turns out that isn't the case and we could fall over a BUG_ON() that wasn't a BUG at all. Since there is little we can do to reconcile different mount options this patch just leaves the sb alone and the first set of options wins. Signed-off-by: Eric Paris Acked-by: Stephen Smalley Acked-by: Trond Myklebust Signed-off-by: James Morris commit 619c714c1d6e4dff00ddde582d78492fd95452d6 Author: Eliezer Tamir Date: Wed Apr 9 15:25:46 2008 -0700 BNX2X: Correct bringing chip out of reset Fixed bug: Wrong register was written to when bringing the chip out of reset. [ Bump driver version and release date -DaveM ] Signed-off-by: Eliezer Tamir Signed-off-by: David S. Miller commit 475959d4773e53a2700e523dd30acebbd47556a5 Author: Jan Engelhardt Date: Wed Apr 9 15:14:58 2008 -0700 [NETFILTER]: nf_nat: autoload IPv4 connection tracking Without this patch, the generic L3 tracker would kick in if nf_conntrack_ipv4 was not loaded before nf_nat, which would lead to translation problems with ICMP errors. NAT does not make sense without IPv4 connection tracking anyway, so just add a call to need_ipv4_conntrack(). Signed-off-by: Jan Engelhardt Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1b9b70ea2ebaab26c3e4fed385dfab6fc16359ed Author: Patrick McHardy Date: Wed Apr 9 15:14:18 2008 -0700 [NETFILTER]: xt_hashlimit: fix mask calculation Shifts larger than the data type are undefined, don't try to shift an u32 by 32. Also remove some special-casing of bitmasks divisible by 32. Based on patch by Jan Engelhardt . Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit b41f5bfff73f244101b34f3603974ef7aeadf545 Merge: bcf0dda... e91e9d4... Author: David S. Miller Date: Wed Apr 9 15:10:14 2008 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit bcf0dda8d2408fe1c1040cdec5a98e5fcad2ac72 Author: Patrick McHardy Date: Wed Apr 9 15:08:24 2008 -0700 [XFRM]: xfrm_user: fix selector family initialization Commit df9dcb45 ([IPSEC]: Fix inter address family IPsec tunnel handling) broke openswan by removing the selector initialization for tunnel mode in case it is uninitialized. This patch restores the initialization, fixing openswan, but probably breaking inter-family tunnels again (unknown since the patch author disappeared). The correct thing for inter-family tunnels is probably to simply initialize the selector family explicitly. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit e91e9d490d9ae382003ef9d05fd50238db54c35b Author: Daniel Wagner Date: Wed Apr 9 16:29:01 2008 +0200 rt61pci: rt61pci_beacon_update do not free skb twice The layer above will free the skb in an error case. Signed-off-by: Daniel Wagner Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit c5b9004baac077fb472cc7ac8293f2a9fc918d22 Merge: 098107a... ac2c5bd... Author: Linus Torvalds Date: Wed Apr 9 08:06:27 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: ata/sata_fsl: Remove unused variable in sata_fsl_probe pata_sil680: Fix build on arch/ppc commit 2633da237ba29875294f8680ebece5900ccdcc05 Author: Michael Buesch Date: Tue Apr 8 11:17:29 2008 +0200 ssb-mipscore: Fix interrupt vectors This fixes assignment of the interrupt vectors on the SSB MIPS core. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit b63009b456c8d9abe684bdf8d4bd8f27eb040019 Author: Larry Finger Date: Tue Apr 8 10:28:24 2008 +0200 ssb-pcicore: Fix IRQ TPS flag handling This fixes the TPS flag handling for the SSB pcicore driver. This fixes interrupts on some devices. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 216bce90b811a35eb5cd2ed8216bdbb1753e9b2b Author: Vladimir Koutny Date: Mon Mar 31 17:05:10 2008 +0200 mac80211: use short_preamble mode from capability if ERP IE not present When associating to a b-only AP where there is no ERP IE, short preamble mode is left at previous state (probably also protection mode). In this case, disable protection and use short preamble mode as specified in capability field. The same is done if capability field is changed on-the-fly. Signed-off-by: Vladimir Koutny Signed-off-by: John W. Linville commit ac2c5bd05c88185ecbe7c114e472716f2e2d3a0c Author: Johann Felix Soden Date: Sun Apr 6 15:10:54 2008 +0200 ata/sata_fsl: Remove unused variable in sata_fsl_probe In sata_fsl_probe memory is allocated but never used or deallocated. Fixes: http://bugzilla.kernel.org/show_bug.cgi?id=10404 Thanks to Daniel Marjamäki for the bug report. Reported-by: Daniel Marjamäki Signed-off-by: Johann Felix Soden Signed-off-by: Jeff Garzik commit 119b3aa65d33533c2f8d8822bb7a3e62aa12f860 Author: Benjamin Herrenschmidt Date: Wed Apr 9 07:51:07 2008 +1000 pata_sil680: Fix build on arch/ppc Commit 0f436eff54f90419ac1b8accfb3e6e17c4b49a4e breaks build on arch/ppc as it doesn't implement the machine_is() macro. This fixes it by using CONFIG_PPC_MERGE instead which represents arch/powerpc only, while CONFIG_PPC is set for both. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Jeff Garzik commit 098107a01a2d427d0be9c19ae5bc9a410efed0c9 Merge: f8e30e4... ed13c27... Author: Linus Torvalds Date: Tue Apr 8 18:26:31 2008 -0700 Merge branch 'hotfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 * 'hotfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: SUNRPC: Fix a memory leak in rpc_create() fix bug - executing FDPIC ELF on NFS mount triggers BUG() at mm/nommu.c:862:/do_mmap_private() NFS: initialize flags field in nfs_open_context SUNRPC: don't call flush_dcache_page() with an invalid pointer commit f8e30e447c692aaa728c65930ebc0146f65e1e7b Author: Dmitry Adamushko Date: Tue Apr 8 17:41:59 2008 -0700 mtd/chips: add missing set_current_state() to cfi_{amdstd,staa}_sync() cfi_amdstd_sync() and cfi_staa_sync() call schedule() without changing task's state appropriately. In case of e.g. chip->state == FL_ERASING, cfi_*_sync() will be busy-looping either redundantly for a fixed interval of time (for SCHED_NORMAL tasks) or possibly endlessly (for RT tasks and UP). Signed-off-by: Dmitry Adamushko Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b9ad8985f25c158e71844c78277a0c0b3779d0d3 Author: Michael Hennerich Date: Tue Apr 8 17:41:58 2008 -0700 spi: spi_bfin5xx: remove unused label Remove unused label, and associated compiler warning. Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6395bee7e92bf34e95dc67c1da5acc30e8b98244 Author: David Brownell Date: Tue Apr 8 17:41:58 2008 -0700 spi: documentation tweaks Update SPI documentation to clarify some areas of recent confusion: clock polarity takes effect when chipselect goes active; and zero length buffers are OK in certain cases. Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f9e522caece074b9a985436d611127e8e96ad446 Author: Vitja Makarov Date: Tue Apr 8 17:41:57 2008 -0700 spi: spi_bfin5xx: fix probe() sequencing Fix bug in SPI probe: first initialize peripheral pins, and just after register spi master device. This fixes problems with SPI drivers built-in kernel. Singed-off-by: Vitja Makarov Signed-off-by: Bryan Wu Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4fb98efacffd3dfbe8e3b9cb054dd71bab715065 Author: Mike Frysinger Date: Tue Apr 8 17:41:57 2008 -0700 spi: spi_bfin5xx build fix Fix breakage cause by overzealous line wrapping; there should be only one format string. Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba62b077871a5255e271f4fdae57167651839277 Author: Alok Kataria Date: Tue Apr 8 17:41:56 2008 -0700 acpi: fix "buggy BIOS check" when CPUs are hot removed Fixes a BUG in ACPI hotplugging. processor_device_array[pr->id] needs to be set to NULL when removing a CPU. Else the "buggy BIOS check" in acpi_processor_start mistakenly fires when a CPU is removed from the system and then later re-added. Signed-off-by: Alok N Kataria Signed-off-by: Dan Arai Cc: Len Brown Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b47c971dc947cadecc20dc7681037e96ece520e Author: Arjan van de Ven Date: Tue Apr 8 17:41:55 2008 -0700 es1968: fix sleep-while-holding-lock bug snd_es1968_ac97_read() calls snd_es1968_ac97_wait() first outside a locked area, and later, while holding a lock. snd_es1968_ac97_wait() has a polling loop with a cond_resched() inside it.. which sleeps, so the second call is invalid. This patch adds a version of the wait function that just pure polls. While this is not very elegant in principle, it's very likely the easiest thing to do here, we already checked if the chip was ready (while yielding) just before, so it is very unlikely to take a long time here. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Arjan van de Ven Cc: Jaroslav Kysela Cc: Takashi Iwai Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 41e3355de052693c7a0cad74b845148d262edadf Author: KAMEZAWA Hiroyuki Date: Tue Apr 8 17:41:54 2008 -0700 memcg: fix node_state handling This should be N_NORMAL_MEMORY. N_NORMAL_MEMORY is "true" if a node has memory for the kernel. N_HIGH_MEMORY is "true" if a node has memory for HIGHMEM. (If CONFIG_HIGHMEM=n, always "true") This check is used for testing whether we can use kmalloc_node() on a node. Then, if there is a node which only contains HIGHMEM, the system will call kmalloc_node() which doesn't contain memory for the kernel. If it happens under SLUB, the kernel will panic. I think this only happens on x86_32-numa. Signed-off-by: KAMEZAWA Hiroyuki Cc: Balbir Singh Cc: Pavel Emelyanov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb070e43497d4fcfea7d8b52003fe1376c218343 Author: Krzysztof Helt Date: Tue Apr 8 17:41:52 2008 -0700 acpi thermal: fix result check thermal_zone_device_register() uses the ERR_PTR macro on its return values. A correct check is to use the IS_ERR() macro. The 2.6.25 kernels panic on Compaq AP550 without this patch as it has more then 10 (THERMAL_MAX_TRIPS) trip points (there are 12). Signed-off-by: Krzysztof Helt Cc: "Rafael J. Wysocki" Cc: Len Brown Acked-by: Zhang Rui Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ef45cb624b9517f71ad6c61299478c2cc08e4d98 Author: Pete Zaitcev Date: Tue Apr 8 17:41:51 2008 -0700 ub: remove BUG() after __blk_end_request and fix the condition causing it When __blk_end_request returns nonzero, it means that the request was not completely processed and some BIOs are still attached. Since we have dequeued it by that time, it means leaking requests and hanging processes, which is why BUG() was in there. In ub this happens if a packet request ends normally, but with residue (e.g. when scsi_id issues INQUIRY). The fix is to make sure that arguments passed to __blk_end_request are correct: the full request length and not just transferred length. The transferred length is indicated to applications by adjusting rq->data_len with old, unchanged code outside of this patch. Signed-off-by: Pete Zaitcev Cc: Kiyoshi Ueda Cc: Greg KH Cc: Boaz Harrosh Cc: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ed13c27e546667fb0967ae30f5070cd7f6455f90 Author: Chuck Lever Date: Mon Apr 7 16:52:44 2008 -0400 SUNRPC: Fix a memory leak in rpc_create() Commit 510deb0d was supposed to move the xprt_create_transport() call in rpc_create(), but neglected to remove the old call site. This resulted in a transport leak after every rpc_create() call. This leak is present in 2.6.24 and 2.6.25. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 240ee831187e000704cba3208ef6b0a8ad49bd64 Author: Bryan Wu Date: Tue Apr 1 20:23:39 2008 -0700 fix bug - executing FDPIC ELF on NFS mount triggers BUG() at mm/nommu.c:862:/do_mmap_private() NFS needs a NOMMU version mmap function to support uClinux on NOMMU machine http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_id=141&tracker_item_id=3992 Signed-off-by: Bryan Wu Cc: Mike Frysinger Signed-off-by: Trond Myklebust commit 66d3aac04175c35564cc5982934b68bc4f89a76d Author: Jeff Layton Date: Mon Mar 31 15:01:58 2008 -0400 NFS: initialize flags field in nfs_open_context The nfs_open_context struct had a "flags" field added recently, but the allocator isn't initializing it. It also looks like the allocator isn't initializing the mode or list either, but they seem to be overwritten by the caller, so that's less of an issue. Signed-off-by: Jeff Layton Signed-off-by: Trond Myklebust commit daeba89d43af0fa469d38a4ccdc32fff8ca17c2e Author: Trond Myklebust Date: Mon Mar 31 17:02:02 2008 -0400 SUNRPC: don't call flush_dcache_page() with an invalid pointer Fix a problem in _copy_to_pages(), whereby it may call flush_dcache_page() with an invalid pointer due to the fact that 'pgto' gets incremented beyond the end of the page array. Fix is to exit the loop without this unnecessary increment of pgto. Signed-off-by: Trond Myklebust commit 21f644f3eabde637f255f75ad05d0821a7a36b7f Author: David S. Miller Date: Tue Apr 8 16:50:44 2008 -0700 [NET]: Undo code bloat in hot paths due to print_mac(). If print_mac() is used inside of a pr_debug() the compiler can't see that the call is redundant so still performs it even of pr_debug() ends up being a nop. So don't use print_mac() in such cases in hot code paths, use MAC_FMT et al. instead. As noted by Joe Perches, pr_debug() could be modified to handle this better, but that is a change to an interface used by the entire kernel and thus needs to be validated carefully. This here is thus the less risky fix for 2.6.25 Signed-off-by: David S. Miller commit 6adb4f733e9996b4fd68a6db50dd51bd2463ccac Author: Ilpo Järvinen Date: Mon Apr 7 22:33:57 2008 -0700 [TCP]: Don't allow FRTO to take place while MTU is being probed MTU probe can cause some remedies for FRTO because the normal packet ordering may be violated allowing FRTO to make a wrong decision (it might not be that serious threat for anything though). Thus it's safer to not run FRTO while MTU probe is underway. It seems that the basic FRTO variant should also look for an skb at probe_seq.start to check if that's retransmitted one but I didn't implement it now (plain seqno in window check isn't robust against wraparounds). Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 882bebaaca4bb1484078d44ef011f918c0e1e14e Author: Ilpo Järvinen Date: Mon Apr 7 22:33:07 2008 -0700 [TCP]: tcp_simple_retransmit can cause S+L This fixes Bugzilla #10384 tcp_simple_retransmit does L increment without any checking whatsoever for overflowing S+L when Reno is in use. The simplest scenario I can currently think of is rather complex in practice (there might be some more straightforward cases though). Ie., if mss is reduced during mtu probing, it may end up marking everything lost and if some duplicate ACKs arrived prior to that sacked_out will be non-zero as well, leading to S+L > packets_out, tcp_clean_rtx_queue on the next cumulative ACK or tcp_fastretrans_alert on the next duplicate ACK will fix the S counter. More straightforward (but questionable) solution would be to just call tcp_reset_reno_sack() in tcp_simple_retransmit but it would negatively impact the probe's retransmission, ie., the retransmissions would not occur if some duplicate ACKs had arrived. So I had to add reno sacked_out reseting to CA_Loss state when the first cumulative ACK arrives (this stale sacked_out might actually be the explanation for the reports of left_out overflows in kernel prior to 2.6.23 and S+L overflow reports of 2.6.24). However, this alone won't be enough to fix kernel before 2.6.24 because it is building on top of the commit 1b6d427bb7e ([TCP]: Reduce sacked_out with reno when purging write_queue) to keep the sacked_out from overflowing. Signed-off-by: Ilpo Järvinen Reported-by: Alessandro Suardi Signed-off-by: David S. Miller commit c137f3dda04b0aee1bc6889cdc69185f53df8a82 Author: Ilpo Järvinen Date: Mon Apr 7 22:32:38 2008 -0700 [TCP]: Fix NewReno's fast rexmit/recovery problems with GSOed skb Fixes a long-standing bug which makes NewReno recovery crippled. With GSO the whole head skb was marked as LOST which is in violation of NewReno procedure that only wants to mark one packet and ended up breaking our TCP code by causing counter overflow because our code was built on top of assumption about valid NewReno procedure. This manifested as triggering a WARN_ON for the overflow in a number of places. It seems relatively safe alternative to just do nothing if tcp_fragment fails due to oom because another duplicate ACK is likely to be received soon and the fragmentation will be retried. Special thanks goes to Soeren Sonnenburg who was lucky enough to be able to reproduce this so that the warning for the overflow was hit. It's not as easy task as it seems even if this bug happens quite often because the amount of outstanding data is pretty significant for the mismarkings to lead to an overflow. Because it's very late in 2.6.25-rc cycle (if this even makes in time), I didn't want to touch anything with SACK enabled here. Fragmenting might be useful for it as well but it's more or less a policy decision rather than mandatory fix. Thus there's no need to rush and we can postpone considering tcp_fragment with SACK for 2.6.26. In 2.6.24 and earlier, this very same bug existed but the effect is slightly different because of a small changes in the if conditions that fit to the patch's context. With them nothing got lost marker and thus no retransmissions happened. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 1b69d745397eac12b3f8a2eb6b799cd476aef282 Author: Ilpo Järvinen Date: Mon Apr 7 22:31:38 2008 -0700 [TCP]: Restore 2.6.24 mark_head_lost behavior for newreno/fack The fast retransmission can be forced locally to the rfc3517 branch in tcp_update_scoreboard instead of making such fragile constructs deeper in tcp_mark_head_lost. This is necessary for the next patch which must not have loopholes for cnt > packets check. As one can notice, readability got some improvements too because of this :-). Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller commit 16f2e85d3151efa643879fa5aa87c9d77d60f57e Author: Johannes Berg Date: Mon Apr 7 14:35:46 2008 +0200 nl80211: fix STA AID bug This fixes the STA AID setting and actually makes hostapd/mac80211 work properly in presence of power-saving stations. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 881400a20c3551e90eed1062cf0387fa686a2fd0 Author: Stefano Brivio Date: Sun Apr 6 17:05:07 2008 +0200 b43legacy: fix bcm4303 crash This fixes an hard crash which happened upon driver loading on bcm4303 rev. 2 devices. Signed-off-by: Stefano Brivio Signed-off-by: John W. Linville commit 7981a35ed0f64ca49b1a0c0acecbc9b644a8a2e3 Author: Abhijeet Kolekar Date: Fri Apr 4 14:32:01 2008 -0700 iwlwifi: fix n-band association problem This patch enables the IWL4965_HT flag (n-band) in Kconfig. Removed the "depends on n" from Kconfig for config IWL4965_HT Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 3f2eeac97952b262f2b904c6150a9879777995eb Author: Daniel Drake Date: Wed Apr 2 20:33:54 2008 +0100 ipw2200: set MAC address on radiotap interface Commit bada339ba24dee9e143bfb42e1dc61f146619846 enforces that all interfaces have a valid MAC address before they are brought up. ipw2200 does not assign a MAC address to it's radiotap interface, meaning that the radiotap interface cannot be brought up in 2.6.24. https://bugs.gentoo.org/show_bug.cgi?id=215714 Fix this by copying the MAC address from the real interface. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 877cb0d4af2658beb5f89d38ae51968782f62fad Author: Holger Schurig Date: Wed Apr 2 16:34:51 2008 +0200 libertas: fix mode initialization problem After moving lbs_find_best_network_ssid() from scan.c to assoc.c gcc was able to deduce that new_mode might stay uninitialized. Signed-off-by: Holger Schurig Acked-by: Dan Williams Signed-off-by: John W. Linville commit 7180c4c9e09888db0a188f729c96c6d7bd61fa83 Merge: 4c3b01f... 869ab51... Author: Linus Torvalds Date: Mon Apr 7 19:15:35 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6: SELinux: more GFP_NOFS fixups to prevent selinux from re-entering the fs code commit 4c3b01f71181a52ab7735a7c52b1aa2232826075 Author: Michael Krufky Date: Sun Apr 6 20:40:17 2008 -0400 pvrusb2: fix broken build due to patch order dependency Fix broken build due to patch order dependency. A future patch requires the lines that break the current build. Disable those lines for now. Signed-off-by: Michael Krufky Acked-by: Mauro Carvalho Chehab Signed-off-by: Linus Torvalds commit 869ab5147e1eead890245cfd4f652ba282b6ac26 Author: Stephen Smalley Date: Fri Apr 4 08:46:05 2008 -0400 SELinux: more GFP_NOFS fixups to prevent selinux from re-entering the fs code More cases where SELinux must not re-enter the fs code. Called from the d_instantiate security hook. Signed-off-by: Stephen Smalley Signed-off-by: James Morris commit ff09e2afe742f3ff52a0c9a660e8a3fe30cf587c Merge: ad3c7e4... 9c5a3d7... Author: Linus Torvalds Date: Mon Apr 7 14:54:07 2008 -0700 Merge branch 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/ralf/upstream-linus * 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/ralf/upstream-linus: [MIPS] Handle aliases in vmalloc correctly. commit 9c5a3d729cf430609d091ff610a7db363aafcd47 Author: Ralf Baechle Date: Sat Apr 5 15:13:23 2008 +0100 [MIPS] Handle aliases in vmalloc correctly. flush_cache_vmap / flush_cache_vunmap were calling flush_cache_all which - having been deprecated - turned into a nop ... Signed-off-by: Ralf Baechle commit ad3c7e42e33a842cf3b518e21a7f69e167649d8a Merge: 6ea0a46... c976816... Author: Linus Torvalds Date: Mon Apr 7 14:26:53 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: siimage: fix kernel oops on PPC 44x commit c976816b6e901341ec3c4653147316c15549a1c4 Author: Sergei Shtylyov Date: Mon Apr 7 23:30:10 2008 +0200 siimage: fix kernel oops on PPC 44x Fix kernel oops due to machine check occuring in init_chipset_siimage() on PPC 44x platforms. These 32-bit CPUs have 36-bit physical address and PCI I/O and memory spaces are mapped beyond 4 GB; arch/ppc/ code has a fixup in ioremap() that creates an illusion of the PCI I/O and memory resources being mapped below 4 GB, while arch/powerpc/ code got rid of this fixup with PPC 44x having instead CONFIG_RESOURCES_64BIT=y -- this causes the resources to be truncated to 32-bit 'unsigned long' type in this driver, and so non-existant memory being ioremap'ed and then accessed... Thanks to Valentine Barshak for providing an initial patch and explanations. Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 6ea0a4679d6a11c66cfeb26d15244fb6f9b52d14 Author: Anthony Liguori Date: Mon Apr 7 15:33:16 2008 -0500 virtio_net: remove overzealous printk The 'disable_cb' is really just a hint and as such, it's possible for more work to get queued up while callbacks are disabled. Under stress with an SMP guest, this printk triggers very frequently. There is no race here, this is how things are designed to work so let's just remove the printk. Signed-off-by: Anthony Liguori Acked-by: Rusty Russell Signed-off-by: Linus Torvalds commit 099c736a470c8080a166e7a089f1e48e15f9947c Author: Linus Torvalds Date: Mon Apr 7 13:20:08 2008 -0700 Revert "smc91x: fix build breakage from the SMC_GET_MAC_ADDR API upgrade" This reverts commit 9e6db60825ef7e7999abc610ce256ba768e58162, which was merged without the API it needed, causing build breakage. Reported-by: Bryan Wu Acked-by: Jeff Garzik Signed-off-by: Linus Torvalds commit 950b0d28378c4ee63a30dad732a8319c8a41c95d Merge: 2557a93... 871de93... Author: Linus Torvalds Date: Mon Apr 7 13:14:37 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: x86: fix 64-bit asm NOPS for CONFIG_GENERIC_CPU x86: fix call to set_cyc2ns_scale() from time_cpufreq_notifier() revert "x86: tsc prevent time going backwards" commit 2557a933b795c1988c721ebb871cd735128bb9cb Author: Rusty Russell Date: Mon Apr 7 14:30:28 2008 +1000 virtio: remove overzealous BUG_ON. The 'disable_cb' callback is designed as an optimization to tell the host we don't need callbacks now. As it is not reliable, the debug check is overzealous: it can happen on two CPUs at the same time. Document this. Even if it were reliable, the virtio_net driver doesn't disable callbacks on transmit so the START_USE/END_USE debugging reentrance protection can be easily tripped even on UP. Thanks to Balaji Rao for the bug report and testing. Signed-off-by: Rusty Russell CC: Balaji Rao Signed-off-by: Linus Torvalds commit 871de939030c903fd5ed50a7c4c88e02998e1cbc Author: Suresh Siddha Date: Mon Apr 7 11:56:34 2008 -0700 x86: fix 64-bit asm NOPS for CONFIG_GENERIC_CPU ASM_NOP's for 64-bit kernel with CONFIG_GENERIC_CPU is broken with the recent x86 nops merge. They were using GENERIC_NOPS which will truncate the upper 32bits of %rsi, because of the missing 64bit rex prefix. For now, fall back ASM NOPS for generic cpu to K8 NOPS, similar to the code before the wrong x86 nop merge. This should resolve the crash seen by Ingo on a test-system: BUG: unable to handle kernel paging request at 00000000d80d8ee8 IP: [] save_i387_ia32+0x61/0xd8 PGD b8e0067 PUD 51490067 PMD 0 Oops: 0000 [1] SMP CPU 2 Modules linked in: Pid: 3871, comm: distcc Not tainted 2.6.25-rc7-sched-devel.git-x86-latest.git #359 RIP: 0010:[] [] save_i387_ia32+0x61/0xd8 RSP: 0000:ffff81003abd3cb8 EFLAGS: 00010246 RAX: ffff810082e93400 RBX: 00000000ffc37f84 RCX: ffff8100d80d8ee0 RDX: 0000000000000000 RSI: 00000000d80d8ee0 RDI: ffff810082e93400 RBP: 00000000ffc37fdc R08: 00000000ffc37f88 R09: 0000000000000008 R10: ffff81003abd2000 R11: 0000000000000000 R12: ffff810082e93400 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff81011fb12dc0(0063) knlGS:00000000f7f1a6c0 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 00000000d80d8ee8 CR3: 0000000076922000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process distcc (pid: 3871, threadinfo ffff81003abd2000, task ffff8100d80d8ee0) Stack: ffff8100bb670380 ffffffff8026de50 0000000000000118 0000000000000002 0000000000000002 ffff81003abd3e68 ffff81003abd3ed8 ffff81003abd3de8 ffff81003abd3d18 ffffffff80229785 ffff8100d80d8ee0 ffff810001041280 Call Trace: [] ? __generic_file_aio_write_nolock+0x343/0x377 [] ? update_curr+0x54/0x64 [] ? ia32_setup_sigcontext+0x125/0x1d2 [] ? ia32_setup_frame+0x73/0x1a5 [] ? do_notify_resume+0x1aa/0x7db [] ? getnstimeofday+0x31/0x85 [] ? ktime_get_ts+0x17/0x48 [] ? ktime_get+0xc/0x41 [] ? hrtimer_nanosleep+0x75/0xd5 [] ? hrtimer_wakeup+0x0/0x21 [] ? int_signal+0x12/0x17 [] ? dummy_file_free_security+0x0/0x1 Code: a6 08 05 00 00 f6 40 14 01 74 34 4c 89 e7 48 0f ae 07 48 8b 86 08 05 00 00 80 78 02 00 79 02 db e2 90 8d b4 26 00 00 00 00 89 f6 <48> 8b 46 08 83 60 14 fe 0f 20 c0 48 83 c8 08 0f 22 c0 eb 07 c6 Signed-off-by: Suresh Siddha Signed-off-by: Ingo Molnar commit 4f41c94d5c24e3b3453e9df03c0a80ca1acf00d2 Author: Karsten Wiese Date: Mon Apr 7 12:14:45 2008 +0200 x86: fix call to set_cyc2ns_scale() from time_cpufreq_notifier() In time_cpufreq_notifier() the cpu id to act upon is held in freq->cpu. Use it instead of smp_processor_id() in the call to set_cyc2ns_scale(). This makes the preempt_*able() unnecessary and lets set_cyc2ns_scale() update the intended cpu's cyc2ns. Related mail/thread: http://lkml.org/lkml/2007/12/7/130 Signed-off-by: Karsten Wiese Signed-off-by: Ingo Molnar commit 5b13d863573e746739ccfc24ac1a9473cfee8df1 Author: Ingo Molnar Date: Mon Apr 7 20:58:08 2008 +0200 revert "x86: tsc prevent time going backwards" revert: | commit 47001d603375f857a7fab0e9c095d964a1ea0039 | Author: Thomas Gleixner | Date: Tue Apr 1 19:45:18 2008 +0200 | | x86: tsc prevent time going backwards it has been identified to cause suspend regression - and the commit fixes a longstanding bug that existed before 2.6.25 was opened - so it can wait some more until the effects are better understood. Signed-off-by: Ingo Molnar commit 4cac04dd63fa3b202ee313ed1afbbd135ab887ee Merge: e1c287b... bfe87db... Author: Linus Torvalds Date: Mon Apr 7 08:36:57 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: fix endian lossage in forcedeth net/tokenring/olympic.c section fixes net: marvell.c fix sparse shadowed variable warning [VLAN]: Fix egress priority mappings leak. [TG3]: Add PHY workaround for 5784 [NET]: srandom32 fixes for networking v2 [IPV6]: Fix refcounting for anycast dst entries. [IPV6]: inet6_dev on loopback should be kept until namespace stop. [IPV6]: Event type in addrconf_ifdown is mis-used. [ICMP]: Ensure that ICMP relookup maintains status quo commit e1c287b992d30dab86f1b1bfe1780d9d3a652b34 Merge: 4a72ef9... ad4f957... Author: Linus Torvalds Date: Mon Apr 7 08:36:37 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: Fix user accesses in regset code. [SPARC64]: Fix FPU saving in 64-bit signal handling. commit 4a72ef9f7ad36ea0fb3b42f31b2b0c5b9871969a Merge: 28b8383... 92c9d07... Author: Linus Torvalds Date: Sun Apr 6 16:12:24 2008 -0700 Merge branch 'pci_id_updates' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb * 'pci_id_updates' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: V4L/DVB (7497): pvrusb2: add new usb pid for 73xxx models V4L/DVB (7496): pvrusb2: add new usb pid for 75xxx models commit 28b8383d5d4d9b636c3734c993563bafdc2ab3c3 Merge: c28cf0f... a80c5aa... Author: Linus Torvalds Date: Sun Apr 6 16:11:57 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb * git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: V4L/DVB (7499): v4l/dvb Kconfig: Fix bugzilla #10067 V4L/DVB (7495): s5h1409: fix blown-away bit in function s5h1409_set_gpio V4L/DVB (7460): bttv: Bt832 - fix possible NULL pointer deref commit c28cf0fdcd38e912fa72258d78cb213b716247d6 Merge: 64ba4f2... cc1020f... Author: Linus Torvalds Date: Sun Apr 6 16:11:22 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: [WATCHDOG] it8712f_wdt Zero MSB timeout byte when disabling watchdog commit 64ba4f230d30b089bc89db2e59d02c1efa5ac769 Author: Rusty Russell Date: Sun Apr 6 17:23:38 2008 +1000 Fix booting pentium+ with dodgy TSC We handle a broken tsc these days, so no need to panic. We clear the TSC bit when tsc_init decides it's unreliable (eg. under lguest w/ bad host TSC), leading to bogus panic. Signed-off-by: Rusty Russell Acked-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 3bf48468fe84468a148e4f19465e0a725c0f977b Author: Jesse Barnes Date: Sun Apr 6 11:55:04 2008 -0700 fix IS_I9XX macro in i915 DRM driver Now that we're mapping registers in the DRM driver at load time, the driver actually checks the PCI ID, so we need to make sure the macros have all the right bits (and longer term use the DRM headers as the sole copy of the PCI & register definitions). This patch adds 945GME support to the DRM headers, fixing a regression reported in http://bugzilla.kernel.org/show_bug.cgi?id=10395. Tested-by: Alexander Oltu Signed-off-by: Jesse Barnes Signed-off-by: Linus Torvalds commit 164fc5dcd6a1026fc713f5c63fad899aa484888c Author: Hugh Dickins Date: Sun Apr 6 23:56:57 2008 +0100 scsi: fix sense_slab/bio swapping livelock Since 2.6.25-rc7, I've been seeing an occasional livelock on one x86_64 machine, copying kernel trees to tmpfs, paging out to swap. Signature: 6000 pages under writeback but never getting written; most tasks of interest trying to reclaim, but each get_swap_bio waiting for a bio in mempool_alloc's io_schedule_timeout(5*HZ); every five seconds an atomic page allocation failure report from kblockd failing to allocate a sense_buffer in __scsi_get_command. __scsi_get_command has a (one item) free_list to protect against this, but rc1's [SCSI] use dynamically allocated sense buffer de25deb18016f66dcdede165d07654559bb332bc upset that slightly. When it fails to allocate from the separate sense_slab, instead of giving up, it must fall back to the command free_list, which is sure to have a sense_buffer attached. Either my earlier -rc testing missed this, or there's some recent contributory factor. One very significant factor is SLUB, which merges slab caches when it can, and on 64-bit happens to merge both bio cache and sense_slab cache into kmalloc's 128-byte cache: so that under this swapping load, bios above are liable to gobble up all the slots needed for scsi_cmnd sense_buffers below. That's disturbing behaviour, and I tried a few things to fix it. Adding a no-op constructor to the sense_slab inhibits SLUB from merging it, and stops all the allocation failures I was seeing; but it's rather a hack, and perhaps in different configurations we have other caches on the swapout path which are ill-merged. Another alternative is to revert the separate sense_slab, using cache-line-aligned sense_buffer allocated beyond scsi_cmnd from the one kmem_cache; but that might waste more memory, and is only a way of diverting around the known problem. While I don't like seeing the allocation failures, and hate the idea of all those bios piled up above a scsi host working one by one, it does seem to emerge fairly soon with the livelock fix. So lacking better ideas, stick with that one clear fix for now. Signed-off-by: Hugh Dickins Cc: James Bottomley Cc: Andrew Morton Cc: FUJITA Tomonori Cc: Jens Axboe Cc: Christoph Lameter Cc: Pekka Enberg Cc: Peter Zijlstra Cc: Rafael J. Wysocki Signed-off-by: Linus Torvalds commit 92c9d07507f0a90b64172bfede7e6fa845e8e66b Author: Michael Krufky Date: Sat Mar 15 23:59:29 2008 -0300 V4L/DVB (7497): pvrusb2: add new usb pid for 73xxx models Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit dd6e9467e0a7ddf02788f30adfe1cf2851c25fb8 Author: Michael Krufky Date: Sat Mar 8 06:07:38 2008 -0300 V4L/DVB (7496): pvrusb2: add new usb pid for 75xxx models Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit a80c5aa6da485da63def31442a19cdd6ff495ce6 Author: Mauro Carvalho Chehab Date: Thu Apr 3 20:08:04 2008 -0300 V4L/DVB (7499): v4l/dvb Kconfig: Fix bugzilla #10067 tda8290 breaks if tuner is selected, but CONFIG_DVB=n. Signed-off-by: Mauro Carvalho Chehab commit 8e08af3c30b4e5f59adff0baa33fd346227b45e2 Author: Michael Krufky Date: Wed Apr 2 22:14:41 2008 -0300 V4L/DVB (7495): s5h1409: fix blown-away bit in function s5h1409_set_gpio Preserve all other bits when setting gpio. Signed-off-by: Michael Krufky Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 4a8f3a5727c589a59bcaaca43dc1025b347b7a75 Author: Cyrill Gorcunov Date: Tue Apr 1 16:48:23 2008 -0300 V4L/DVB (7460): bttv: Bt832 - fix possible NULL pointer deref This patch does fix potential NULL pointer dereference Signed-off-by: Cyrill Gorcunov Signed-off-by: Mauro Carvalho Chehab commit cc1020f15ad0f843c0111bf4b77bdfaabca79571 Author: Andrew Paprocki Date: Wed Apr 2 02:43:19 2008 -0400 [WATCHDOG] it8712f_wdt Zero MSB timeout byte when disabling watchdog I noticed this while testing the latest code. I'm not sure if it is required, but the normal (or LSB) timeout value is set to zero, so the MSB should be as well to stay consistent. If the chip revision is >= 8, set MSB of the 16-bit timeout value to zero when disabling the watchdog in it8712f_wdt_disable(). Signed-off-by: Andrew Paprocki Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit 797de7bdb253624c16144f40b72ec65d63cdcca2 Author: Linus Torvalds Date: Sat Apr 5 12:14:13 2008 -0700 Revert "ACPI: Ignore _BQC object when registering backlight device" This reverts commit 7c0ea45be4f114d85ee35caeead8e1660699c46f which caused a regression with the backlight being set to off when a laptop doesn't have a _BQC entry to query the actual backlight value. The code blindly then falls back on a value of 0. See http://bugzilla.kernel.org/show_bug.cgi?id=10387 http://lkml.org/lkml/2008/4/2/366 for details. Bisected-and-reported-by: Andrey Borzenkov Cc: Zhao Yakui Cc: Zhang Rui Cc: Len Brown Signed-off-by: Linus Torvalds commit 6fdf5e67fe8d3c83500dad9acae985132c2459a3 Merge: abd24df... e64a3cf... Author: Linus Torvalds Date: Fri Apr 4 15:09:44 2008 -0700 Merge branch 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/ralf/upstream-linus * 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/ralf/upstream-linus: [MIPS] Make KGDB compile on UP [MIPS] Pb1200: Fix header breakage commit bfe87dbc7b4da5b05a1a78480e996787a500cc6f Merge: 2355632... 30ecce9... Author: David S. Miller Date: Fri Apr 4 15:00:52 2008 -0700 Merge branch 'upstream-davem' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 commit abd24df828f1a72971db29d1b74fefae104ea9e2 Author: Carol Hebert Date: Fri Apr 4 14:30:03 2008 -0700 ipmi: change device node ordering to reflect probe order In 2.6.14 a patch was merged which switching the order of the ipmi device naming from in-order-of-discovery over to reverse-order-of-discovery. So on systems with multiple BMC interfaces, the ipmi device names are being created in reverse order relative to how they are discovered on the system (e.g. on an IBM x3950 multinode server with N nodes, the device name for the BMC in the first node is /dev/ipmiN-1 and the device name for the BMC in the last node is /dev/ipmi0, etc.). The problem is caused by the list handling routines chosen in dmi_scan.c. Using list_add() causes the multiple ipmi devices to be added to the device list using a stack-paradigm and so the ipmi driver subsequently pulls them off during initialization in LIFO order. This patch changes the dmi_save_ipmi_device() list handling paradigm to a queue, thereby allowing the ipmi driver to build the ipmi device names in the order in which they are found on the system. Signed-off-by: Carol Hebert Signed-off-by: Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb6d080c6f75dfd7e23d5a3575334785aa8738eb Author: Alexey Korolev Date: Fri Apr 4 14:30:01 2008 -0700 mtd: fix broken state in CFI driver caused by FL_SHUTDOWN THe CFI driver in 2.6.24 kernel is broken. Not so intensive read/write operations cause incomplete writes which lead to kernel panics in JFFS2. We investigated the issue - it is caused by bug in FL_SHUTDOWN parsing code. Sometimes chip returns -EIO as if it is in FL_SHUTDOWN state when it should wait in FL_PONT (error in order of conditions). The following patch fixes the bug in state parsing code of CFI. Also I've added comments to notify developers if they want to add new case in future. Signed-off-by: Alexey Korolev Reviewed-by: Joern Engel Cc: David Woodhouse Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4077960e2a38ec59096ff993cd080056e17f3707 Author: Balbir Singh Date: Fri Apr 4 14:29:59 2008 -0700 memory controller: make memory resource control aware of boot options A boot option for the memory controller was discussed on lkml. It is a good idea to add it, since it saves memory for people who want to turn off the memory controller. By default the option is on for the following two reasons: 1. It provides compatibility with the current scheme where the memory controller turns on if the config option is enabled 2. It allows for wider testing of the memory controller, once the config option is enabled We still allow the create, destroy callbacks to succeed, since they are not aware of boot options. We do not populate the directory will memory resource controller specific files. Signed-off-by: Balbir Singh Cc: Paul Menage Cc: Balbir Singh Cc: Pavel Emelyanov Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Sudhir Kumar Cc: YAMAMOTO Takashi Cc: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8bab8dded67d026c39367bbd5e27d2f6c556c38e Author: Paul Menage Date: Fri Apr 4 14:29:57 2008 -0700 cgroups: add cgroup support for enabling controllers at boot time The effects of cgroup_disable=foo are: - foo isn't auto-mounted if you mount all cgroups in a single hierarchy - foo isn't visible as an individually mountable subsystem As a result there will only ever be one call to foo->create(), at init time; all processes will stay in this group, and the group will never be mounted on a visible hierarchy. Any additional effects (e.g. not allocating metadata) are up to the foo subsystem. This doesn't handle early_init subsystems (their "disabled" bit isn't set be, but it could easily be extended to do so if any of the early_init systems wanted it - I think it would just involve some nastier parameter processing since it would occur before the command-line argument parser had been run. Hugh said: Ballpark figures, I'm trying to get this question out rather than processing the exact numbers: CONFIG_CGROUP_MEM_RES_CTLR adds 15% overhead to the affected paths, booting with cgroup_disable=memory cuts that back to 1% overhead (due to slightly bigger struct page). I'm no expert on distros, they may have no interest whatever in CONFIG_CGROUP_MEM_RES_CTLR=y; and the rest of us can easily build with or without it, or apply the cgroup_disable=memory patches. Unix bench's execl test result on x86_64 was == just after boot without mounting any cgroup fs.== mem_cgorup=off : Execl Throughput 43.0 3150.1 732.6 mem_cgroup=on : Execl Throughput 43.0 2932.6 682.0 == [lizf@cn.fujitsu.com: fix boot option parsing] Signed-off-by: Balbir Singh Cc: Paul Menage Cc: Balbir Singh Cc: Pavel Emelyanov Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Sudhir Kumar Cc: YAMAMOTO Takashi Cc: David Rientjes Signed-off-by: Li Zefan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e64a3cfcd929d093a2f076bcace9afa7ba5a2e32 Author: Sergei Shtylyov Date: Thu Mar 20 20:59:34 2008 +0300 [MIPS] Make KGDB compile on UP Building UP kernel with KGDB enabled produces the following errors and warning (fatal due to -Werror in arch/mips/kernel/Makefile): In file included from arch/mips/kernel/gdb-stub.c:142: include/asm/smp.h:25:1: "raw_smp_processor_id" redefined In file included from include/linux/sched.h:69, from arch/mips/kernel/gdb-stub.c:126: include/linux/smp.h:88:1: this is the location of the previous definition In file included from arch/mips/kernel/gdb-stub.c:142: include/asm/smp.h:62: error: redefinition of 'smp_send_reschedule' include/linux/smp.h:102: error: previous definition of 'smp_send_reschedule' was here include/asm/smp.h: In function `smp_send_reschedule': include/asm/smp.h:65: error: dereferencing pointer to incomplete type arch/mips/kernel/gdb-stub.c: At top level: arch/mips/kernel/gdb-stub.c:660: warning: 'kgdb_wait' defined but not used Fix the errors by not directly including (which is already included by ) and the warning by enclosing kgdb_wait() in #ifdef CONFIG_SMP. Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit 865ab8753837b73fe1e800fc88462c5914eec549 Author: Sergei Shtylyov Date: Wed Apr 2 23:53:19 2008 +0400 [MIPS] Pb1200: Fix header breakage Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit 3a143125ddc4e2e0ca1e67fb4bedd45c36e59cc7 Merge: a1aa758... 5761d64... Author: Linus Torvalds Date: Fri Apr 4 14:42:58 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: x86: revert assign IRQs to hpet timer x86: tsc prevent time going backwards xen: Clear PG_pinned in release_{pt,pd}() xen: Do not pin/unpin PMD pages xen: refactor xen_{alloc,release}_{pt,pd}() x86, agpgart: scary messages are fortunately obsolete xen: fix grant table bug x86: fix breakage of vSMP irq operations x86: print message if nmi_watchdog=2 cannot be enabled x86: fix nmi_watchdog=2 on Pentium-D CPUs commit a1aa758d0019f2ac4ea558b3987a07c12fa19f61 Author: Geert Uytterhoeven Date: Fri Apr 4 14:58:42 2008 +0200 m68k: update defconfigs for 2.6.25 Long overdue update of the m68k defconfigs Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit ef85ecbf1179157e765f42c7545bc32b56ce3cb4 Author: Adrian Bunk Date: Fri Apr 4 14:57:38 2008 +0200 m68k: use KBUILD_DEFCONFIG The default defconfig should be one from arch/m68k/configs/ arch/m68k/defconfig was not exactly identical to amiga_defconfig but also considering how long they have been without any update that doesn't seem to have been on purpose. Signed-off-by: Adrian Bunk Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 7a5ac8def9e0c77803c302b63c3f29e31a610415 Merge: 1be62dc... 8243e63... Author: Linus Torvalds Date: Fri Apr 4 14:40:04 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: pata_ali: disable ATAPI DMA libata: ATA_12/16 doesn't fall into ATAPI_MISC libata: uninline atapi_cmd_type() libata: fix IDENTIFY order in ata_bus_probe() commit 1be62dc190ebaca331038962c873e7967de6cc4b Author: Linus Torvalds Date: Fri Apr 4 14:38:17 2008 -0700 Be more careful about marking buffers dirty Mikulas Patocka noted that the optimization where we check if a buffer was already dirty (and we avoid re-dirtying it) was not really SMP-safe. Since the read of the old status was not synchronized with anything, an aggressive CPU re-ordering of memory accesses might have moved that read up to before the data was even written to the buffer, and another CPU that cleaned it again, causing the newly dirty state to never actually hit the disk. Admittedly this would probably never trigger in practice, but it's still wrong. Mikulas sent a patch that fixed the problem, but I dislike the subtlety of the whole optimization, so this is an alternate fix that is more explicit about the particular SMP ordering for the optimization, and separates out the speculative reads of the buffer state into its own conditional (and makes the memory barrier only happen if we are likely to actually hit the optimized case in the first place). I considered removing the optimization entirely, but Andrew argued for it's continued existence. I'm a push-over. Cc: Mikulas Patocka Cc: Andrew Morton Signed-off-by: Linus Torvalds commit 4ed919014eb2b591eb8fdd4dd00226a65faddef4 Author: Linus Torvalds Date: Fri Apr 4 14:30:31 2008 -0700 parport_pc: make sure to release IO ports after probing for IT87XX Commit f63fd7e299ee13da071ecfce2b90b58c5e1562b1 ("parport_pc: detection for SuperIO IT87XX POST") only released the IO port region on success, not when the probe for the IT87XX chip failed. That caused not only a reserved region to leak, but also caused an oops when the driver module was unloaded and somebody tried to cat /proc/ioports - because the string that was assigned to the IO port region was a static string in the module virtual address area. Reported-by: Lubos Lunak Cc: Jan Kara Cc: Petr Cvek Acked-by: Andrew Morton Signed-off-by: Linus Torvalds commit 30ecce908b944079181938e61ddbc00c8b23798c Author: Al Viro Date: Wed Mar 26 05:57:12 2008 +0000 fix endian lossage in forcedeth a) if you initialize something with le32_to_cpu(...), then |= it with host-endian and feed to cpu_to_le32(), it's most definitely *not* __le32. As sparse would've told you... b) the whole sequence is |= cpu_to_le32(host-endian constant) Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit e28e3a614cedb11637f6cc7a30f0812963df62fe Author: Adrian Bunk Date: Mon Mar 31 01:40:04 2008 +0300 net/tokenring/olympic.c section fixes My previous section fix only turned one section problem into another section problem. This patch fixes it for real. Signed-off-by: Adrian Bunk Signed-off-by: Jeff Garzik commit 5da4e37e59663bd1e9eae1d717e2ceb178a485b8 Author: Harvey Harrison Date: Wed Apr 2 17:33:35 2008 -0700 net: marvell.c fix sparse shadowed variable warning The other if blocks don't redeclare temp, remove the redeclaration in the final if() block. drivers/net/phy/marvell.c:214:7: warning: symbol 'temp' shadows an earlier one drivers/net/phy/marvell.c:160:6: originally declared here Signed-off-by: Harvey Harrison Signed-off-by: Jeff Garzik commit 23556323b22fef35bdc36465b7e7439ba3748c9f Author: Pavel Emelyanov Date: Fri Apr 4 12:45:12 2008 -0700 [VLAN]: Fix egress priority mappings leak. These entries are allocated in vlan_dev_set_egress_priority, but are never released and leaks on vlan device removal. Drop these in vlan's ->uninit callback - after the device is brought down and everyone is notified about it is going to be unregistered. Found during testing vlan netnsization patchset. Signed-off-by: Pavel Emelyanov Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit 5761d64b277c287a7520b868c32d656ef03374b4 Author: Thomas Gleixner Date: Fri Apr 4 16:26:10 2008 +0200 x86: revert assign IRQs to hpet timer The commits: commit 37a47db8d7f0f38dac5acf5a13abbc8f401707fa Author: Balaji Rao Date: Wed Jan 30 13:30:03 2008 +0100 x86: assign IRQs to HPET timers, fix and commit e3f37a54f690d3e64995ea7ecea08c5ab3070faf Author: Balaji Rao Date: Wed Jan 30 13:30:03 2008 +0100 x86: assign IRQs to HPET timers have been identified to cause a regression on some platforms due to the assignement of legacy IRQs which makes the legacy devices connected to those IRQs disfunctional. Revert them. This fixes http://bugzilla.kernel.org/show_bug.cgi?id=10382 Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 47001d603375f857a7fab0e9c095d964a1ea0039 Author: Thomas Gleixner Date: Tue Apr 1 19:45:18 2008 +0200 x86: tsc prevent time going backwards We already catch most of the TSC problems by sanity checks, but there is a subtle bug which has been in the code for ever. This can cause time jumps in the range of hours. This was reported in: http://lkml.org/lkml/2007/8/23/96 and http://lkml.org/lkml/2008/3/31/23 I was able to reproduce the problem with a gettimeofday loop test on a dual core and a quad core machine which both have sychronized TSCs. The TSCs seems not to be perfectly in sync though, but the kernel is not able to detect the slight delta in the sync check. Still there exists an extremly small window where this delta can be observed with a real big time jump. So far I was only able to reproduce this with the vsyscall gettimeofday implementation, but in theory this might be observable with the syscall based version as well. CPU 0 updates the clock source variables under xtime/vyscall lock and CPU1, where the TSC is slighty behind CPU0, is reading the time right after the seqlock was unlocked. The clocksource reference data was updated with the TSC from CPU0 and the value which is read from TSC on CPU1 is less than the reference data. This results in a huge delta value due to the unsigned subtraction of the TSC value and the reference value. This algorithm can not be changed due to the support of wrapping clock sources like pm timer. The huge delta is converted to nanoseconds and added to xtime, which is then observable by the caller. The next gettimeofday call on CPU1 will show the correct time again as now the TSC has advanced above the reference value. To prevent this TSC specific wreckage we need to compare the TSC value against the reference value and return the latter when it is larger than the actual TSC value. I pondered to mark the TSC unstable when the readout is smaller than the reference value, but this would render an otherwise good and fast clocksource unusable without a real good reason. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit c946c7de49a9ba50bc205d6359b41bbc8f01174c Author: Mark McLoughlin Date: Wed Apr 2 15:36:38 2008 +0100 xen: Clear PG_pinned in release_{pt,pd}() Signed-off-by: Mark McLoughlin Cc: xen-devel@lists.xensource.com Cc: Mark McLoughlin Cc: Jeremy Fitzhardinge Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit a684d69d15a8fafede7c5c0daac8c646bbee805c Author: Mark McLoughlin Date: Wed Apr 2 15:36:37 2008 +0100 xen: Do not pin/unpin PMD pages i.e. with this simple test case: int fd = open("/dev/zero", O_RDONLY); munmap(mmap((void *)0x40000000, 0x1000_LEN, PROT_READ, MAP_PRIVATE, fd, 0), 0x1000); close(fd); we currently get: kernel BUG at arch/x86/xen/enlighten.c:678! ... EIP is at xen_release_pt+0x79/0xa9 ... Call Trace: [] ? __pmd_free_tlb+0x1a/0x75 [] ? free_pgd_range+0x1d2/0x2b5 [] ? free_pgtables+0x7e/0x93 [] ? unmap_region+0xb9/0xf5 [] ? do_munmap+0x193/0x1f5 [] ? sys_munmap+0x30/0x3f [] ? syscall_call+0x7/0xb ======================= and xen complains: (XEN) mm.c:2241:d4 Mfn 1cc37 not pinned Further details at: https://bugzilla.redhat.com/436453 Signed-off-by: Mark McLoughlin Cc: xen-devel@lists.xensource.com Cc: Mark McLoughlin Cc: Jeremy Fitzhardinge Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit f64337062c09c2c318fbcbf44ed1d739e8bc72ab Author: Mark McLoughlin Date: Wed Apr 2 15:36:36 2008 +0100 xen: refactor xen_{alloc,release}_{pt,pd}() Signed-off-by: Mark McLoughlin Cc: xen-devel@lists.xensource.com Cc: Mark McLoughlin Cc: Jeremy Fitzhardinge Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 8f59610de2fb244b5bc1a3feafd328a8d4d511d6 Author: Pavel Machek Date: Tue Apr 1 14:24:03 2008 +0200 x86, agpgart: scary messages are fortunately obsolete Fix obsolete printks in aperture-64. We used not to handle missing agpgart, but we handle it okay now. Signed-off-by: Pavel Machek Signed-off-by: Ingo Molnar commit bbc60c18ed17df75270da504bbd8f7bc4a52d43d Author: Michael Abd-El-Malek Date: Fri Apr 4 02:33:48 2008 -0700 xen: fix grant table bug fix memory corruption and crash due to mis-sized grant table. A PV OS has two grant table data structures: the grant table itself and a free list. The free list is composed of an array of pages, which grow dynamically as the guest OS requires more grants. While the grant table contains 8-byte entries, the free list contains 4-byte entries. So we have half as many pages in the free list than in the grant table. There was a bug in the free list allocation code. The free list was indexed as if it was the same size as the grant table. But it's only half as large. So memory got corrupted, and I was seeing crashes in the slab allocator later on. Taken from: http://xenbits.xensource.com/linux-2.6.18-xen.hg?rev/4018c0da3360 Signed-off-by: Michael Abd-El-Malek Signed-off-by: Mark McLoughlin Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Ingo Molnar commit bae1d2507e44417455eda76d4435352fee14cf51 Author: Ravikiran G Thirumalai Date: Fri Apr 4 03:06:29 2008 -0700 x86: fix breakage of vSMP irq operations 25-rc* stopped working with CONFIG_X86_VSMP on vSMP machines. Looks like the vsmp irq ops got accidentally removed during merge of x86_64 pvops in 2.6.25. -- commit 6abcd98ffafbff81f0bfd7ee1d129e634af13245 removed vsmp irq ops. Tested with both CONFIG_X86_VSMP and without CONFIG_X86_VSMP, on vSMP and non vSMP x86_64 machines. Please apply. Signed-off-by: Ravikiran Thirumalai Signed-off-by: Ingo Molnar commit 9c9b81f77330ddc003a2de2f35fa6a20410c1a62 Author: Ingo Molnar Date: Thu Mar 27 23:39:42 2008 +0100 x86: print message if nmi_watchdog=2 cannot be enabled right now if there's no CPU support for nmi_watchdog=2 we'll just refuse it silently. print a useful warning. Signed-off-by: Ingo Molnar commit 4f14bdef41e599e218d71e3d0abf339d65e9b480 Author: Ingo Molnar Date: Thu Mar 27 23:37:58 2008 +0100 x86: fix nmi_watchdog=2 on Pentium-D CPUs implement nmi_watchdog=2 on this class of CPUs: cpu family : 15 model : 6 model name : Intel(R) Pentium(R) D CPU 3.00GHz the watchdog's ->setup() method is safe anyway, so if the CPU cannot support it we'll bail out safely. Signed-off-by: Ingo Molnar commit 8243e636c060fe7c10c9cf3bf53fdd2d48901525 Author: Tejun Heo Date: Thu Apr 3 14:40:55 2008 +0900 pata_ali: disable ATAPI DMA ATAPI DMA just doesn't work reliably on pata_ali. The IDE driver can do it but for some mysterious reason, pata_ali can't. This patch disables it by default and makes the driver whine during initialization. "pata_ali.atapi_dma" parameter is added so that user can bypass the workaround. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit e52dcc4899cf1b7601379c31542bd91cd2997a64 Author: Tejun Heo Date: Wed Apr 2 17:35:19 2008 +0900 libata: ATA_12/16 doesn't fall into ATAPI_MISC SAT passthrus don't really fit into ATAPI_MISC class. SAT passthru commands always transfer multiple of 512 bytes and variable length response is not allowed. This patch creates a separate category - ATAPI_PASS_THRU - for these. This fixes HSM violation on "hdparm -I". Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 436d34b36202ef724778ded1e9cb10f8c37b32bc Author: Tejun Heo Date: Wed Apr 2 17:28:46 2008 +0900 libata: uninline atapi_cmd_type() Uninline atapi_cmd_type(). It doesn't really have to be inline and more case will be added which need to access unexported libata variable. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit a4ba7fe2a6c2b61419b290035bff398ab2591c54 Author: Bartlomiej Zolnierkiewicz Date: Wed Apr 2 10:35:15 2008 +0900 libata: fix IDENTIFY order in ata_bus_probe() Commit f58229f8060055b08b34008ea08f31de1e2f003c accidentally made ata_bus_probe() not use reverse order probing. Fix it. There currently isn't any PATA driver which uses obsolete ata_bus_probe() path, so this patch is mainly for correctness. Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit b2a5c19ca0315723cecb9489ff8b67c4f17367b4 Author: Matt Carlson Date: Thu Apr 3 21:44:44 2008 -0700 [TG3]: Add PHY workaround for 5784 The 5784 B step and newer chips require the PHY DSPs to be fine-tuned based on one-time programmable values stored in the chip. This is essential to achieve optimal PHY operations especially when using long cables. We also need to properly handle the 10Mbit RX bit in the CPMU_CTRL register during PHY reset. Update version to 3.89. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit ad4f95764040077f16ebf24559d5a06f8fb133bc Author: David S. Miller Date: Thu Apr 3 16:55:14 2008 -0700 [SPARC64]: Fix user accesses in regset code. If target is not current we need to use access_process_vm(). Noticed by Roland McGrath. Signed-off-by: David S. Miller commit e315c121a858499d84dc88c499046b9f10bb61ec Merge: 4ba51fd... a02fe13... Author: Linus Torvalds Date: Thu Apr 3 16:28:57 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6: selinux: prevent rentry into the FS commit 4ba51fd75cc3789be83f0d6f878dabbb0cb19bca Author: Roland McGrath Date: Thu Apr 3 14:18:55 2008 -0700 x86 ptrace: avoid unnecessary wrmsr This avoids using wrmsr on MSR_IA32_DEBUGCTLMSR when it's not needed. No wrmsr ever needs to be done if noone has ever used block stepping. Without this change, using ptrace on 2.6.25 on an x86 KVM guest will tickle KVM's missing support for the MSR and crash the guest kernel. Though host KVM is the buggy one, this makes for a regression in the guest behavior from 2.6.24->2.6.25 that we can easily avoid. I also corrected some bad whitespace. Signed-off-by: Roland McGrath Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Linus Torvalds commit 2eccd6f65a0d4844318b1e30755cafd063833908 Merge: cd1d2d2... 0035a1d... Author: Linus Torvalds Date: Thu Apr 3 15:41:32 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: appletouch - add product IDs for the 4th generation MacBooks commit cd1d2d279a4b149301ef0316d12ba4b29424a802 Merge: 9f389f4... 8d81394... Author: Linus Torvalds Date: Thu Apr 3 15:41:10 2008 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] Fix MPC5200 (not B!) device tree so FEC ethernet works [POWERPC] mpc5200: Amalgamated DTS fixes and updates [POWERPC] Fix rtas_flash procfs interface [POWERPC] Fix deadlock with mmu_hash_lock in hash_page_sync [POWERPC] Fix iSeries hard irq enabling regression [POWERPC] Fix CPM2 SCC1 clock initialization. [POWERPC] Fix defconfigs so we dont set both GENRTC and RTCLIB [POWERPC] fsldma: Use compatiable binding as spec [POWERPC] sata_fsl: reduce compatibility to fsl,pq-sata [POWERPC] 83xx: enable usb in 837x rdb and 83xx defconfigs [POWERPC] 83xx: Fix wrong USB phy type in mpc837xrdb dts commit 9f389f4b2016e0aa35cd9cbb5afcd55d58e0c56a Author: Sven Schnelle Date: Thu Apr 3 10:45:30 2008 +0100 rxrpc: remove smp_processor_id() from debug macro Signed-off-by: Sven Schnelle Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit ad16df848d7f84a1b7cea92edd515815ea4ccf0f Author: Sven Schnelle Date: Thu Apr 3 10:44:01 2008 +0100 afs: remove smp_prcessor_id() from debug macro Signed-off-by: Sven Schnelle Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 4cd13504652d28e16bf186c6bb2bbb3725369383 Author: Hugh Dickins Date: Thu Apr 3 23:35:22 2008 +0100 splice: use mapping_gfp_mask The loop block driver is careful to mask __GFP_IO|__GFP_FS out of its mapping_gfp_mask, to avoid hangs under memory pressure. But nowadays it uses splice, usually going through __generic_file_splice_read. That must use mapping_gfp_mask instead of GFP_KERNEL to avoid those hangs. Signed-off-by: Hugh Dickins Cc: Jens Axboe Cc: Andrew Morton Signed-off-by: Linus Torvalds commit a02fe13297af26c13d004b1d44f391c077094ea0 Author: Josef Bacik Date: Fri Apr 4 09:35:05 2008 +1100 selinux: prevent rentry into the FS BUG fix. Keep us from re-entering the fs when we aren't supposed to. See discussion at http://marc.info/?t=120716967100004&r=1&w=2 Signed-off-by: Josef Bacik Acked-by: Stephen Smalley Signed-off-by: James Morris commit 7c3cce978e4f933ac13758ec5d2554fc8d0927d2 Author: David S. Miller Date: Thu Apr 3 15:07:24 2008 -0700 [SPARC64]: Fix FPU saving in 64-bit signal handling. The calculation of the FPU reg save area pointer was wrong. Based upon an OOPS report from Tom Callaway. Signed-off-by: David S. Miller commit 61407f80f72970d52d4339f81c6c3cd03f4ca0f0 Author: Andi Kleen Date: Thu Apr 3 14:07:02 2008 -0700 [NET]: srandom32 fixes for networking v2 - Let it update the state of all CPUs. The network stack goes into pains to feed the current IP addresses in, but it is not very effective if that is only done for some random CPU instead of all. So change it to feed bits into all CPUs. I decided to do that lockless because well somewhat random results are ok. v2: Drop rename so that this patch doesn't depend on x86 maintainers Signed-off-by: Andi Kleen Signed-off-by: David S. Miller commit 84f59370c519449c70dcc813b050f5cbbf0098e7 Author: Denis V. Lunev Date: Thu Apr 3 13:33:00 2008 -0700 [IPV6]: Fix refcounting for anycast dst entries. Anycast DST entries allocated inside ipv6_dev_ac_inc are leaked when network device is stopped without removing IPv6 addresses from it. The bug has been observed in the reality on 2.6.18-rhel5 kernel. In the above case addrconf_ifdown marks all entries as obsolete and ip6_del_rt called from __ipv6_dev_ac_dec returns ENOENT. The referrence is not dropped. The fix is simple. DST entry should not keep referrence when stored in the FIB6 tree. Signed-off-by: Denis V. Lunev Signed-off-by: David S. Miller commit eb867579311a9c1e998d6911af056772c400122a Author: Denis V. Lunev Date: Thu Apr 3 13:31:53 2008 -0700 [IPV6]: inet6_dev on loopback should be kept until namespace stop. In the other case it will be destroyed when last address will be removed from lo inside a namespace. This will break IPv6 in several places. The most obvious one is ip6_dst_ifdown. Signed-off-by: Denis V. Lunev Signed-off-by: David S. Miller commit 439e23857a21c3a953826eed23c818697a97de1a Author: Denis V. Lunev Date: Thu Apr 3 13:30:17 2008 -0700 [IPV6]: Event type in addrconf_ifdown is mis-used. addrconf_ifdown is broken in respect to the usage of how parameter. This function is called with (event != NETDEV_DOWN) and (2) on the IPv6 stop. It the latter case inet6_dev from loopback device should be destroyed. Signed-off-by: Denis V. Lunev Signed-off-by: David S. Miller commit af2681828af5f2b42e12e8b16ba0cf113cf486c8 Author: Herbert Xu Date: Thu Apr 3 12:52:19 2008 -0700 [ICMP]: Ensure that ICMP relookup maintains status quo The ICMP relookup path is only meant to modify behaviour when appropriate IPsec policies are in place and marked as requiring relookups. It is certainly not meant to modify behaviour when IPsec policies don't exist at all. However, due to an oversight on the error paths existing behaviour may in fact change should one of the relookup steps fail. This patch corrects this by redirecting all errors on relookup failures to the previous code path. That is, if the initial xfrm_lookup let the packet pass, we will stand by that decision should the relookup fail due to an error. This should be safe from a security point-of-view because compliant systems must install a default deny policy so the packet would'nt have passed in that case. Many thanks to Julian Anastasov for pointing out this error. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 8d813941b17626a7610342325be63435282bac02 Author: René Bürgel Date: Thu Apr 3 19:58:37 2008 +1100 [POWERPC] Fix MPC5200 (not B!) device tree so FEC ethernet works This gets the FEC ethernet driver working again on the lite5200 platform. The FEC driver is also compatible with the MPC5200, not only with the MPC5200B, so this adds a suitable entry to the driver's match list. Furthermore this adds the settings for the PHY in the dts file for the Lite5200. Note, that this is not exactly the same as in the Lite5200B, because the PHY is located at f0003000:01 for the 5200, and at :00 for the 5200B. This was tested on a Lite5200 and a Lite5200B, both booted a kernel via tftp and mounted the root via nfs successfully. Signed-off-by: René Bürgel Acked-by: Grant Likely Signed-off-by: Paul Mackerras commit 115e1adca3b75a82f24da8b2cc9386eb5b7e2cff Author: Bartlomiej Sieka Date: Thu Apr 3 01:26:02 2008 +1100 [POWERPC] mpc5200: Amalgamated DTS fixes and updates DTS updates that fix booting problems on mpc5200-based boards: - change to ethernet reg property - addition of mdio and phy nodes - removal of pci node (Motion-Pro board) Other DTS updates: - update i2c device tree nodes - add lpb bus node and flash device (without partitions defined) - add rtc i2c nodes Signed-off-by: Marian Balakowicz Acked-by: Grant Likely Signed-off-by: Paul Mackerras commit 7484839850d826e14b8b024bb048dca8489140ae Author: Maxim Shchetynin Date: Wed Apr 2 00:12:20 2008 +1100 [POWERPC] Fix rtas_flash procfs interface Handling of the proc_dir_entry->count was changed in 2.6.24-rc5. After this change, the default value for pde->count is 1 and not 0 as before. Therefore, if we want to check whether our procfs file is already opened (already in use), we have to check if pde->count is greater than 2 rather than 1. Signed-off-by: Maxim Shchetynin Signed-off-by: Jens Osterkamp Signed-off-by: Paul Mackerras commit b991f05f1326fd9e6212851d0f2099875906dd16 Author: Benjamin Herrenschmidt Date: Mon Mar 31 07:49:27 2008 +1100 [POWERPC] Fix deadlock with mmu_hash_lock in hash_page_sync hash_page_sync() takes and releases the low level mmu hash lock in order to sync with other processors disposing of page tables. Because that lock can be needed to service hash misses triggered by interrupt handlers, taking it must be done with interrupts off. However, hash_page_sync() appears to be called with interrupts enabled, thus causing occasional deadlocks. We fix it by making sure hash_page_sync() masks interrupts while holding the lock. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit ff3da2e0938bae36d10d69c22bce0177b067a9e2 Author: Benjamin Herrenschmidt Date: Wed Apr 2 15:58:40 2008 +1100 [POWERPC] Fix iSeries hard irq enabling regression A subtle bug sneaked into iSeries recently. On this platform, we must not normally clear MSR:EE (the hardware external interrupt enable) except for short periods of time. Taking an interrupt while soft-disabled doesn't cause us to clear it for example. The iSeries kernel expects to mostly run with MSR:EE enabled at all times except in a few exception entry/exit code paths. Thus local_irq_enable() doesn't check if it needs to hard-enable as it expects this to be unnecessary on iSeries. However, hard_irq_disable() _does_ cause MSR:EE to be cleared, including on iSeries. A call to it was recently added to the context switch code, thus causing interrupts to become disabled for a long periods of time, causing the iSeries watchdog to kick in under some circumstances and other nasty things. This patch fixes it by making local_irq_enable() properly re-enable MSR:EE on iSeries. It basically removes a return statement here to make iSeries use the same code path as everybody else. That does mean that we might occasionally get spurious decrementer interrupts but I don't think that matters. Another option would have been to make hard_irq_disable() a nop on iSeries but I didn't like it much, in case we have good reasons to hard-disable. Part of the patch is fixes to make sure the hard_enabled PACA field is properly set on iSeries as it used not to be before, since it was mostly unused. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 025306f30948836a743eb68a7cbaf4ab0bfb5f47 Author: Laurent Pinchart Date: Wed Apr 2 16:46:31 2008 +0200 [POWERPC] Fix CPM2 SCC1 clock initialization. A missing break statement in a switch caused cpm2_clk_setup() to initialize SCC2 instead of SCC1. Signed-off-by: Laurent Pinchart Signed-off-by: Kumar Gala commit 9597362d354f8655ece324b01d0c640a0e99c077 Merge: 06f11f3... 9cebcdc... Author: Linus Torvalds Date: Wed Apr 2 15:56:18 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB: ohci: fix 2 timers to fire at jiffies + 1s USB: Allow initialization of broken keyspan serial adapters. USB: fix bug in sg initialization in usbtest USB: serial: fix regression in Visor/Palm OS module for kernels >= 2.6.24 USB: cp2101: Add identifiers for the Telegesys ETRX2USB USB: serial: ti_usb_3410_5052: Correct TUSB3410 endpoint requirements. USB: another ehci_iaa_watchdog fix commit 06f11f37aa84e83b48cdf36037c4414f5a83c13f Author: Andrew Morton Date: Wed Apr 2 13:04:52 2008 -0700 alpha: get_current(): don't add zero to current_thread_info()->task A nasty compile error: In file included from security/keys/internal.h:16, from security/keys/sysctl.c:14: include/linux/key-ui.h: In function 'key_permission': include/linux/key-ui.h:51: error: invalid use of undefined type 'struct task_struct' apparently the compiler has decided that it needs to know sizeof(task_struct) so that it can add zero to a task_struct* (which is rather dumb of it). Getting task_struct in scope in these deeply-nested headers is scary-looking, so let's just remove the "+ 0". Cc: David Howells Cc: Richard Henderson Cc: Ivan Kokshaysky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6496968e6cc3f01faafa63a5a28549a708539ac0 Author: Mathieu Desnoyers Date: Wed Apr 2 13:04:51 2008 -0700 markers: use synchronize_sched() Markers do not mix well with CONFIG_PREEMPT_RCU because it uses preempt_disable/enable() and not rcu_read_lock/unlock for minimal intrusiveness. We would need call_sched and sched_barrier primitives. Currently, the modification (connection and disconnection) of probes from markers requires changes to the data structure done in RCU-style : a new data structure is created, the pointer is changed atomically, a quiescent state is reached and then the old data structure is freed. The quiescent state is reached once all the currently running preempt_disable regions are done running. We use the call_rcu mechanism to execute kfree() after such quiescent state has been reached. However, the new CONFIG_PREEMPT_RCU version of call_rcu and rcu_barrier does not guarantee that all preempt_disable code regions have finished, hence the race. The "proper" way to do this is to use rcu_read_lock/unlock, but we don't want to use it to minimize intrusiveness on the traced system. (we do not want the marker code to call into much of the OS code, because it would quickly restrict what can and cannot be instrumented, such as the scheduler). The temporary fix, until we get call_rcu_sched and rcu_barrier_sched in mainline, is to use synchronize_sched before each call_rcu calls, so we wait for the quiescent state in the system call code path. It will slow down batch marker enable/disable, but will make sure the race is gone. Signed-off-by: Mathieu Desnoyers Acked-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 629c8b4cdb354518308663aff2f719e02f69ffbe Author: Ken'ichi Ohmichi Date: Wed Apr 2 13:04:50 2008 -0700 vmcoreinfo: add the symbol "phys_base" Fix the problem that makedumpfile sometimes fails on x86_64 machine. This patch adds the symbol "phys_base" to a vmcoreinfo data. The vmcoreinfo data has the minimum debugging information only for dump filtering. makedumpfile (dump filtering command) gets it to distinguish unnecessary pages, and makedumpfile creates a small dumpfile. On x86_64 kernel which compiled with CONFIG_PHYSICAL_START=0x0 and CONFIG_RELOCATABLE=y, makedumpfile fails like the following: # makedumpfile -d31 /proc/vmcore dumpfile The kernel version is not supported. The created dumpfile may be incomplete. _exclude_free_page: Can't get next online node. makedumpfile Failed. # The cause is the lack of the symbol "phys_base" in a vmcoreinfo data. If the symbol "phys_base" does not exist, makedumpfile considers an x86_64 kernel as non relocatable. As the result, makedumpfile misunderstands the physical address where the kernel is loaded, and it cannot translate a kernel virtual address to physical address correctly. To fix this problem, this patch adds the symbol "phys_base" to a vmcoreinfo data. Signed-off-by: Ken'ichi Ohmichi Cc: "Eric W. Biederman" Cc: Acked-by: Vivek Goyal Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 865965a66ea616a413012edcd3a10ef39c06d672 Author: Robert P. J. Day Date: Wed Apr 2 13:04:49 2008 -0700 efs: update error msg to not refer to deleted read_inode() Signed-off-by: Robert P. J. Day Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 212e7bb6cda5dd3c4ad97a7aedef705028ced4ad Author: Jiri Slaby Date: Wed Apr 2 13:04:48 2008 -0700 Char: rio, fix sparse warnings Add some locks and unlocks to some code paths. Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d0ae36ea973b42e1c636210433aebef4426c5bf Author: Jiri Slaby Date: Wed Apr 2 13:04:48 2008 -0700 Char: ip2, fix sparse warnings Unlock two grabbed locks on some paths. Signed-off-by: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ffc41cf8dbb1b895a87daf47d0e5bf6dfbfcab4c Author: Mike Snitzer Date: Wed Apr 2 13:04:47 2008 -0700 nbd: prevent sock_xmit from attempting to use a NULL socket NBD does not protect the nbd_device's socket from becoming NULL during receives. This closes a race with the NBD_CLEAR_SOCK ioctl (nbd-client -d) setting the nbd_device's socket to NULL right before NBD calls sock_xmit. Signed-off-by: Mike Snitzer Cc: Paul Clements Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2b2ea692ec01768c77a4f532dcd060316460122 Author: Jim Meyering Date: Wed Apr 2 13:04:46 2008 -0700 doc: fix typo in SubmittingPatches Signed-off-by: Jim Meyering Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e8d49f3a6fec38cc83ae3221c3df0649d021c30c Author: Dmitri Vorobiev Date: Wed Apr 2 13:04:45 2008 -0700 Fix typos in Documentation/unaligned-memory-access.txt This patch deletes a couple of superfluous word occurrences in the document Documentation/unaligned-memory-access.txt. Thanks to Sebastien Dugue for the remark about English usage. Signed-off-by: Dmitri Vorobiev Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c143d43aa3149b83e4b40624a27aa2b18638afec Author: Ivan Kokshaysky Date: Wed Apr 2 13:04:43 2008 -0700 alpha: fix ALSA DMA mmap crash Make dma_alloc_coherent respect gfp flags (__GFP_COMP is one that matters). Signed-off-by: Ivan Kokshaysky Tested-by: Michael Cree Cc: Richard Henderson Cc: Jaroslav Kysela Cc: Takashi Iwai Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39d4c922b596633da86878b1a5cc881785b8e5fa Author: Marc Pignat Date: Wed Apr 2 13:04:42 2008 -0700 atmel_serial: fix uart/console concurrent access Strange chars appear on the serial port when a printk and a printf happens at the same time. This is caused by the pdc sending chars while atmel_console_write (called from printk) is executing Concurent access of uart and console to the same port leads to corrupted data to be transmitted, so disable tx dma (PDC) while writing to the console. Signed-off-by: Marc Pignat Signed-off-by: Haavard Skinnemoen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba0657ff0527bab83387e19eb98b423fcc290674 Author: Michael Trimarchi Date: Wed Apr 2 13:04:41 2008 -0700 atmel_serial: avoid stopping pdc during transmission I found a problem related to losing data during pdc transmission in atmel_serial: connect ttyS1 with ttyS2 using a loopback cable, send 30 byte of packet from one to the other and waiting for 30 byte. On the other side just read and echo the data received. We always call atmel_tx_dma() from the tasklet regardless of what interrupt triggered it. Signed-off-by: michael Acked-by: Haavard Skinnemoen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dd135ebbd2a6b5e07dadb66c4dd033bb69531051 Author: Christian Borntraeger Date: Wed Apr 2 13:04:40 2008 -0700 kvm: provide kvm.h for all architecture: fixes headers_install Currently include/linux/kvm.h is not considered by make headers_install, because Kbuild cannot handle " unifdef-$(CONFIG_FOO) += foo.h. This problem was introduced by commit fb56dbb31c4738a3918db81fd24da732ce3b4ae6 Author: Avi Kivity Date: Sun Dec 2 10:50:06 2007 +0200 KVM: Export include/linux/kvm.h only if $ARCH actually supports KVM Currently, make headers_check barfs due to , which includes, not existing. Rather than add a zillion s, export kvm. only if the arch actually supports it. Signed-off-by: Avi Kivity which makes this an 2.6.25 regression. One way of solving the issue is to enhance Kbuild, but Avi and David conviced me, that changing headers_install is not the way to go. This patch changes the definition for linux/kvm.h to unifdef-y. If  unifdef-y is used for linux/kvm.h "make headers_check" will fail on all architectures without asm/kvm.h. Therefore, this patch also provides asm/kvm.h on all architectures. Signed-off-by: Christian Borntraeger Acked-by: Avi Kivity Cc: Sam Ravnborg Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9cebcdc7fb10d478b22d7125b215cee3b9ea82f2 Author: Richard Kennedy Date: Fri Mar 28 14:50:30 2008 -0700 USB: ohci: fix 2 timers to fire at jiffies + 1s Code inspection discovered in 2 places timers were being incorrectly setup using round_jiffies_relative(HZ). The timer would then fire at time (0 <= T < HZ). Fix them to use round_jiffies(jiffies + HZ); Signed-off-by: Richard Kennedy Cc: Alan Stern Cc: David Brownell Cc: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 822470537d0fc1dee38a2a9c8b8c398bfbb332bb Author: Clark Rawlins Date: Thu Mar 27 09:56:17 2008 -0400 USB: Allow initialization of broken keyspan serial adapters. Fixes the keyspan driver after the addition of additional checking of driver requirements introduced in usb-serial.c commit 063a2da8f01806906f7d7b1a1424b9afddebc443. The initialization of the keyspan usb_serial_driver structs were not initializing the num_interrupt_out field and the additional checking was rejecting the end point so the driver wouldn't finish initializing. This commit initializes the fields to NUM_DONT_CARE. It works for the keyspan USA-49WG and doesn't break the USA-19HS which are the two keyspan devices I have to test with. Signed-off-by: Clark Rawlins Cc: stable Signed-off-by: Greg Kroah-Hartman commit 4756febb10d96104e08661031ba835771075419c Author: Alan Stern Date: Thu Mar 27 10:15:22 2008 -0400 USB: fix bug in sg initialization in usbtest This patch (as1062) fixes a bug in the scatter-gather initialization code in the usbtest driver. When the sg-helper conversion was performed, it wasn't done correctly. Signed-off-by: Alan Stern CC: Jens Axboe Signed-off-by: Greg Kroah-Hartman commit d04863e9e65767feff7807c8f693ac2719dd1944 Author: Brad Sawatzky Date: Tue Mar 25 22:32:43 2008 -0400 USB: serial: fix regression in Visor/Palm OS module for kernels >= 2.6.24 Fixes a bug/inconsistency revealed by the additional sanity checking in commit 063a2da8f01806906f7d7b1a1424b9afddebc443 introduced in the original 2.6.24 branch. The Handspring Visor / PalmOS 4 device structure defines .num_bulk_out=2 but the usb-serial probe returns num_bulk_out=3, triggering the check in the above commit and forcing a bail out when the device (a Garmin iQue in my case) attempts to connect. The patch bumps the expected number of endpoints to 3. FWIW, this patch will probably solve the following kernel bug report for Treo users (identical symptoms, different model PalmOS units): Signed-off-by: Brad Sawatzky Cc: stable Signed-off-by: Greg Kroah-Hartman commit e8898681023c8bfb920afcd215e43c8832597b91 Author: Florian Fainelli Date: Tue Mar 25 17:32:16 2008 +0100 USB: cp2101: Add identifiers for the Telegesys ETRX2USB This patch adds support for the Telegesys ETRX2USB which works fine with the cp2101 driver. Signed-off-by: Florian Fainelli Tested-by: Xavier Carcelle Signed-off-by: Greg Kroah-Hartman commit 1bfd6693cd66f1e79abce62d3e8c3647e1f59a55 Author: Robert Spanton Date: Sun Mar 23 19:47:23 2008 +0000 USB: serial: ti_usb_3410_5052: Correct TUSB3410 endpoint requirements. The changes introduced in commit 063a2da8f01806906f7d7b1a1424b9afddebc443 changed the semantics of the num_interrupt_in, num_interrupt_out, num_bulk_in and num_bulk_out entries of the usb_serial_driver struct to be the number of endpoints the device has when probed. This patch changes the ti_1port_device usb_serial_driver struct to reflect this change. The single port devices only have 1 bulk_out endpoint in their initial configuration, and so this patch changes the number of other types to NUM_DONT_CARE. The same change probably needs doing to the ti_2port_device struct, but I don't have a two port device at hand. Signed-off-by: Robert Spanton Cc: stable Signed-off-by: Greg Kroah-Hartman commit cdc647a9b75741659bfc6acc44a6b3a646ad53bf Author: David Brownell Date: Wed Apr 2 13:40:20 2008 -0700 USB: another ehci_iaa_watchdog fix This patch, suggested by Alan Stern, fixes the hung USB issues on my notebook from suspend/resume cycles. It does so by eliminating some confusion about the internal state machine associated with unlinking from the EHCI async schedule ring, which caused a recent regression: http://bugzilla.kernel.org/show_bug.cgi?id=10345 Signed-off-by: Mark Lord Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 8eb224cd45239714c2be104f17d5ca16b6b5d7ac Merge: 063a0b3... 7e77718... Author: Linus Torvalds Date: Wed Apr 2 12:34:33 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: ide: use ->ata_input_data in ide_driveid_update() ide-h8300: 32-bit I/O is unsupported ide/legacy/q40ide.c: add MODULE_LICENSE ide/legacy/macide: add MODULE_LICENSE ide/legacy/falconide.c: add MODULE_LICENSE ide/legacy/buddha.c: add MODULE_LICENSE ide/legacy/gayle.c: add MODULE_LICENSE ide/h8300/ide-h8300.c: add MODULE_LICENSE ide/cris/ide-cris.c: add MODULE_LICENSE ide/arm/ide_arm.c: add MODULE_LICENSE ide/ppc/pmac.c: add MODULE_LICENSE ide/ppc/mpc8xx.c: add MODULE_LICENSE ide/pci/cmd640.c: add MODULE_LICENSE ide-pnp.c: add MODULE_LICENSE commit 7e77718579f44d654e299c0fc2096b6b50f14458 Author: Bartlomiej Zolnierkiewicz Date: Wed Apr 2 21:22:05 2008 +0200 ide: use ->ata_input_data in ide_driveid_update() Use ->ata_input_data method instead of calling ata_input_data() directly. Currently it matters only for (broken) ide-cris host driver but it may change in the future. Signed-off-by: Bartlomiej Zolnierkiewicz commit 430c5d26eccb6293f7129805451cea15a3a12db3 Author: Bartlomiej Zolnierkiewicz Date: Wed Apr 2 21:22:04 2008 +0200 ide-h8300: 32-bit I/O is unsupported This host driver doesn't support 32-bit I/O (it sets hwif->INSL/OUTSL to NULL) so IDE_HFLAG_NO_IO_32BIT host flag needs to be set. Signed-off-by: Bartlomiej Zolnierkiewicz commit f743d04dcfbeda7439b78802d35305781999aa11 Author: Adrian Bunk Date: Wed Apr 2 21:22:04 2008 +0200 ide/legacy/q40ide.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit 37c807a2e0aa289b9986a8d4c2f81224125896bd Author: Adrian Bunk Date: Wed Apr 2 21:22:04 2008 +0200 ide/legacy/macide: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit 0c5ec97b30ca1d464612646e282c90415b8646cf Author: Adrian Bunk Date: Wed Apr 2 21:22:04 2008 +0200 ide/legacy/falconide.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit c5daf1aa2001aa77dffac672cd8b56ecc0bc94a2 Author: Adrian Bunk Date: Wed Apr 2 21:22:04 2008 +0200 ide/legacy/buddha.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit 6e1d17da7b7352cb38e0f25d84d3b9999b7a2ca3 Author: Adrian Bunk Date: Wed Apr 2 21:22:04 2008 +0200 ide/legacy/gayle.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit f95dc32001445c6706ce0c337628b7c12d42a267 Author: Adrian Bunk Date: Wed Apr 2 21:22:03 2008 +0200 ide/h8300/ide-h8300.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit b3fa5fab373f2c4321df45ba6c38268ca181ce60 Author: Adrian Bunk Date: Wed Apr 2 21:22:03 2008 +0200 ide/cris/ide-cris.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit 57ad3ea0c717113e2aeb0a9a298a9e15b9037c2a Author: Adrian Bunk Date: Wed Apr 2 21:22:03 2008 +0200 ide/arm/ide_arm.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit de9facbffe7cba6cb71239f6d574d71d95b68b10 Author: Adrian Bunk Date: Wed Apr 2 21:22:03 2008 +0200 ide/ppc/pmac.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit 20e3dd8f370e70a5a5e42ea22309162af460658d Author: Adrian Bunk Date: Wed Apr 2 21:22:03 2008 +0200 ide/ppc/mpc8xx.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit 776c0bcee6bc95c95f8677b720d99a464ca3af45 Author: Adrian Bunk Date: Wed Apr 2 21:22:02 2008 +0200 ide/pci/cmd640.c: add MODULE_LICENSE Now that it can be built modular it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit a62ee64157bcee812bb592fa45f3c70a613d6eae Author: Adrian Bunk Date: Wed Apr 2 21:22:02 2008 +0200 ide-pnp.c: add MODULE_LICENSE Now that it's in an own module it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Cc: Sam Ravnborg Signed-off-by: Bartlomiej Zolnierkiewicz commit 063a0b38a7e4ade79f00314c473d3c41a2c7eecf Author: Stephen Hemminger Date: Wed Apr 2 09:03:23 2008 -0700 sky2: fix suspend/resume races There are a couple of possible races on suspend/resume. First the driver needs to block new packets from being queued for Tx. The other less likely problem is the watchdog timer going off during resume. Signed-off-by: Stephen Hemminger Signed-off-by: Linus Torvalds commit 49115b7cb1483a14c557666b61fe81d3c23780d6 Merge: d200ccc... 044dfc9... Author: Linus Torvalds Date: Wed Apr 2 07:50:49 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb * git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: V4L/DVB (7486): radio-cadet: wrap PNP probe code in #ifdef CONFIG_PNP V4L/DVB (7485): v4l2-int-device.c: add MODULE_LICENSE V4L/DVB (7466): Avoid minor model number warning when an OEM HVR1250 board is detected V4L/DVB (7465): Fix eeprom parsing and errors on the HVR1800 products V4L/DVB (7464): Convert driver to use a single SRAM memory map V4L/DVB (7461): bttv: fix missed index check V4L/DVB (7400): bttv: Add a radio compat_ioctl file operation V4L/DVB (7278): bttv: Re-enable radio tuner support for VIDIOCGFREQ/VIDIOCSFREQ ioctls V4L/DVB (7277): bttv: Re-enabling radio support requires the use of struct bttv_fh commit d200ccce6d01fde887aca08156cc875a9aa8b62b Merge: 4c61f72... 0b97760... Author: Linus Torvalds Date: Wed Apr 2 07:47:31 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: [SCSI] mvsas: check subsystem id [SCSI] mvsas: get phy info. [SCSI] mvsas: fix the buffer of rx DMA overflow bug [SCSI] mvsas: retry aborting task. [SCSI] mvsas: check hd whether unplugged [SCSI] mvsas : interrupt handling [SCSI] mvsas: a tag handler implementation [SCSI] mvsas: fill in error info record and phy mode6 bits. [SCSI] libsas: Warn if ATA device detected but CONFIG_SCSI_SAS_ATA not set [SCSI] hosts.c: fixes for "no error" reported after error scenarios Revert "[SCSI] fix bsg queue oops with iscsi logout" commit 4c61f72c72e0e1181f91831f106c5f7306238706 Merge: 2f819ae... c819914... Author: Linus Torvalds Date: Wed Apr 2 07:46:41 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc64: remove unused calc_npages() in iommu_common.h sparc64: add the segment boundary checking to IOMMUs while merging SG entries [SPARC64]: Don't open-code {get,put}_cpu_var() in flush_tlb_pending(). commit 2f819ae8816990aaad46dd6d1748a096d136df68 Merge: d40c2f2... 802fb17... Author: Linus Torvalds Date: Wed Apr 2 07:46:18 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (45 commits) [VLAN]: Proc entry is not renamed when vlan device name changes. [IPV6]: Fix ICMP relookup error path dst leak [ATM] drivers/atm/iphase.c: compilation warning fix IPv6: do not create temporary adresses with too short preferred lifetime IPv6: only update the lifetime of the relevant temporary address bluetooth : __rfcomm_dlc_close lock fix bluetooth : use lockdep sub-classes for diffrent bluetooth protocol [ROSE/AX25] af_rose: rose_release() fix mac80211: correct use_short_preamble handling b43: Fix PCMCIA IRQ routing b43: Add DMA mapping failure messages mac80211: trigger ieee80211_sta_work after opening interface [LLC]: skb allocation size for responses [IP] UDP: Use SEQ_START_TOKEN. [NET]: Remove Documentation/networking/sk98lin.txt [ATM] atm/idt77252.c: Make 2 functions static [ATM]: Make atm/he.c:read_prom_byte() static [IPV6] MCAST: Ensure to check multicast listener(s). [LLC]: Kill llc_station_mac_sa symbol export. forcedeth: fix locking bug with netconsole ... commit d40c2f29f3b0f5937bace575722598dac474c478 Merge: 6be9f7b... 0794c66... Author: Linus Torvalds Date: Wed Apr 2 07:45:49 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6: selinux: handle files opened with flags 3 by checking ioctl permission commit 6be9f7b2835fa442f6b892f174dabc4023c0af2e Merge: 8774b7f... 34e6bbf... Author: Linus Torvalds Date: Wed Apr 2 07:43:53 2008 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block * 'for-linus' of git://git.kernel.dk/linux-2.6-block: cfq-iosched: fix rcu freeing of cfq io contexts Fix bounce setting for 64-bit commit 8774b7f63be0d1b237bc30d49b6486f7691e2ed4 Merge: a5f37c3... 1edcf2e... Author: Linus Torvalds Date: Wed Apr 2 07:43:37 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: [CRYPTO] xcbc: Fix crash when ipsec uses xcbc-mac with big data chunk commit a5f37c3252b174efdcdd808797a7c529064c95c0 Author: Sven Schnelle Date: Wed Apr 2 13:17:18 2008 +0100 afs: add missing up_write() on return If afs_cell_alloc() fails, afs_cells_sem doesn't get unlocked, which leads to a deadlock. Unlock it before returning. Signed-off-by: Sven Schnelle Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 0035a1dc8f56f2c92f4246b0c8b5f6d1ee10c76b Author: Tobias Mueller Date: Wed Apr 2 10:02:06 2008 -0400 Input: appletouch - add product IDs for the 4th generation MacBooks Signed-off-by: Tobias Mueller Acked-by: Johannes Berg Signed-off-by: Dmitry Torokhov commit 34e6bbf23c8f43e8713d9bd092680f1660494b4a Author: Fabio Checconi Date: Wed Apr 2 14:31:02 2008 +0200 cfq-iosched: fix rcu freeing of cfq io contexts SLAB_DESTROY_BY_RCU is not a direct substitute for normal call_rcu() freeing, since it'll page freeing but NOT object freeing. So change cfq to do the freeing on its own. Signed-off-by: Fabio Checconi Acked-by: Paul E. McKenney Signed-off-by: Jens Axboe commit 802fb176d8c635ae42da31b80841c26e8c7338a0 Author: Pavel Emelyanov Date: Wed Apr 2 00:08:01 2008 -0700 [VLAN]: Proc entry is not renamed when vlan device name changes. This may lead to situations, when each of two proc entries produce data for the other's device. Looks like a BUG, so this patch is for net-2.6. It will not apply to net-2.6.26 since dev->nd_net access is replaced with dev_net(dev) one. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 00d61e3e8c12d5f395b167856d2b3c430816afb0 Author: Andrea Arcangeli Date: Wed Apr 2 09:06:44 2008 +0200 Fix bounce setting for 64-bit Looking a bit closer into this regression the reason this can't be right is that dma_addr common default is BLK_BOUNCE_HIGH and most machines have less than 4G. So if you do: if (b_pfn <= (min_t(u64, 0xffffffff, BLK_BOUNCE_HIGH) >> PAGE_SHIFT)) dma = 1 that will translate to: if (BLK_BOUNCE_HIGH <= BLK_BOUNCE_HIGH) dma = 1 So for 99% of hardware this will trigger unnecessary GFP_DMA allocations and isa pooling operations. Also note how the 32bit code still does b_pfn < blk_max_low_pfn. I guess this is what you were looking after. I didn't verify but as far as I can tell, this will stop the regression with isa dma operations at boot for 99% of blkdev/memory combinations out there and I guess this fixes the setups with >4G of ram and 32bit pci cards as well (this also retains symmetry with the 32bit code). Signed-off-by: Andrea Arcangeli Signed-off-by: Jens Axboe commit f32c5f2c3866bf4d932d2bc42216dafb90a50ab7 Author: Herbert Xu Date: Wed Apr 2 00:06:09 2008 -0700 [IPV6]: Fix ICMP relookup error path dst leak When we encounter an error while looking up the dst the second time we need to drop the first dst. This patch is pretty much the same as the one for IPv4. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit a22eb6faae4ec64d59cc206671eb0bfe46c5ffd2 Author: Leonardo Potenza Date: Wed Apr 2 00:03:00 2008 -0700 [ATM] drivers/atm/iphase.c: compilation warning fix Removed the warning messages: drivers/atm/iphase.c:961: warning: 'tcnter' defined but not used drivers/atm/iphase.c:963: warning: 'xdump' defined but not used tcnter and xdump() are used only in debug build Signed-off-by: Leonardo Potenza Signed-off-by: David S. Miller commit eac55bf97094f6b64116426864cf4666ef7587bc Author: Benoit Boissinot Date: Wed Apr 2 00:01:35 2008 -0700 IPv6: do not create temporary adresses with too short preferred lifetime From RFC341: A temporary address is created only if this calculated Preferred Lifetime is greater than REGEN_ADVANCE time units. In particular, an implementation must not create a temporary address with a zero Preferred Lifetime. Signed-off-by: Benoit Boissinot Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit c6fbfac2e61c9a8617f64b93e8c990b8d864bce5 Author: Benoit Boissinot Date: Wed Apr 2 00:00:58 2008 -0700 IPv6: only update the lifetime of the relevant temporary address When receiving a prefix information from a routeur, only update the lifetimes of the temporary address associated with that prefix. Otherwise if one deprecated prefix is advertized, all your temporary addresses will become deprecated. Signed-off-by: Benoit Boissinot Acked-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 1905f6c736cb618e07eca0c96e60e3c024023428 Author: Dave Young Date: Tue Apr 1 23:59:06 2008 -0700 bluetooth : __rfcomm_dlc_close lock fix Lockdep warning will be trigged while rfcomm connection closing. The locks taken in rfcomm_dev_add: rfcomm_dev_lock --> d->lock In __rfcomm_dlc_close: d->lock --> rfcomm_dev_lock (in rfcomm_dev_state_change) There's two way to fix it, one is in rfcomm_dev_add we first locking d->lock then the rfcomm_dev_lock The other (in this patch), remove the locking of d->lock for rfcomm_dev_state_change because just locking "d->state = BT_CLOSED;" is enough. [ 295.002046] ======================================================= [ 295.002046] [ INFO: possible circular locking dependency detected ] [ 295.002046] 2.6.25-rc7 #1 [ 295.002046] ------------------------------------------------------- [ 295.002046] krfcommd/2705 is trying to acquire lock: [ 295.002046] (rfcomm_dev_lock){-.--}, at: [] rfcomm_dev_state_change+0x6a/0xd0 [rfcomm] [ 295.002046] [ 295.002046] but task is already holding lock: [ 295.002046] (&d->lock){--..}, at: [] __rfcomm_dlc_close+0x43/0xd0 [rfcomm] [ 295.002046] [ 295.002046] which lock already depends on the new lock. [ 295.002046] [ 295.002046] [ 295.002046] the existing dependency chain (in reverse order) is: [ 295.002046] [ 295.002046] -> #1 (&d->lock){--..}: [ 295.002046] [] check_prev_add+0xd3/0x200 [ 295.002046] [] check_prevs_add+0x95/0xe0 [ 295.002046] [] validate_chain+0x23f/0x320 [ 295.002046] [] __lock_acquire+0x1c1/0x760 [ 295.002046] [] lock_acquire+0x79/0xb0 [ 295.002046] [] _spin_lock+0x39/0x80 [ 295.002046] [] rfcomm_dev_add+0x240/0x360 [rfcomm] [ 295.002046] [] rfcomm_create_dev+0x6e/0xe0 [rfcomm] [ 295.002046] [] rfcomm_dev_ioctl+0x33/0x60 [rfcomm] [ 295.002046] [] rfcomm_sock_ioctl+0x2c/0x50 [rfcomm] [ 295.002046] [] sock_ioctl+0x118/0x240 [ 295.002046] [] vfs_ioctl+0x76/0x90 [ 295.002046] [] do_vfs_ioctl+0x56/0x140 [ 295.002046] [] sys_ioctl+0x39/0x60 [ 295.002046] [] syscall_call+0x7/0xb [ 295.002046] [] 0xffffffff [ 295.002046] [ 295.002046] -> #0 (rfcomm_dev_lock){-.--}: [ 295.002046] [] check_prev_add+0x34/0x200 [ 295.002046] [] check_prevs_add+0x95/0xe0 [ 295.002046] [] validate_chain+0x23f/0x320 [ 295.002046] [] __lock_acquire+0x1c1/0x760 [ 295.002046] [] lock_acquire+0x79/0xb0 [ 295.002046] [] _read_lock+0x39/0x80 [ 295.002046] [] rfcomm_dev_state_change+0x6a/0xd0 [rfcomm] [ 295.002046] [] __rfcomm_dlc_close+0x58/0xd0 [rfcomm] [ 295.002046] [] rfcomm_recv_ua+0x6f/0x120 [rfcomm] [ 295.002046] [] rfcomm_recv_frame+0x171/0x1e0 [rfcomm] [ 295.002046] [] rfcomm_run+0xe7/0x550 [rfcomm] [ 295.002046] [] kthread+0x5c/0xa0 [ 295.002046] [] kernel_thread_helper+0x7/0x10 [ 295.002046] [] 0xffffffff [ 295.002046] [ 295.002046] other info that might help us debug this: [ 295.002046] [ 295.002046] 2 locks held by krfcommd/2705: [ 295.002046] #0: (rfcomm_mutex){--..}, at: [] rfcomm_run+0x7b/0x550 [rfcomm] [ 295.002046] #1: (&d->lock){--..}, at: [] __rfcomm_dlc_close+0x43/0xd0 [rfcomm] [ 295.002046] [ 295.002046] stack backtrace: [ 295.002046] Pid: 2705, comm: krfcommd Not tainted 2.6.25-rc7 #1 [ 295.002046] [] ? printk+0x18/0x20 [ 295.002046] [] print_circular_bug_tail+0x6f/0x80 [ 295.002046] [] check_prev_add+0x34/0x200 [ 295.002046] [] check_prevs_add+0x95/0xe0 [ 295.002046] [] validate_chain+0x23f/0x320 [ 295.002046] [] __lock_acquire+0x1c1/0x760 [ 295.002046] [] lock_acquire+0x79/0xb0 [ 295.002046] [] ? rfcomm_dev_state_change+0x6a/0xd0 [rfcomm] [ 295.002046] [] _read_lock+0x39/0x80 [ 295.002046] [] ? rfcomm_dev_state_change+0x6a/0xd0 [rfcomm] [ 295.002046] [] rfcomm_dev_state_change+0x6a/0xd0 [rfcomm] [ 295.002046] [] __rfcomm_dlc_close+0x58/0xd0 [rfcomm] [ 295.002046] [] rfcomm_recv_ua+0x6f/0x120 [rfcomm] [ 295.002046] [] rfcomm_recv_frame+0x171/0x1e0 [rfcomm] [ 295.002046] [] ? trace_hardirqs_on+0xb9/0x130 [ 295.002046] [] ? _spin_unlock_irqrestore+0x39/0x70 [ 295.002046] [] rfcomm_run+0xe7/0x550 [rfcomm] [ 295.002046] [] ? __sched_text_start+0x229/0x4c0 [ 295.002046] [] ? cpu_avg_load_per_task+0x20/0x30 [ 295.002046] [] ? rfcomm_run+0x0/0x550 [rfcomm] [ 295.002046] [] kthread+0x5c/0xa0 [ 295.002046] [] ? kthread+0x0/0xa0 [ 295.002046] [] kernel_thread_helper+0x7/0x10 [ 295.002046] ======================= Signed-off-by: Dave Young Signed-off-by: David S. Miller commit 68845cb2c82275efd7390026bba70c320ca6ef86 Author: Dave Young Date: Tue Apr 1 23:58:35 2008 -0700 bluetooth : use lockdep sub-classes for diffrent bluetooth protocol 'rfcomm connect' will trigger lockdep warnings which is caused by locking diffrent kinds of bluetooth sockets at the same time. So using sub-classes per AF_BLUETOOTH sub-type for lockdep. Thanks for the hints from dave jones. --- > From: Dave Jones > Date: Thu, 27 Mar 2008 12:21:56 -0400 > > > Mar 27 08:10:57 localhost kernel: Pid: 3611, comm: obex-data-serve Not tainted 2.6.25-0.121.rc5.git4.fc9 #1 > > Mar 27 08:10:57 localhost kernel: [__lock_acquire+2287/3089] __lock_acquire+0x8ef/0xc11 > > Mar 27 08:10:57 localhost kernel: [sched_clock+8/11] ? sched_clock+0x8/0xb > > Mar 27 08:10:57 localhost kernel: [lock_acquire+106/144] lock_acquire+0x6a/0x90 > > Mar 27 08:10:57 localhost kernel: [] ? l2cap_sock_bind+0x29/0x108 [l2cap] > > Mar 27 08:10:57 localhost kernel: [lock_sock_nested+182/198] lock_sock_nested+0xb6/0xc6 > > Mar 27 08:10:57 localhost kernel: [] ? l2cap_sock_bind+0x29/0x108 [l2cap] > > Mar 27 08:10:57 localhost kernel: [security_socket_post_create+22/27] ? security_socket_post_create+0x16/0x1b > > Mar 27 08:10:57 localhost kernel: [__sock_create+388/472] ? __sock_create+0x184/0x1d8 > > Mar 27 08:10:57 localhost kernel: [] l2cap_sock_bind+0x29/0x108 [l2cap] > > Mar 27 08:10:57 localhost kernel: [kernel_bind+10/13] kernel_bind+0xa/0xd > > Mar 27 08:10:57 localhost kernel: [] rfcomm_dlc_open+0xc8/0x294 [rfcomm] > > Mar 27 08:10:57 localhost kernel: [lock_sock_nested+187/198] ? lock_sock_nested+0xbb/0xc6 > > Mar 27 08:10:57 localhost kernel: [] rfcomm_sock_connect+0x8b/0xc2 [rfcomm] > > Mar 27 08:10:57 localhost kernel: [sys_connect+96/125] sys_connect+0x60/0x7d > > Mar 27 08:10:57 localhost kernel: [__lock_acquire+1370/3089] ? __lock_acquire+0x55a/0xc11 > > Mar 27 08:10:57 localhost kernel: [sys_socketcall+140/392] sys_socketcall+0x8c/0x188 > > Mar 27 08:10:57 localhost kernel: [syscall_call+7/11] syscall_call+0x7/0xb --- Signed-off-by: Dave Young Signed-off-by: David S. Miller commit 4965291acf8cc2c31dcb2fc7d292a04ee08da2dd Author: Jarek Poplawski Date: Tue Apr 1 23:56:17 2008 -0700 [ROSE/AX25] af_rose: rose_release() fix rose_release() doesn't release sockets properly, e.g. it skips sock_orphan(), so OOPSes are triggered in sock_def_write_space(), which was observed especially while ROSE skbs were kfreed from ax25_frames_acked(). There is also sock_hold() and lock_sock() added - similarly to ax25_release(). Thanks to Bernard Pidoux for substantial help in debugging this problem. Signed-off-by: Jarek Poplawski Reported-and-tested-by: Bernard Pidoux Signed-off-by: David S. Miller commit 1edcf2e1ee2babb011cfca80ad9d202e9c491669 Author: Joy Latten Date: Wed Apr 2 14:36:09 2008 +0800 [CRYPTO] xcbc: Fix crash when ipsec uses xcbc-mac with big data chunk The kernel crashes when ipsec passes a udp packet of about 14XX bytes of data to aes-xcbc-mac. It seems the first xxxx bytes of the data are in first sg entry, and remaining xx bytes are in next sg entry. But we don't check next sg entry to see if we need to go look the page up. I noticed in hmac.c, we do a scatterwalk_sg_next(), to do this check and possible lookup, thus xcbc.c needs to use this routine too. A 15-hour run of an ipsec stress test sending streams of tcp and udp packets of various sizes, using this patch and aes-xcbc-mac completed successfully, so hopefully this fixes the problem. Signed-off-by: Joy Latten Signed-off-by: Herbert Xu commit 0794c66d49885a2f615618ce4940434b5b067d84 Author: Stephen Smalley Date: Mon Mar 17 08:55:18 2008 -0400 selinux: handle files opened with flags 3 by checking ioctl permission Handle files opened with flags 3 by checking ioctl permission. Default to returning FILE__IOCTL from file_to_av() if the f_mode has neither FMODE_READ nor FMODE_WRITE, and thus check ioctl permission on exec or transfer, thereby validating such descriptors early as with normal r/w descriptors and catching leaks of them prior to attempted usage. Signed-off-by: Stephen Smalley Acked-by: Eric Paris Signed-off-by: James Morris commit 044dfc99fe3e1e0fa85bbdd1936ee229e399250c Author: Bjorn Helgaas Date: Mon Mar 31 21:21:48 2008 -0300 V4L/DVB (7486): radio-cadet: wrap PNP probe code in #ifdef CONFIG_PNP Wrap PNP probe code in #ifdef CONFIG_PNP. Without this change, we'll have unresolved references to pnp_get_resource() function when CONFIG_PNP=n. (This is a new interface that's not in mainline yet.) Signed-off-by: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab commit 19ac111c038537b73c9a0bca24bad123c2ba5f42 Author: Adrian Bunk Date: Mon Mar 31 09:08:08 2008 -0300 V4L/DVB (7485): v4l2-int-device.c: add MODULE_LICENSE Now that it's in an own module it needs a MODULE_LICENSE. Signed-off-by: Adrian Bunk Signed-off-by: Mauro Carvalho Chehab commit 4b15b5ec36fc54bf3412f042d5833049876446eb Author: Steven Toth Date: Sat Mar 29 17:37:00 2008 -0300 V4L/DVB (7466): Avoid minor model number warning when an OEM HVR1250 board is detected Avoid minor model number warning when an OEM HVR1250 board is detected. Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit c88133ecb3db2e3779d897abca960c450623a2a2 Author: Steven Toth Date: Sat Mar 29 17:36:09 2008 -0300 V4L/DVB (7465): Fix eeprom parsing and errors on the HVR1800 products On some models, the valid Hauppauge eeprom data begins at a different offset. This patch avoid unfriendly 'corrupt' eeprom errors during driver load. Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 31c8cc9742daa6ffedf7ba8a9bc465b10dee4b52 Author: Steven Toth Date: Sat Mar 29 17:30:26 2008 -0300 V4L/DVB (7464): Convert driver to use a single SRAM memory map This reduces the memory footprint and removes the need to manually configure each map, which lead to a bug where the Fusion EXP 5 board broke for a while. This also fixes digital support again for the DViCO FusionHDTV5Express. Signed-off-by: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit 1a002ebf60c011ed6574b8e3ed9aa85f1ead6a95 Author: Cyrill Gorcunov Date: Tue Apr 1 17:49:13 2008 -0300 V4L/DVB (7461): bttv: fix missed index check We should check for proper index first Signed-off-by: Cyrill Gorcunov Signed-off-by: Mauro Carvalho Chehab commit c137918978889fa4711d286e0a8ca3d93fdcb991 Author: Robert Fitzsimons Date: Tue Apr 1 11:42:28 2008 -0300 V4L/DVB (7400): bttv: Add a radio compat_ioctl file operation Signed-off-by: Robert Fitzsimons Signed-off-by: Mauro Carvalho Chehab commit 1b0690134ec5dafb523a951a8756bb8735382fec Author: Robert Fitzsimons Date: Tue Apr 1 11:41:54 2008 -0300 V4L/DVB (7278): bttv: Re-enable radio tuner support for VIDIOCGFREQ/VIDIOCSFREQ ioctls Signed-off-by: Robert Fitzsimons Signed-off-by: Mauro Carvalho Chehab commit 5cd3955cb8adfc1edf481e9e1cb2289db50ccacb Author: Robert Fitzsimons Date: Tue Apr 1 11:41:54 2008 -0300 V4L/DVB (7277): bttv: Re-enabling radio support requires the use of struct bttv_fh A number of the radio tuner ioctl functions are shared with the TV tuner, these functions require a struct bttv_fh data structure to be allocated and initialized. Signed-off-by: Robert Fitzsimons Signed-off-by: Mauro Carvalho Chehab commit 0e81a8ae37687845f7cdfa2adce14ea6a5f1dd34 Author: Linus Torvalds Date: Tue Apr 1 12:44:26 2008 -0700 Linux 2.6.25-rc8 commit d43c7b37ad787173d08683f05eadeea0398fefdf Author: Vladimir Koutny Date: Mon Mar 31 17:05:03 2008 +0200 mac80211: correct use_short_preamble handling ERP IE bit for preamble mode is 0 for short and 1 for long, not the other way around. This fixes the value reported to the driver via bss_conf->use_short_preamble field. Signed-off-by: Vladimir Koutny Signed-off-by: John W. Linville commit e645890115004fa6c4dd1f9541bb834970c8bcae Author: Michael Buesch Date: Fri Mar 28 11:48:53 2008 +0100 b43: Fix PCMCIA IRQ routing This fixes the IRQ routing on PCMCIA devices. With this patch the card will finally be able to receive IRQs. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 539e6f8cffe9299fbf813ad574535b90ac370031 Author: Michael Buesch Date: Fri Mar 28 11:46:58 2008 +0100 b43: Add DMA mapping failure messages This adds messages for some DMA mapping failures. These are useful for debugging DMA address problems, as they appear on x86_64 machines with IOMMU enabled. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 64f851e410ae37a0990212ae34f0c96b641478f7 Author: Jan Niehusmann Date: Sun Mar 23 20:23:56 2008 +0100 mac80211: trigger ieee80211_sta_work after opening interface ieee80211_sta_work is disabled while network interface is down. Therefore, if you configure wireless parameters before bringing the interface up, these configurations are not yet effective and association fails. A workaround from userspace is calling a command like 'iwconfig wlan0 ap any' after the interface is brought up. To fix this behaviour, trigger execution of ieee80211_sta_work from ieee80211_open when in STA or IBSS mode. Signed-off-by: Jan Niehusmann Signed-off-by: John W. Linville commit 00460dd5f4b886f72699f2245206c935f9fd4b82 Author: Christoph Lameter Date: Tue Apr 1 12:07:41 2008 -0700 Fix undefined count_partial if !CONFIG_SLABINFO Small typo in the patch recently merged to avoid the unused symbol message for count_partial(). Discussion thread with confirmation of fix at http://marc.info/?t=120696854400001&r=1&w=2 Typo in the check if we need the count_partial function that was introduced by 53625b4204753b904addd40ca96d9ba802e6977d Signed-off-by: Christoph Lameter Signed-off-by: Linus Torvalds commit 670e23ceb1aefacfe9aeccfc871e28e9cf973286 Merge: 1002747... 6b84236... Author: Linus Torvalds Date: Tue Apr 1 11:46:14 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: firewire: fw-ohci: plug dma memory leak in AR handler commit 10027471a305c5491d23add394041120720e8a11 Merge: 6143439... 26b63e9... Author: Linus Torvalds Date: Tue Apr 1 11:45:48 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.25 * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.25: sh: Fix up uImage compression type remove include/asm-sh/floppy.h sh: Fix TIF_USEDFPU clearing under FPU emulation. sh: Fix occasional FPU register corruption under preempt. commit 61434392f797cf89872bda87dff8b3395edf4108 Merge: 0e45adb... f9e8b78... Author: Linus Torvalds Date: Tue Apr 1 11:31:31 2008 -0700 Merge branch 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/ralf/upstream-linus * 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/ralf/upstream-linus: [MIPS] XSS1500: Fix compilation [MIPS] Bigsur: make defconfig more useful. [MIPS] Alchemy: work around clock misdetection on early Au1000 [MIPS] Add missing 4KEC TLB refill handler [MIPS] BCM1480: Fix PCI/HT IO access [MIPS] Fix the installation condition of MIPS clocksource [MIPS] Check for GCC r10k-cache-barrier support [MIPS] I8253: Export i2853_lock to modules. [MIPS] VPE loader: Check result of memory allocation. commit 0e45adb8f5371f3d20a6df21cd13ce32fbe9bf15 Author: Oliver Schuster Date: Tue Apr 1 17:06:21 2008 +0200 [WATCHDOG] Fix it8712f_wdt.c wrong byte order accessing WDT_TIMEOUT This patch corrects an error in the driver it8712f_wdt. You cannot set the 16-bit WDT_TIMEOUT access as a 16-bit outw, because the byte ordering will be wrong. So just do the high 8 bits as a separate access. Signed-off-by: Oliver Schuster Signed-off-by: Linus Torvalds commit d5f1a21ca05cad212829460ee7900915128e3401 Merge: 1f4cfba... 1035d60... Author: Linus Torvalds Date: Tue Apr 1 11:26:26 2008 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm * master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] 4875/1: Add MODULE_ALIAS to ixp4xx-beeper module [ARM] 4873/1: Fix ITE 8152 interrupt demux [ARM] 4878/1: Add oabi shim for fstatat64 commit 1f4cfbaa2bede7d371ea2e589e87c6881235a711 Merge: 90c9d4f... 2961cb2... Author: Linus Torvalds Date: Tue Apr 1 11:25:37 2008 -0700 Merge branch 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6 * 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6: hwmon: (w83781d) Fix I/O resource conflict with PNP commit 90c9d4f8eeb9dd31adfb97e897039033b7a72d14 Merge: 3344203... 306dd85... Author: Linus Torvalds Date: Tue Apr 1 11:24:20 2008 -0700 Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds * 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds: leds: Remove incorrect use of preempt_count() from leds-gpio leds: Fix potential leds-gpio oops commit 3344203948f40521c35a0a52e3f1bd9fbb7a1118 Merge: 7731ce6... a7097ff... Author: Linus Torvalds Date: Tue Apr 1 11:23:05 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: make sure input interfaces pin parent input devices Input: apm-power - fix crash when unloading modules Input: pxa27x - fix keypad KPC macros commit 7731ce63d9a863c987dd87b0425451fff0e6cdc8 Author: Rafael J. Wysocki Date: Sun Mar 30 02:19:07 2008 +0100 ACPI PM: Restore the 2.6.24 suspend ordering Some time ago it turned out that our suspend code ordering broke some NVidia-based systems that hung if _PTS was executed with one of the PCI devices, specifically a USB controller, in a low power state. Then, it was noticed that the suspend code ordering was not compliant with ACPI 1.0, although it was compliant with ACPI 2.0 (and later), and it was argued that the code had to be changed for that reason (ref. http://bugzilla.kernel.org/show_bug.cgi?id=9528). So we did, but evidently we did wrong, because it's now turning out that some systems have been broken by this change. Refs: http://bugzilla.kernel.org/show_bug.cgi?id=10340 https://bugzilla.novell.com/show_bug.cgi?id=374217#c16 [ I said at that time that something like this might happend, but the majority of people involved thought that it was improbable due to the necessity to preserve the compliance of hardware with ACPI 1.0. ] This actually is a quite serious regression from 2.6.24. Moreover, the ACPI 1.0 ordering of suspend code introduced another issue that I have only noticed recently. Namely, if the suspend of one of devices fails, the already suspended devices will be resumed without executing _WAK before, which leads to problems on some systems (for example, in such situations thermal management is broken on my HP nx6325). Consequently, it also breaks suspend debugging on the affected systems. Note also, that the requirement to execute _PTS before suspending devices does not really make sense, because the device in question may be put into a low power state at run time for a reason unrelated to a system-wide suspend. For the reasons outlined above, the change of the suspend ordering should be reverted, which is done by the patch below. [ Felix Möller: "I am the reporter from the original Novell Bug: https://bugzilla.novell.com/show_bug.cgi?id=374217 I just tried current git head (two hours ago) with the patch (the one from the beginning of this thread) from Rafael and without it. With the patch my MacBook does suspend without it does not." ] Signed-off-by: Rafael J. Wysocki Tested-by: Felix Möller Signed-off-by: Linus Torvalds commit cabce28ec0a0ae3d0ddfa4461f0e8be94ade9e46 Author: Mikulas Patocka Date: Tue Apr 1 01:22:45 2008 +0200 plip: replace spin_lock_irq with spin_lock_irqsave in irq context Plip uses spin_lock_irq/spin_unlock_irq in its IRQ handler (called from parport IRQ handler), the latter enables interrupts without parport subsystem IRQ handler expecting it. The bug can be seen if you compile kernel with lock dependency checking and use plip --- it produces a warning. This patch changes it to spin_lock_irqsave/spin_lock_irqrestore, so that it doesn't enable interrupts when already disabled. Signed-off-by: Linus Torvalds commit f9e8b782608021c0cbd936923cc0e509521b594d Author: Florian Fainelli Date: Tue Apr 1 15:53:25 2008 +0200 [MIPS] XSS1500: Fix compilation This patch fixes the compilation of the Au1000 XSS1500 board setup and irqmap code. Signed-off-by: Florian Fainelli Signed-off-by: Ralf Baechle commit 0519649f7e855382a0270e6def03c9f84f7ac9b0 Author: Ralf Baechle Date: Mon Mar 31 08:52:30 2008 +0100 [MIPS] Bigsur: make defconfig more useful. Signed-off-by: Ralf Baechle commit 758e285faca4db948ecddefb523007255b29cdb7 Author: Sergei Shtylyov Date: Thu Mar 27 16:09:31 2008 +0300 [MIPS] Alchemy: work around clock misdetection on early Au1000 Work around the CPU clock miscalculation on Au1000DA/HA/HB due the sys_cpupll register being write-only, i.e. actually do what the comment before cal_r4off() function advertised for years but the code failed at. This is achieved by just giving user a chance to define the clock explicitly in the board config. via CONFIG_SOC_AU1000_FREQUENCY option, defaulting to 396 MHz if the option is not given... The patch is based on the AMD's big unpublished patch, the issue seems to be an undocumented errata (or feature :-)... Signed-off-by: Sergei Shtylyov Signed-off-by: Ralf Baechle commit b1ec4c8e483d0d00d3114eafdb2c85c1cf3ed4ae Author: Thomas Bogendoerfer Date: Wed Mar 26 16:42:54 2008 +0100 [MIPS] Add missing 4KEC TLB refill handler Early 4KEc were MIPS32r1 and therefore need some love to get a TLB refill handler. Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit cf7b7e0b3718418b38e1c20f5236534402e5a6c0 Author: Thomas Bogendoerfer Date: Sun Mar 16 18:14:16 2008 +0100 [MIPS] BCM1480: Fix PCI/HT IO access - removed check for enable HT-PCI bridges, because some CFE version init only the needed one and scanning works even with disabled HT links - implemented I/O access behind HT PCI busses - fixed pci_map for IO resource behind PCI bridge Tested with E100 and Tulip driver. Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit 447cdf2628b59aa513a42785450b348dced26d8a Author: Yoichi Yuasa Date: Wed Mar 12 23:50:02 2008 +0900 [MIPS] Fix the installation condition of MIPS clocksource Signed-off-by: Yoichi Yuasa Signed-off-by: Ralf Baechle commit 82933342c3b157c93f4b09199bcde8f2e961dff6 Author: Thomas Bogendoerfer Date: Sat Mar 15 12:28:51 2008 +0100 [MIPS] Check for GCC r10k-cache-barrier support Check whether gcc supports -mr10-cache-barrier=1 and issue a cleaner error message if not. This option is needed to build working SGI IP28 kernels. Signed-off-by: Thomas Bogendoerfer Signed-off-by: Ralf Baechle commit a05e623f63f7ce2d6b334eb3d7ecb449b907b429 Author: Ralf Baechle Date: Fri Mar 14 14:15:08 2008 +0000 [MIPS] I8253: Export i2853_lock to modules. This fixes: ERROR: "i8253_lock" [drivers/input/misc/pcspkr.ko] undefined! Signed-off-by: Ralf Baechle commit 5408c490a4297556cfe10ba9725b1bd13f4a8377 Author: Ralf Baechle Date: Thu Mar 13 15:16:53 2008 +0000 [MIPS] VPE loader: Check result of memory allocation. And while at it, make it a little cleaner. Issue originally reported by Tiejun Chen (tiejun.chen@windriver.com). Signed-off-by: Ralf Baechle commit a7097ff89c3204737a07eecbc83f9ae6002cc534 Author: Dmitry Torokhov Date: Tue Apr 1 00:22:53 2008 -0400 Input: make sure input interfaces pin parent input devices Recent driver core change causes references to parent devices being dropped early, at device_del() time, as opposed to when all children are freed. This causes oops in evdev with grabbed devices. Take the reference to the parent input device ourselves to ensure that it stays around long enough. Signed-off-by: Dmitry Torokhov commit 399f486286f44d55c4fff0e9cc5d712f2b443489 Merge: 481419e... a9edadb... Author: Dmitry Torokhov Date: Tue Apr 1 00:22:26 2008 -0400 Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-linus commit f83f1768f833cb45bc93429fdc552252a4f55ac3 Author: Joonwoo Park Date: Mon Mar 31 21:02:47 2008 -0700 [LLC]: skb allocation size for responses Allocate the skb for llc responses with the received packet size by using the size adjustable llc_frame_alloc. Don't allocate useless extra payload. Cleanup magic numbers. So, this fixes oops. Reported by Jim Westfall: kernel: skb_over_panic: text:c0541fc7 len:1000 put:997 head:c166ac00 data:c166ac2f tail:0xc166b017 end:0xc166ac80 dev:eth0 kernel: ------------[ cut here ]------------ kernel: kernel BUG at net/core/skbuff.c:95! Signed-off-by: Joonwoo Park Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit b50660f1fe4ebd6129064e4fba0bd882b60c2425 Author: YOSHIFUJI Hideaki Date: Mon Mar 31 19:38:15 2008 -0700 [IP] UDP: Use SEQ_START_TOKEN. Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 5e0751f57ae1aa5cda285f8c565ce202d8d5e5a3 Author: Adrian Bunk Date: Mon Mar 31 19:36:47 2008 -0700 [NET]: Remove Documentation/networking/sk98lin.txt Since the driver is gone there's no point in keeping the documentation. Signed-off-by: Adrian Bunk Acked-by: Stephen Hemminger Signed-off-by: David S. Miller commit f4c4b4a63153df028e3964f329cdcbba509c5496 Author: Adrian Bunk Date: Mon Mar 31 19:35:52 2008 -0700 [ATM] atm/idt77252.c: Make 2 functions static This patch makes the following needlessly global functions static: - idt77252_send() - idt77252_dev_close() Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 0ee897d43e390cddcfdb2f4e39635ea7ec1ad2e9 Author: Adrian Bunk Date: Mon Mar 31 19:34:44 2008 -0700 [ATM]: Make atm/he.c:read_prom_byte() static This patch makes the needlessly global read_prom_byte() static. Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 4c7966b86b910d6d4869aba1d7417d053ac9682c Author: YOSHIFUJI Hideaki Date: Mon Mar 31 19:30:45 2008 -0700 [IPV6] MCAST: Ensure to check multicast listener(s). In ip6_mc_input(), we need to check whether we have listener(s) for the packet. After commit ae7bf20a6316272acfcaef5d265b18aaa54b41e4, all packets for multicast destinations are delivered to upper layer if IFF_PROMISC or IFF_ALLMULTI is set. In fact, bug was rather ancient; the original (before the commit) intent of the dev->flags check was to skip the ipv6_chk_mcast_addr() call, assuming L2 filters packets appropriately, but it was even not true. Let's explicitly check our multicast list. Signed-off-by: YOSHIFUJI Hideaki Acked-by: David L Stevens Signed-off-by: David S. Miller commit 306dd85c1d41e20a07d1e821e27f5df4927bb5e7 Author: David Brownell Date: Thu Mar 27 00:59:02 2008 +0000 leds: Remove incorrect use of preempt_count() from leds-gpio It appears that we can't just check to see if we're in a task context ... so instead of trying that, just make the relevant leds always schedule a little worklet. Signed-off-by: David Brownell Signed-off-by: Richard Purdie commit d95cbe6158a679d50e03787bb1dc21ff73dac372 Author: Uwe Kleine-König Date: Sun Mar 9 20:42:27 2008 +0000 leds: Fix potential leds-gpio oops Call gpio_cansleep only after gpio_request succeeded avoiding an oops. Signed-off-by: Uwe Kleine-König Acked-by: David Brownell Signed-off-by: Richard Purdie commit 1e85d89fa3954eff332033c0e75f6e2442be44ed Author: Kumar Gala Date: Mon Mar 31 11:53:46 2008 -0500 [POWERPC] Fix defconfigs so we dont set both GENRTC and RTCLIB The new rtc subsystem conflicts with genrtc so don't enable GENRTC if RTCLIB is enabled. Signed-off-by: Kumar Gala commit 049c9d45531d9825bf737891163a794fca1421c5 Author: Kumar Gala Date: Mon Mar 31 11:13:21 2008 -0500 [POWERPC] fsldma: Use compatiable binding as spec Documentation/powerpc/booting-without-of.txt specifies the compatiables we should bind to for this driver (elo, eloplus). Use these instead of the extremely specific 'mpc8540' and 'mpc8349' compatiables. Acked-by: Dan Williams Signed-off-by: Kumar Gala commit 96ce1b6dc5824cc6027c954b9a2e4717c70e01b5 Author: Kim Phillips Date: Fri Mar 28 10:51:33 2008 -0500 [POWERPC] sata_fsl: reduce compatibility to fsl,pq-sata as prescribed in Documentation/powerpc/booting-without-of.txt. Signed-off-by: Kim Phillips Acked-by: Jeff Garzik Signed-off-by: Kumar Gala commit 58bb7a973b1d3c0a5127477fb049bbfc5ce02fb5 Author: Kim Phillips Date: Fri Mar 28 10:51:29 2008 -0500 [POWERPC] 83xx: enable usb in 837x rdb and 83xx defconfigs Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 8e8ff3a309ebdaad51fd7a64a6fd2a2f88b30d87 Author: Anton Vorontsov Date: Wed Mar 12 23:02:13 2008 +0300 [POWERPC] 83xx: Fix wrong USB phy type in mpc837xrdb dts Due to chip constraint MPC837x USB DR module can only use ULPI and serial PHY interfaces. The patch fixes the wrong type in dts. This patch fixes USB malfunctioning on the MPC837xE-RDB boards. Similar patch has been already applied for the MDS boards: commit 28b958859206b7010d03129611c2e444898e3ee4 Author: Li Yang Date: Thu Mar 6 18:42:26 2008 +0800 [POWERPC] 83xx: Fix wrong USB phy type in mpc837xmds dts Signed-off-by: Anton Vorontsov Signed-off-by: Kim Phillips Signed-off-by: Kumar Gala commit 26b63e995113dd48fde66c0d0d65eecc6df53172 Author: Yoshihiro Shimoda Date: Fri Mar 28 15:03:39 2008 +0900 sh: Fix up uImage compression type Fix up uImage compression type. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Paul Mundt commit 7d7f7c3ed2c519a462a4ae989ad3d55cc7f7f6ec Author: Adrian Bunk Date: Mon Mar 31 01:53:43 2008 +0300 remove include/asm-sh/floppy.h This patch removes the unused include/asm-sh/floppy.h (ARCH_MAY_HAVE_PC_FDC was not enabled). Signed-off-by: Adrian Bunk Signed-off-by: Paul Mundt commit a9edadbf790d72adf6ebed476cb5caf7743e7e4a Author: Mark Lord Date: Fri Mar 28 19:05:25 2008 -0400 fix uevent action-string regression Mark Lord wrote: > > On boot, syslog is flooded with "uevent: unsupported action-string;" messages. .. > Mar 28 14:43:29 shrimp kernel: tty ptyqd: uevent: unsupported > action-string; this will be ignored in a future kernel version > Mar 28 14:43:29 shrimp kernel: tty ptyqe: uevent: unsupported > action-string; this will be ignored in a future kernel version > Mar 28 14:43:29 shrimp kernel: tty ptyqf: uevent: unsupported > action-string; this will be ignored in a future kernel version > Mar 28 14:43:29 shrimp kernel: tty ptyr0: uevent: unsupported > action-string; this will be ignored in a future kernel version .. These messages are a regression compared with 2.6.24, which did not flood the syslog with them. The actual underlying problem was introduced in 2.6.23, when somebody made the string parsing no longer accept nul-terminated strings as a valid input to store_uevent(). Eg. "add\0" was valid prior to 2.6.23, where the code regressed to require "add" without the '\0'. This patch fixes the 2.6.23 / 2.6.24 regressions, by having the code once again tolerate the trailing '\0', if present. According to GregKH, this mainly affects older Ubuntu systems, such as the one I have here that requires this fix. Signed-off-by: Mark Lord Signed-off-by: Linus Torvalds commit eb08b6b973cb91311431c6eea3cc232b97152a84 Author: Björn Steinbrink Date: Sun Mar 30 20:42:59 2008 +0200 evdev: Release eventual input device grabs when getting disconnected When getting disconnected we need to release eventual grabs on the underlying input device as we also release the input device itself. Otherwise, we would try to release the grab when the client that requested it closes its handle, accessing the input device which might already be freed. Signed-off-by: Björn Steinbrink Signed-off-by: Linus Torvalds commit d6e4218e28b75c4701a8c8d12e989de1dc97c182 Author: Adrian Bunk Date: Sun Mar 30 19:53:23 2008 +0300 sound/oss/ac97_codec.c: restore MODULE_LICENSE I accidentally removed the module license from sound/oss/ac97_codec.c in commit 83bad1d764b836a482b88e0a1f44d7a5c3e1fee0 ("scheduled OSS driver removal") Spotted by Roland . Signed-off-by: Adrian Bunk Signed-off-by: Linus Torvalds commit f698f1f7ad69f700dd1c754aa2b4aa7acbd51703 Merge: a77df5c... 6876b3b... Author: Linus Torvalds Date: Sun Mar 30 14:27:01 2008 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm: fix for non-coherent DMA PowerPC drm: radeon: fix sparse integer as NULL pointer warnings in radeon_mem.c drm/i915: fix oops on agp=off drm/r300: fix bug in r300 userspace hardware wait emission commit a77df5cd1cde203ef11c8e5a3ca47def5f5a1687 Merge: 62ad36a... 3ec25eb... Author: Linus Torvalds Date: Sun Mar 30 14:26:27 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: libata: ATA_EHI_LPM should be ATA_EH_LPM pata_sil680: only enable MMIO on Cell blades commit 62ad36a8a6541de82984e4f1a6cff09535d68098 Merge: 8b9fc8a... 729d4de... Author: Linus Torvalds Date: Sun Mar 30 14:24:32 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: ide: fix defining SUPPORT_VLB_SYNC Revert "ide: change master/slave IDENTIFY order" commit 8b9fc8ae6517086637dd227b7490ec027c867e48 Author: Al Viro Date: Sat Mar 29 03:11:08 2008 +0000 dm9000 trivial annotation Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit b32661e06ccf4be074aca48f0d070d306d4ff8a3 Author: Al Viro Date: Sat Mar 29 03:10:58 2008 +0000 mfd/asic3: ioread/iowrite take pointer, not unsigned long Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 97cf010aeb03fd515613313ad43508e49acae7fb Author: Al Viro Date: Sat Mar 29 03:10:48 2008 +0000 zr364xx __user annotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit f10095c3ecb2116ef8b8fa7a56bd9f8b5fd89031 Author: Al Viro Date: Sat Mar 29 03:10:38 2008 +0000 powerpc/pseries/xcis: ansify Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 1b90c137cc2a0e9b813a8ae316827c493c664146 Author: Al Viro Date: Sat Mar 29 03:10:28 2008 +0000 trivial endianness annotations: infiniband core Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit a4e6d5d3817ebae167e78e5957cd9e624be200c7 Author: Al Viro Date: Sat Mar 29 03:10:18 2008 +0000 fix the broken annotations in fsldma a) every bitwise declaration will give a unique type; use typedefs. b) no need to bother with the stuff pointed to by iomem pointers, unless it's accessed directly. noderef will force us to use helpers anyway. Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit f0bb3cfde03ae6d492447883f786c6ee9a4db2ca Author: Al Viro Date: Sat Mar 29 03:10:08 2008 +0000 8250_pci: duplicate initializer in array ([pbn_b0_8_115200]) Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit e68970cdd90e3d27297a404a050bad520f9a49cd Author: Al Viro Date: Sat Mar 29 03:09:58 2008 +0000 drivers/crypto/hifn_795x.c trivial endianness annotations NB: remaining endianness warnings in the file are, AFAICS, real bugs. Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 97968358ab98c2d5fc5c3071ba70bd6a5faecbb8 Author: Al Viro Date: Sat Mar 29 03:09:48 2008 +0000 virtio_pci iomem annotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit b2ddb9019ea13fb7b62d8e45adcc468376af0de7 Author: Al Viro Date: Sat Mar 29 03:09:38 2008 +0000 dma_page_list ->base_address is a userland pointer Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 2b210adcb08c7966feeb8574cd90514f1e797ae9 Author: Al Viro Date: Sat Mar 29 03:09:18 2008 +0000 cifs: fix misannotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 7d61c4596d11d624efb4bbcbad01f9cf2b321162 Author: Al Viro Date: Sat Mar 29 03:09:28 2008 +0000 compat_sys_wait4() prototype misannotation Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 782a6de47b97d5c5f16c84f7868606fa25781fec Author: Al Viro Date: Sat Mar 29 03:09:08 2008 +0000 fix iomem misannotations in nozomi aka if you see a force-cast, be very suspicious... Signed-off-by: Al Viro Acked-and-tested-by: Frank Seidel Signed-off-by: Linus Torvalds commit 683113a33d5b9262bdf3e5cf9c60d9a2ad02cae3 Author: Al Viro Date: Sat Mar 29 03:08:58 2008 +0000 vma_map: use proper pointer types Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit cc4191dc1d1ec3282d25fb78ece2ed4a9b134b43 Author: Al Viro Date: Sat Mar 29 03:08:48 2008 +0000 drivers/char/n_tty.c misannotated prototype Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 7c43f2b888f9ca1fcb7b07abc4cbff4ca1b8e03b Author: Al Viro Date: Sat Mar 29 03:08:18 2008 +0000 NULL noise: frv cmpxchg() Signed-off-by: Al Viro Acked-by: Harvey Harrison Signed-off-by: Linus Torvalds commit 91e916cffec7c0153c5cbaa447151862a7a9a047 Author: Al Viro Date: Sat Mar 29 03:08:38 2008 +0000 net/rxrpc trivial annotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 74dbf719ed3c49687dab507967ebab9189e91ab0 Author: Al Viro Date: Sat Mar 29 03:08:28 2008 +0000 misc __user misannotations (pointless casts to long) Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 53a0c98e117272125183138aefc6b13b4a5f38a1 Author: Al Viro Date: Sat Mar 29 03:08:08 2008 +0000 ioat_dca __iomem annotations Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 5cf83b9b1279dbcdbcf91522bf766c998270ec44 Author: Al Viro Date: Sat Mar 29 03:07:48 2008 +0000 NULL noise: drivers/misc Signed-off-by: Al Viro Acked-by: Harvey Harrison Signed-off-by: Linus Torvalds commit 5fa1247a2b56f33f88432c24e109deaf91ef8281 Author: Al Viro Date: Sat Mar 29 03:07:38 2008 +0000 NULL noise: drivers/media Acked-by: Harvey Harrison Signed-off-by: Linus Torvalds commit 8481664d373e7e2cea3ea0c2d7a06c9e939b19ee Author: Al Viro Date: Sat Mar 29 03:07:58 2008 +0000 futex_compat __user annotation Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 9dce07f1a441b77a15631cf0ed0238e0baa7ed64 Author: Al Viro Date: Sat Mar 29 03:07:28 2008 +0000 NULL noise: fs/*, mm/*, kernel/* Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 1076d17ac70d1bb28fadc6f4bd96977b56897025 Author: Al Viro Date: Sat Mar 29 03:07:18 2008 +0000 jbd/jbd2 NULL noise Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit b40b5162ac4e5b94d16cd9fb0a87168b1633c7dd Author: Will Newton Date: Fri Mar 28 19:39:17 2008 +0000 Fix a typo in highres.txt A small patch for the highres timers documentation: Signed-off-by: Will newton Signed-off-by: Jonathan Corbet commit f3271f656458063e9bb0da9ba920771ecc6f024c Author: Jan Engelhardt Date: Fri Mar 28 20:09:39 2008 +0100 Fixes to the seq_file document On Friday 2008-03-28 19:20, Jonathan Corbet wrote: >commit 9756ccfda31b4c4544aa010aacf71b6672d668e8 >Date: Fri Mar 28 11:19:56 2008 -0600 > > Add the seq_file documentation patch on top: - add const qualifiers - remove void* casts - use proper specifier (%Ld is not valid) Signed-off-by: Jonathan Corbet Signed-off-by: Jan Engelhardt commit ef40203a09823bc2c69168ffa626c46365e3ca2c Author: Jonathan Corbet Date: Fri Mar 28 11:22:38 2008 -0600 Fill out information on patch tags in SubmittingPatches Add more information about the various patch tags in use, and try to establish a meaning for Reviewed-by: Signed-off-by: Jonathan Corbet commit ded4926aa28992efcb67dd27a642ddf139ac572b Author: Jonathan Corbet Date: Fri Mar 28 11:19:56 2008 -0600 Add the seq_file documentation This is an updated version of the document describing the seq_file interface. Signed-off-by: Jonathan Corbet commit 6876b3bacaaa4c73fb8752b47c84b2b7fad5422a Author: Benjamin Herrenschmidt Date: Fri Mar 28 14:23:07 2008 -0700 drm: fix for non-coherent DMA PowerPC This patch fixes bits of the DRM so to make the radeon DRI work on non-cache coherent PCI DMA variants of the PowerPC processors. It moves the few places that needs change to wrappers to that other architectures with similar issues can easily add their own changes to those wrappers, at least until we have more useful generic kernel API. Signed-off-by: Benjamin Herrenschmidt Cc: "David S. Miller" Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit 2b46278b6af0a4df43016f01a0741d8e0a76bfd4 Author: Harvey Harrison Date: Fri Mar 28 14:23:06 2008 -0700 drm: radeon: fix sparse integer as NULL pointer warnings in radeon_mem.c drivers/char/drm/radeon_mem.c:91:23: warning: Using plain integer as NULL pointer drivers/char/drm/radeon_mem.c:116:28: warning: Using plain integer as NULL pointer drivers/char/drm/radeon_mem.c:124:28: warning: Using plain integer as NULL pointer drivers/char/drm/radeon_mem.c:177:26: warning: Using plain integer as NULL pointer drivers/char/drm/radeon_mem.c:177:53: warning: Using plain integer as NULL pointer Signed-off-by: Harvey Harrison Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit 144a75fa1faa4a81530bded2e59872ef80d496b6 Author: Dave Airlie Date: Sun Mar 30 07:53:58 2008 +1000 drm/i915: fix oops on agp=off From Kernel BZ 10289 - not sure why anyone would boot an intel with no agp but it shouldn't crash. Signed-off-by: Dave Airlie commit 0c76be35194563f56e02fc1775d0fe29281e84d4 Author: Dave Airlie Date: Sun Mar 30 07:51:49 2008 +1000 drm/r300: fix bug in r300 userspace hardware wait emission This interface was originally designed wrong, confusing bit-fields and integers, major brown paper bag going back many years... But userspace only ever used 4 values so fix the interface for new users and fix the implementation to deal with the 4 values userspace has ever emitted (0x1, 0x2, 0x3, 0x6). Signed-off-by: Dave Airlie commit 729d4de96a5c090e40a918a41f63b7fb1b27c240 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 29 19:55:17 2008 +0100 ide: fix defining SUPPORT_VLB_SYNC We need to check for CONFIG_{CRIS,FRV} not {CRIS,FRV}. Signed-off-by: Bartlomiej Zolnierkiewicz commit f367bed005b06db7067fc378a5f2253fac54e5d9 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 29 19:48:21 2008 +0100 Revert "ide: change master/slave IDENTIFY order" This reverts commit b140b99c413ce410197cfcd4014e757cd745226a. [ conflict in drivers/ide/ide-probe.c fixed manually ] It turned out that probing order change causes problems for some drives: http://bugzilla.kernel.org/show_bug.cgi?id=10239 Since root causes are still being investigated and are unlikely to be fixed before 2.6.25 lets revert this change for now. As a result cable detection becomes less reliable when compared with 2.6.24 but the affected drives are useable again. Reported-by: Richard Genoud Bisected-by: Richard Genoud Signed-off-by: Bartlomiej Zolnierkiewicz commit 3ec25ebd69dc120d0590e64caaf1477aa88c8a93 Author: Tejun Heo Date: Thu Mar 27 18:37:14 2008 +0900 libata: ATA_EHI_LPM should be ATA_EH_LPM EH actions are ATA_EH_* not ATA_EHI_*. Rename ATA_EHI_LPM to ATA_EH_LPM. Signed-off-by: Tejun Heo Cc: Kristen Carlson Accardi Signed-off-by: Jeff Garzik commit 0f436eff54f90419ac1b8accfb3e6e17c4b49a4e Author: Benjamin Herrenschmidt Date: Fri Mar 28 14:52:29 2008 -0700 pata_sil680: only enable MMIO on Cell blades There have been reported regressions of the SIL 680 driver when using MMIO, so this makes it only try MMIO on Cell blades where it's known to be necessary (the host bridge doesn't do PIO on these). We'll try to find the root problem with MMIO separately. Signed-off-by: Benjamin Herrenschmidt Acked-by: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 9f09243890a4e7d2e06d40b56f26a64f88c6ec8b Author: David S. Miller Date: Fri Mar 28 19:51:40 2008 -0700 [LLC]: Kill llc_station_mac_sa symbol export. Signed-off-by: David S. Miller commit 98846b5e2363e96a2b821e211bf0169afb38a54a Merge: e8e16b7... bd6ca63... Author: David S. Miller Date: Fri Mar 28 19:44:58 2008 -0700 Merge branch 'upstream-davem' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6 commit bd6ca6375b9f18f40e814f391d9d1abaa916bc72 Author: Ingo Molnar Date: Fri Mar 28 14:41:30 2008 -0700 forcedeth: fix locking bug with netconsole While using netconsole on forcedeth, lockdep noticed the following locking bug: ================================= [ INFO: inconsistent lock state ] 2.6.24-rc6 #6 Signed-off-by: Ingo Molnar --------------------------------- inconsistent {softirq-on-W} -> {in-softirq-W} usage. udevd/719 [HC0[0]:SC1[1]:HE1:SE0] takes: (_xmit_ETHER){-+..}, at: [] dev_watchdog+0x1c/0xb9 {softirq-on-W} state was registered at: [] mark_held_locks+0x4e/0x66 [] trace_hardirqs_on+0xfe/0x136 [] _spin_unlock_irq+0x22/0x42 [] nv_start_xmit_optimized+0x347/0x37a [] netpoll_send_skb+0xa4/0x147 [] netpoll_send_udp+0x238/0x242 [] write_msg+0x6d/0x9b [] __call_console_drivers+0x4e/0x5a [] _call_console_drivers+0x57/0x5b [] release_console_sem+0x11c/0x1b9 [] register_console+0x1eb/0x1f3 [] init_netconsole+0x119/0x15f [] kernel_init+0x147/0x294 [] kernel_thread_helper+0x7/0x10 [] 0xffffffff irq event stamp: 950 hardirqs last enabled at (950): [] _spin_unlock_irq+0x22/0x42 hardirqs last disabled at (949): [] _spin_lock_irq+0xc/0x38 softirqs last enabled at (0): [] copy_process+0x375/0x126d softirqs last disabled at (947): [] do_softirq+0x61/0xc6 other info that might help us debug this: no locks held by udevd/719. stack backtrace: Pid: 719, comm: udevd Not tainted 2.6.24-rc6 #6 [] show_trace_log_lvl+0x12/0x25 [] show_trace+0xd/0x10 [] dump_stack+0x57/0x5f [] print_usage_bug+0x10a/0x117 [] mark_lock+0x121/0x402 [] __lock_acquire+0x3d1/0xb64 [] lock_acquire+0x4e/0x6a [] _spin_lock+0x23/0x32 [] dev_watchdog+0x1c/0xb9 [] run_timer_softirq+0x133/0x193 [] __do_softirq+0x78/0xed [] do_softirq+0x61/0xc6 ======================= eth1: link down The fix is to disable/restore irqs instead of disable/enable. Signed-off-by: Ingo Molnar Cc: Ayaz Abdulla Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit c6cbcad1ec0dbb08b640d1ca166a42dcb4fb8faa Author: Mike Frysinger Date: Fri Mar 28 14:41:15 2008 -0700 usb net: asix does not really need 10/100mbit The asix usb driver currently depends on NET_ETHERNET which means you cannot enable this driver if you only have 1000mbit enabled in your kernel. Since there is no real dependency between the NET_ETHERNET portion and the asix driver, simply drop it. Signed-off-by: Mike Frysinger Cc: Greg KH Cc: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 51a491c92e7a8e4c2fd9ffdb1f046429300a4619 Author: Mike Frysinger Date: Wed Mar 26 18:21:58 2008 -0700 Blackfin EMAC Driver: delete unused variables to fixup gcc warnings Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu Signed-off-by: Jeff Garzik commit e66f4168d133b9d848dead4c031d11a84caec6dc Author: Valentine Barshak Date: Thu Mar 27 17:43:57 2008 +0300 ibm_newemac: emac_tx_csum typo fix Move the "&& skb->ip_summed == CHECKSUM_PARTIAL" part out of emac_has_feature parameters. Signed-off-by: Valentine Barshak Signed-off-by: Jeff Garzik commit 5beaf7d6f89c13b2414656e994d3ee6350e99d3a Author: Michael Ellerman Date: Fri Mar 28 12:17:33 2008 +1100 Make pasemi_mac.c depend on PPC_PASEMI to prevent link errors drivers/net/pasemi_mac.c is enabled by CONFIG_PASEMI_MAC, which depends on PPC64 && PCI. However pasemi_mac.c uses several routines that are only built when PPC_PASEMI is selected. This can lead to an unbuildable config: ERROR: ".pasemi_dma_start_chan" [drivers/net/pasemi_mac.ko] undefined! So make CONFIG_PASEMI_MAC depend on PPC_PASEMI instead of PPC64. Signed-off-by: Michael Ellerman Signed-off-by: Jeff Garzik commit f70e550df83f9eb98b342257aa589860630eae41 Author: Sreenivasa Honnur Date: Fri Mar 28 17:35:36 2008 -0400 S2io: Version update for Tx completion patch - Updated version number. - Resubmitting with correct version update. - this patch to be applied for upstream-davem branch Signed-off-by: Surjit Reang Signed-off-by: Sreenivasa Honnur Signed-off-by: Jeff Garzik commit 1424fd904c5424922f7403a21ad6419ae7e7c76e Author: David Brownell Date: Fri Mar 28 14:50:26 2008 -0700 drivers/net/usb/pegasus.c: remove in_atomic() check Remove superfluous in-atomic() check; ethtool MII ops are called from task context. Signed-off-by: David Brownell Cc: Greg KH Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 47df976c4ef1456b39b59caf4b8fc64f77e0e5b9 Author: Peter Korsgaard Date: Fri Mar 28 22:25:29 2008 +0100 dm9601: Fix multicast hash table handling The loop forgot to walk the net->mc_list list, so only the first multicast address was programmed into the hash table. Signed-off-by: Jeff Garzik commit 209261c019f56d77f6a0cc38048e9a6f25867589 Author: Grant Grundler Date: Sun Mar 23 23:23:10 2008 -0600 [netdrvr] tulip_read_eeprom fixes for BUG 4420 If "location" is > "addr_len" bits, the high bits of location would interfere with the READ_CMD sent to the eeprom controller. A patch was submitted to bug: http://bugzilla.kernel.org/show_bug.cgi?id=4420 which simply truncated the "location", read whatever was in "location modulo addr_len", and returned that value. That avoids confusing the eeprom but seems like the wrong solution to me. Correct would be to not read beyond "1 << addr_len" address of the eeprom. I am submitting two changes to implement this: 1) tulip_read_eeprom will return zero (since we can't return -EINVAL) if this is attempted (defensive programming). 2) In tulip_core.c, fix the tulip_read_eeprom caller so they don't iterate past addr_len bits and make sure the entire tp->eeprom[] array is cleared. I konw we don't strictly need both. I would prefer both in the tree since it documents the issue and provides a second "defense" from the bug from creeping back in. Signed-off-by: Grant Grundler Signed-off-by: Jeff Garzik commit e8e16b706e8406f1ab3bccab16932ebc513896d8 Author: David S. Miller Date: Fri Mar 28 17:30:18 2008 -0700 [INET]: inet_frag_evictor() must run with BH disabled Based upon a lockdep trace from Dave Jones. Signed-off-by: David S. Miller commit 0ef4730927c54cac5006759fa0cf50fbeff9d191 Author: Matti Linnanvuori Date: Fri Mar 28 16:33:00 2008 -0700 net: Comment dev_kfree_skb_irq and dev_kfree_skb_any better Comment dev_kfree_skb_irq and dev_kfree_skb_any better. Signed-off-by: Matti Linnanvuori Signed-off-by: David S. Miller commit a5a04819c5740cb1aa217af2cc8f5ef26f33d744 Author: Joonwoo Park Date: Fri Mar 28 16:28:36 2008 -0700 [LLC]: station source mac address kill unnecessary llc_station_mac_sa. Signed-off-by: Joonwoo Park Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 27785d83e4256fedeff45256d4c827fdcb47f2ce Author: Joonwoo Park Date: Fri Mar 28 16:27:33 2008 -0700 [LLC]: bogus llc packet length discard llc packet which has bogus packet length. Signed-off-by: Joonwoo Park Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 2ba2506ca7ca62c56edaa334b0fe61eb5eab6ab0 Author: Herbert Xu Date: Fri Mar 28 16:25:26 2008 -0700 [NET]: Add preemption point in qdisc_run The qdisc_run loop is currently unbounded and runs entirely in a softirq. This is bad as it may create an unbounded softirq run. This patch fixes this by calling need_resched and breaking out if necessary. It also adds a break out if the jiffies value changes since that would indicate we've been transmitting for too long which starves other softirqs. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 32aced7509cb20ef3ec67c9b56f5b55c41dd4f8d Author: Rusty Russell Date: Fri Mar 28 16:23:19 2008 -0700 [NET]: Don't send ICMP_FRAG_NEEDED for GSO packets Commit 9af3912ec9e30509b76cb376abb65a4d8af27df3 ("[NET] Move DF check to ip_forward") added a new check to send ICMP fragmentation needed for large packets. Unlike the check in ip_finish_output(), it doesn't check for GSO. Signed-off-by: Rusty Russell Signed-off-by: David S. Miller commit d41a95e04ae80b77ddc186d0d97e6b439684adb8 Author: David S. Miller Date: Fri Mar 28 16:19:26 2008 -0700 [ATM] firestream: Fix uninitialized var warning. All code paths set tmc0 in some way, but GCC can't see that for some reason. Explicitly initialize to zero. Signed-off-by: David S. Miller commit d5fb2962c6157495e1365e4f30568ed3830d35a7 Author: Robert P. J. Day Date: Fri Mar 28 16:17:38 2008 -0700 bluetooth: replace deprecated RW_LOCK_UNLOCKED macros The older RW_LOCK_UNLOCKED macros defeat lockdep state tracing so replace them with the newer __RW_LOCK_UNLOCKED macros. Signed-off-by: Robert P. J. Day Acked-by: Marcel Holtmann Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 293a3839304cac32e58929db0c23e00a509fbfc5 Author: Robert P. J. Day Date: Fri Mar 28 16:16:39 2008 -0700 lapb: use the shorter LIST_HEAD form for brevity Signed-off-by: Robert P. J. Day Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 6952d8923bcc8d6b8b43b065cfe9a31bb24f0d58 Author: David S. Miller Date: Fri Mar 28 16:15:38 2008 -0700 [BOND]: Fix warning in bond_sysfs.c original_mtu is only used if we end up with a non-NULL dev, and it is assigned in all such cases, but GCC can't see that. Signed-off-by: David S. Miller commit c819914e0d5cc85cccf5fe7542fcb9586286bc28 Author: FUJITA Tomonori Date: Fri Mar 28 15:56:01 2008 -0700 sparc64: remove unused calc_npages() in iommu_common.h Signed-off-by: FUJITA Tomonori Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit f08802572965873af97e74337d5740bfa2542941 Author: FUJITA Tomonori Date: Fri Mar 28 15:55:41 2008 -0700 sparc64: add the segment boundary checking to IOMMUs while merging SG entries Some IOMMUs allocate memory areas spanning LLD's segment boundary limit. It forces low level drivers to have a workaround to adjust scatter lists that the IOMMU builds. We are in the process of making all the IOMMUs respect the segment boundary limits to remove such work around in LLDs. SPARC64 IOMMUs were rewritten to use the IOMMU helper functions and the commit 89c94f2f70d093f59b55d3ea8042d13889169346 made the IOMMUs not allocate memory areas spanning the segment boundary limit. However, SPARC64 IOMMUs allocate memory areas first then try to merge them (while some IOMMUs walk through all the sg entries to see how they can be merged first and allocate memory areas). So SPARC64 IOMMUs also need the boundary limit checking when they try to merge sg entries. Signed-off-by: FUJITA Tomonori Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 76cc86ee6b3c261b96ea3ee2f4c6dfd127335881 Author: David S. Miller Date: Thu Mar 27 16:51:44 2008 -0700 [SPARC64]: Don't open-code {get,put}_cpu_var() in flush_tlb_pending(). Noticed by Andrew Morton. Signed-off-by: David S. Miller commit af8be4e4b316df36a00c1e52a9970c253783b57e Merge: d478376... 6758f95... Author: Linus Torvalds Date: Fri Mar 28 15:23:01 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: [PATCH] mnt_expire is protected by namespace_sem, no need for vfsmount_lock [PATCH] do shrink_submounts() for all fs types [PATCH] sanitize locking in mark_mounts_for_expiry() and shrink_submounts() [PATCH] count ghost references to vfsmounts [PATCH] reduce stack footprint in namespace.c commit d478376cb0dc9ab16a2b6e02fd8cd1174e724c64 Author: Jesper Juhl Date: Fri Mar 28 14:16:12 2008 -0700 driver core: fix small mem leak in driver_add_kobj() The Coverity checker spotted that we leak the storage allocated to 'name' in int driver_add_kobj(). The leak looks legit to me - this is the code : int driver_add_kobj(struct device_driver *drv, struct kobject *kobj, const char *fmt, ...) { va_list args; char *name; int ret; va_start(args, fmt); name = kvasprintf(GFP_KERNEL, fmt, args); ^^^^^^^^ This dynamically allocates space... va_end(args); if (!name) return -ENOMEM; return kobject_add(kobj, &drv->p->kobj, "%s", name); ^^^^^^^^ This neglects to free the space allocated } Inside kobject_add() a copy of 'name' will be made and used. As far as I can see, Coverity is correct in flagging this as a leak, but I'd like some configmation before the patch is applied. This should fix it. Signed-off-by: Jesper Juhl Cc: Greg KH Cc: Kay Sievers Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4cdc1d1fa5c5ac14dc21be19832f02fd0b83867e Author: Alasdair G Kergon Date: Fri Mar 28 14:16:10 2008 -0700 dm io: write error bits form long not int write_err is an unsigned long used with set_bit() so should not be passed around as unsigned int. http://bugzilla.kernel.org/show_bug.cgi?id=10271 Signed-off-by: Alasdair G Kergon Cc: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d250dad64a154a9f95ec3574e2ffc97d9f61a19c Author: Andrew Morton Date: Fri Mar 28 14:16:09 2008 -0700 memstick: suppress uninitialized-var warning drivers/memstick/host/tifm_ms.c: In function 'tifm_ms_data_event': drivers/memstick/host/tifm_ms.c:185: warning: 'p_off' may be used uninitialized in this function Cc: Alex Dubov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4a5691c0f7b65b7aa9d237e55f05e691352caac7 Author: Anton Vorontsov Date: Fri Mar 28 14:16:09 2008 -0700 mtd: maps/physmap: fix oops in suspend/resume/shutdown ops # reboot ... [ 42.351266] Flash device refused suspend due to active operation (state 0) [ 42.358195] Unable to handle kernel NULL pointer dereference at virtual address 00000078 [ 42.360060] pgd = c7d9c000 [ 42.362769] [00000078] *pgd=a7d8d031, *pte=00000000, *ppte=00000000 [ 42.372902] Internal error: Oops: 17 [#1] [ 42.376911] Modules linked in: [ 42.379980] CPU: 0 Not tainted (2.6.25-rc2-10642-ge8f2594-dirty #73) [ 42.380000] PC is at physmap_flash_shutdown+0x28/0x54 ... [ 42.380000] Backtrace: [ 42.380000] [] (physmap_flash_shutdown+0x0/0x54) from [] (platform_drv_shutdown+0x20/0x24) [ 42.380000] r5:28121969 r4:c0229e08 [ 42.380000] [] (platform_drv_shutdown+0x0/0x24) from [] (device_shutdown+0x60/0x88) [ 42.380000] [] (device_shutdown+0x0/0x88) from [] (kernel_restart_prepare+0x2c/0x3c) [ 42.380000] r4:00000000 [ 42.380000] [] (kernel_restart_prepare+0x0/0x3c) from [] (kernel_restart+0x14/0x48) [ 42.380000] [] (kernel_restart+0x0/0x48) from [] (sys_reboot+0xe8/0x1f8) [ 42.380000] r4:01234567 [ 42.380000] [] (sys_reboot+0x0/0x1f8) from [] (ret_fast_syscall+0x0/0x2c) [ 42.380000] r7:00000058 r6:00000004 r5:00000001 r4:00000000 [ 42.380000] Code: 0a000009 e7953004 e1a00003 e1a0e00f (e593f078) [ 42.650051] ---[ end trace 6d6c26a0fc3141de ]--- Segmentation fault INIT: no more processes left in this runlevel While looping for mtd[i]s, we should stop at the mtd[i] == NULL. This patch also removes unnecessary "if (info)" checks: suspend/resume/shutdown ops are executed only if probe() is succeeded, so info is guaranteed to be !NULL. Signed-off-by: Anton Vorontsov Cc: David Brownell Cc: David Woodhouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3f1e9070f63b0eecadfa059959bf7c9dbe835962 Author: Milan Broz Date: Fri Mar 28 14:16:07 2008 -0700 dm crypt: fix ctx pending Fix regression in dm-crypt introduced in commit 3a7f6c990ad04e6f576a159876c602d14d6f7fef ("dm crypt: use async crypto"). If write requests need to be split into pieces, the code must not process them in parallel because the crypto context cannot be shared. So there can be parallel crypto operations on one part of the write, but only one write bio can be processed at a time. This is not optimal and the workqueue code needs to be optimized for parallel processing, but for now it solves the problem without affecting the performance of synchronous crypto operation (most of current dm-crypt users). http://bugzilla.kernel.org/show_bug.cgi?id=10242 http://bugzilla.kernel.org/show_bug.cgi?id=10207 Signed-off-by: Milan Broz Signed-off-by: Alasdair G Kergon Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ab473a52500528a276920a26cb35b722a868ab6e Author: Ananth N Mavinakayanahalli Date: Fri Mar 28 14:16:07 2008 -0700 kprobes: another MAINTAINERS update Prasanna has taken a new job. Update the MAINTAINERS file Signed-off-by: Ananth N Mavinakayanahalli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 363df3994f034e7fe87d146fcf19f6a3ab2a2291 Author: Michael Hennerich Date: Fri Mar 28 14:16:06 2008 -0700 blackfin video driver: fix bug when opening/reading/mmaping BF54x and BF52x framebuffer simultaneously http://blackfin.uclinux.org/gf/project/uclinux-dist/tracker/?action=TrackerItemEdit&tracker_item_id=3974 opening/reading/mmaping BF54x and BF52x framebuffer simultaneously triggers BUG: failure at mm/nommu.c:470/add_nommu_vma() Add VM_SHARED to the default vm_flags Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu Cc: Geert Uytterhoeven Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7ef9861c7496185e96fb0a3b57ff0b4880876d0a Author: Bryan Wu Date: Fri Mar 28 14:16:05 2008 -0700 blackfin video driver: update the BF52x EZKIT video framebuffer driver according to LKML review - Allocate pseudo_palette together with fbinfo - Code cleanup Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu Cc: Geert Uytterhoeven Cc: "Antonino A. Daplas" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a99acc832de1104afaba02d7c2576fd9b9fd6422 Author: Jean Delvare Date: Fri Mar 28 14:16:04 2008 -0700 pci: revert SMBus unhide on HP Compaq nx6110 This reverts commit 3c0a654e390d00fef9d8faed758f5e1e8078adb5 and fixes kernel bug #10245: http://bugzilla.kernel.org/show_bug.cgi?id=10245 The HP Compaq nc6120 has the same PCI sub-device ID as the nx6110, and the SMBus is used by ACPI for thermal management on the nc6120, so Linux should not attach a native driver to it. This means that this quirk is unsafe and has to be removed. I also added a comment to help developers realize that adding new IDs to this SMBus unhiding quirk table should be done only with great care, and in particular only after checking that ACPI is not making use of the SMBus. Signed-off-by: Jean Delvare Cc: Tomasz Koprowski Acked-by: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ac7ec85bcc70ef605657fb2d1106d27ab3bd131 Author: Christoph Hellwig Date: Fri Mar 28 14:16:03 2008 -0700 ext3: don't export ext3_fs.h and jbd.h Neither of the headers actually compiles when included from userpsace nor should it be made available as userspace tools should be using the libraries or at least headers from e2fsprogs. Signed-off-by: Christoph Hellwig Acked-by: "Theodore Ts'o" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3afe3925987adc3fc052abe404e44520c2072fc8 Author: Harvey Harrison Date: Fri Mar 28 14:16:01 2008 -0700 kernel: add bit rotation helpers for 16 and 8 bit Will replace open-coded variants elsewhere. Done in the same style as the 32-bit versions. Signed-off-by: Harvey Harrison Acked-by: Randy Dunlap Cc: Johannes Berg Cc: John W. Linville Cc: Joe Perches Cc: Jiri Benc Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 589499c04b9929ce3de9a9cc591f8a24cf1ebc91 Author: Alessandro Zummo Date: Fri Mar 28 14:15:59 2008 -0700 ixp4xx-beeper: add MODULE_ALIAS The following patch allows ixp4xx-beeper to be loaded by udev automatically when compiled as a module with kernel versions 2.4.24 and greater. This patch is required because 43cc71eed1250755986da4c0f9898f9a635cb3bf ("platform: prefix MODALIAS with "platform:"") changed the modalias string to have the extra prefix. LKG7102D7:~# udevinfo -a -p /sys/devices/platform/ixp4xx-beeper.4 looking at device '/devices/platform/ixp4xx-beeper.4': KERNEL=="ixp4xx-beeper.4" SUBSYSTEM=="platform" DRIVER=="" ATTR{modalias}=="platform:ixp4xx-beeper" udev therefore tries to modprobe platform:ixp4xx-beeper instead of ixp4xx-beeper. LKG7102D7:~# udevtest /sys/devices/platform/ixp4xx-beeper.4 ... import_uevent_var: import into environment: 'PHYSDEVBUS=platform' import_uevent_var: import into environment: 'MODALIAS=platform:ixp4xx-beeper' main: looking at device '/devices/platform/ixp4xx-beeper.4' from subsystem 'platform' wait_for_sysfs: file '/sys/devices/platform/ixp4xx-beeper.4/bus' appeared after 0 loops main: run: 'socket:/org/kernel/udev/monitor' main: run: '/sbin/modprobe --use-blacklist platform:ixp4xx-beeper' With this patch, depmod adds an alias line (see below) to modules.alias which allows modprobe to load the right module. alias platform:ixp4xx-beeper ixp4xx-beeper Signed-off-by: Gordon Farquharson Signed-off-by: Alessandro Zummo Cc: Kay Sievers Cc: David Brownell Cc: Atsushi Nemoto Cc: Greg Kroah-Hartman Cc: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 773647a09add08a6e8165843a338220a6f833705 Author: Andy Whitcroft Date: Fri Mar 28 14:15:58 2008 -0700 update checkpatch.pl to version 0.16 This version brings proper quote tracking across lines, and brings the handling of comments into the same mechanism ensuring nesting is correctly handled. It brings the usual flurry of fixes for false positives. It also brings a number of new checks. The most contentious change will likely be the checks for NR_CPUS as this throws some new warnings in kernel/sched.c. Of note: - all new quote tracking across lines - all new comment tracking - new more direct, less ambigious wording for some warnings - recommends mutexes and completions over semaphores - recommends strict_strto* over simple_strto* - report on direct use of NR_CPUS Andy Whitcroft (22): Version: 0.16 string quote tracking should cross line boundaries check spacing round -> correctly across newlines checks for linux/ against asm/ include files should be warnings standardise on 'required' and 'prohibited' take the first end of condition when parsing statements values: cope with unbalanced brackets preprocessor #elif is not a function preprocessor #if should not trigger trailing statement checks test: allow us to limit output to a single error recommend real mutexes over semaphores asm checks should mirror those for __asm__ warn on semaphores being used in place of completions trailing ; on control structure should ignore do {} while (); recommend strict_strtoX over simple_strtoX redo comment handling as a quote type use of NR_CPUS is normally wrong consistant spacing should only be about spaces if brace check suppression should only apply to the top-levels use tr/// to align spacing for operators move to using four parameter form of substr check and report modifications to include/asm Signed-off-by: Andy Whitcroft Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3387b804d8850494bdf91d16800925a3fd46e37d Author: Andrew Morton Date: Fri Mar 28 14:15:57 2008 -0700 net/9p/trans_fd.c:p9_trans_fd_init(): module_init functions should return 0 on success Mar 23 09:06:31 opensuse103 kernel: Installing 9P2000 support Mar 23 09:06:31 opensuse103 kernel: sys_init_module: '9pnet_fd'->init suspiciously returned 1, it should follow 0/-E convention Mar 23 09:06:31 opensuse103 kernel: sys_init_module: loading module anyway... Mar 23 09:06:31 opensuse103 kernel: Pid: 5323, comm: modprobe Not tainted 2.6.25-rc6-git7-default #1 Mar 23 09:06:31 opensuse103 kernel: [] sys_init_module+0x172b/0x17c9 Mar 23 09:06:31 opensuse103 kernel: [] sys_mmap2+0x62/0x77 Mar 23 09:06:31 opensuse103 kernel: [] sysenter_past_esp+0x6d/0xa9 Mar 23 09:06:31 opensuse103 kernel: ======================= Cc: Latchesar Ionkov Cc: Eric Van Hensbergen Cc: David S. Miller Cc: "Rafael J. Wysocki" Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f706d5d22c35e18ed13a4b2b4991aac75bf39df5 Author: Dave Jones Date: Fri Mar 28 14:15:56 2008 -0700 audit: silence two kerneldoc warnings in kernel/audit.c Silence two kerneldoc warnings. Warning(kernel/audit.c:1276): No description found for parameter 'string' Warning(kernel/audit.c:1276): No description found for parameter 'len' [also fix a typo for bonus points] Signed-off-by: Dave Jones Acked-by: Randy Dunlap Cc: Al Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5214b729e1c2dc3af8f55e6c4c548844c3bea0f5 Author: Sven Schnelle Date: Fri Mar 28 14:15:55 2008 -0700 afs: prevent double cell registration kafs doesn't check if the cell already exists - so if you do an echo "add newcell.org 1.2.3.4" >/proc/fs/afs/cells it will try to create this cell again. kobject will also complain about a double registration. To prevent such problems, return -EEXIST in that case. Signed-off-by: Sven Schnelle Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fac533c2505b39faf30492cd3f0844c0da51c75c Author: David Howells Date: Fri Mar 28 14:15:54 2008 -0700 afs: add a MAINTAINERS record for AFS Add a MAINTAINERS record for AFS. Signed-off-by: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b41e74ad1b0bf7bc51765ae74e5dc564afc3e48 Author: Dmitri Monakhov Date: Fri Mar 28 14:15:52 2008 -0700 vfs: fix data leak in nobh_write_end() Current nobh_write_end() implementation ignore partial writes(copied < len) case if page was fully mapped and simply mark page as Uptodate, which is totally wrong because area [pos+copied, pos+len) wasn't updated explicitly in previous write_begin call. It simply contains garbage from pagecache and result in data leakage. #TEST_CASE_BEGIN: ~~~~~~~~~~~~~~~~ In fact issue triggered by classical testcase open("/mnt/test", O_RDWR|O_CREAT|O_TRUNC, 0666) = 3 ftruncate(3, 409600) = 0 writev(3, [{"a", 1}, {NULL, 4095}], 2) = 1 ##TESTCASE_SOURCE: ~~~~~~~~~~~~~~~~~ #include #include #include #include #include #include int main(int argc, char **argv) { int fd, ret; void* p; struct iovec iov[2]; fd = open(argv[1], O_RDWR|O_CREAT|O_TRUNC, 0666); ftruncate(fd, 409600); iov[0].iov_base="a"; iov[0].iov_len=1; iov[1].iov_base=NULL; iov[1].iov_len=4096; ret = writev(fd, iov, sizeof(iov)/sizeof(struct iovec)); printf("writev = %d, err = %d\n", ret, errno); return 0; } ##TESTCASE RESULT: ~~~~~~~~~~~~~~~~~~ [root@ts63 ~]# mount | grep mnt2 /dev/mapper/test on /mnt2 type ext2 (rw,nobh) [root@ts63 ~]# /tmp/writev /mnt2/test writev = 1, err = 0 [root@ts63 ~]# hexdump -C /mnt2/test 00000000 61 65 62 6f 6f 74 00 00 f0 b9 b4 59 3a 00 00 00 |aeboot.....Y:...| 00000010 20 00 00 00 00 00 00 00 21 00 00 00 00 00 00 00 | .......!.......| 00000020 df df df df df df df df df df df df df df df df |................| 00000030 3a 00 00 00 2a 00 00 00 21 00 00 00 00 00 00 00 |:...*...!.......| 00000040 60 c0 8c 00 00 00 00 00 40 4a 8d 00 00 00 00 00 |`.......@J......| 00000050 00 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00 |........A.......| 00000060 74 69 6d 65 20 64 64 20 69 66 3d 2f 64 65 76 2f |time dd if=/dev/| 00000070 6c 6f 6f 70 30 20 20 6f 66 3d 2f 64 65 76 2f 6e |loop0 of=/dev/n| skip.. 00000f50 00 00 00 00 00 00 00 00 31 00 00 00 00 00 00 00 |........1.......| 00000f60 6d 6b 66 73 2e 65 78 74 33 20 2f 64 65 76 2f 76 |mkfs.ext3 /dev/v| 00000f70 7a 76 67 2f 74 65 73 74 20 2d 62 34 30 39 36 00 |zvg/test -b4096.| 00000f80 a0 fe 8c 00 00 00 00 00 21 00 00 00 00 00 00 00 |........!.......| 00000f90 23 31 32 30 35 39 35 30 34 30 34 00 3a 00 00 00 |#1205950404.:...| 00000fa0 20 00 8d 00 00 00 00 00 21 00 00 00 00 00 00 00 | .......!.......| 00000fb0 d0 cf 8c 00 00 00 00 00 10 d0 8c 00 00 00 00 00 |................| 00000fc0 00 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00 |........A.......| 00000fd0 6d 6f 75 6e 74 20 2f 64 65 76 2f 76 7a 76 67 2f |mount /dev/vzvg/| 00000fe0 74 65 73 74 20 20 2f 76 7a 20 2d 6f 20 64 61 74 |test /vz -o dat| 00000ff0 61 3d 77 72 69 74 65 62 61 63 6b 00 00 00 00 00 |a=writeback.....| 00001000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| As you can see file's page contains garbage from pagecache instead of zeros. #TEST_CASE_END Attached patch: - Add sanity check BUG_ON in order to prevent incorrect usage by caller, This is function invariant because page can has buffers and in no zero *fadata pointer at the same time. - Always attach buffers to page is it is partial write case. - Always switch back to generic_write_end if page has buffers. This is reasonable because if page already has buffer then generic_write_begin was called previously. Signed-off-by: Dmitri Monakhov Reviewed-by: Nick Piggin Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d4a788f15302877ff2cb08f22009e290a36a209 Author: YAMAMOTO Takashi Date: Fri Mar 28 14:15:50 2008 -0700 memcgroup: fix spurious EBUSY on memory cgroup removal Call mm_free_cgroup earlier. Otherwise a reference due to lazy mm switching can prevent cgroup removal. Signed-off-by: YAMAMOTO Takashi Acked-by: Balbir Singh Cc: KAMEZAWA Hiroyuki Cc: Paul Menage Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c703d35fa91911dd92a18c31a718853f483ad80 Author: Jonathan Corbet Date: Fri Mar 28 14:15:49 2008 -0700 in_atomic(): document why it is unsuitable for general use Discourage people from inappropriately using in_atomic() Signed-off-by: Jonathan Corbet Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f67e74ca690d9f168cc468b7d714caad492740a6 Author: Andrew Morton Date: Fri Mar 28 14:15:49 2008 -0700 drivers/char/drm/ati_pcigart.c: fix printk warning drivers/char/drm/ati_pcigart.c: In function 'drm_ati_pcigart_init': drivers/char/drm/ati_pcigart.c:125: warning: format '%08X' expects type 'unsigned int', but argument 3 has type 'dma_addr_t' Cc: Dave Airlie Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f5afaed58a7d560fb7ba4a028662de22011a7a7 Author: Sebastian Siewior Date: Fri Mar 28 14:15:47 2008 -0700 mtd: nand: add out label in rfc_from4 This has been forgotten in commit f5bbdacc419 ("[MTD] NAND Modularize read function") and nobody compiled the driver. Signed-off-by: Sebastian Siewior Cc: Thomas Gleixner Cc: David Woodhouse Cc: Joern Engel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c312058b2e530722c7bd30c1b6f26eea35dc5fe Author: Andrew Morton Date: Fri Mar 28 11:47:34 2008 -0700 Avoid false positive warnings in kmap_atomic_prot() with DEBUG_HIGHMEM I believe http://bugzilla.kernel.org/show_bug.cgi?id=10318 is a false positive. There's no way in which networking will be using highmem pages here, so it won't be taking the KM_USER0 kmap slot, so there's no point in performing these checks. Cc: Pawel Staszewski Cc: Ingo Molnar Acked-by: Christoph Lameter Cc: "David S. Miller" Signed-off-by: Andrew Morton [ Really sad. We lose almost all real-life coverage of the debug tests with this patch. Now it will only report problems for the cases where people actually end up using a HIGHMEM page, not when they just _might_ use one. - Linus ] Signed-off-by: Linus Torvalds commit 1f71f50342c6fe4fbdebe63b0fd196972a70e281 Author: Roland Dreier Date: Fri Mar 28 10:28:17 2008 -0700 RDMA/cxgb3: Program hardware IRD with correct value Because of a typo in iwch_accept_cr(), the cxgb3 connection handling code programs the hardware IRD (incoming RDMA read queue depth) with the value that is passed in for the ORD (outgoing RDMA read queue depth). In particular this means that if an application passes in IRD > 0 and ORD = 0 (which is a completely sane and valid thing to do for an app that expects only incoming RDMA read requests), then the hardware will end up programmed with IRD = 0 and the app will fail in a mysterious way. Fix this by using "ep->ird" instead of "ep->ord" in the intended place. Signed-off-by: Roland Dreier Acked-by: Steve Wise Signed-off-by: Linus Torvalds commit 8c178beeb20ce3801c4851d41342d0ca32ad292c Merge: 48d3d82... a2ceff5... Author: Linus Torvalds Date: Fri Mar 28 10:34:21 2008 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] Fix missed hardware breakpoints across multiple threads commit 0b977608e6c8ba2d40445999bbcac8b411bf3f6a Author: Ke Wei Date: Thu Mar 27 14:55:41 2008 +0800 [SCSI] mvsas: check subsystem id add support for mv6480 chip which subsystem id is 6480 in spite of device id is 6440. Signed-off-by: Ke Wei Signed-off-by: James Bottomley commit e9ff91b6927079307b5d481a93beac4134e923eb Author: Ke Wei Date: Thu Mar 27 14:55:33 2008 +0800 [SCSI] mvsas: get phy info. removed unused code and attached SATA address makes use of port id. enable HBA interrupt after calling sas_register_ha(); Signed-off-by: Ke Wei Signed-off-by: James Bottomley commit 963829e650516d140e1f2ddaa6c9ba7cce4c2c6a Author: Ke Wei Date: Thu Mar 27 14:55:23 2008 +0800 [SCSI] mvsas: fix the buffer of rx DMA overflow bug fix the buffer of rx DMA overflow bug. fix default queue depth. Signed-off-by: Ke Wei Signed-off-by: James Bottomley commit 8121ed420285885654af133a6ca1919590f98917 Author: Ke Wei Date: Thu Mar 27 14:55:04 2008 +0800 [SCSI] mvsas: retry aborting task. Signed-off-by: Ke Wei Signed-off-by: James Bottomley commit 4e52fc0a0a2ec2158691efba3f149f6416481255 Author: Ke Wei Date: Thu Mar 27 14:54:50 2008 +0800 [SCSI] mvsas: check hd whether unplugged if unplugged, driver's queuecommand function will return SAS_PHY_DOWN. task->lldd_task is used for saving its slot info. Signed-off-by: Ke Wei Signed-off-by: James Bottomley commit 1fce5e5da03b18505179882be27cc697f24d6b58 Author: Ke Wei Date: Thu Mar 27 14:54:23 2008 +0800 [SCSI] mvsas : interrupt handling When a slot is busy, we will not free this slot until slot reset is completed. When unplugged the disk, we should release all command tasks with unplugged port that have been sent. If MVS_USE_TASKLET is defined, we can enable tasklet. Default is off. Signed-off-by: Ke Wei Signed-off-by: James Bottomley commit ee1f1c2ef95258351e1ecb89a2dbd2763cb3a6ed Author: Ke Wei Date: Thu Mar 27 14:53:47 2008 +0800 [SCSI] mvsas: a tag handler implementation add a new tag handler to create slot num. When a slot num is busy, new task can't hit this bit which was already used. plumb in phy speeds. Signed-off-by: Ke Wei Signed-off-by: James Bottomley commit 0eb9ddd82a5cb08f3622345e723d236eefa0039f Author: Ke Wei Date: Thu Mar 27 14:53:24 2008 +0800 [SCSI] mvsas: fill in error info record and phy mode6 bits. and remove some unused members from struct. Signed-off-by: Ke Wei Signed-off-by: James Bottomley commit 48d3d8263c491822d50e64547bae5f6b4a54ec59 Author: Ingo Molnar Date: Fri Mar 28 14:28:03 2008 +0100 revert "ACPI: drivers/acpi: elide a non-zero test on a result that is never 0" Revert commit 1192aeb957402b45f311895f124e4ca41206843c ("ACPI: drivers/acpi: elide a non-zero test on a result that is never 0") because it turns out that thermal_cooling_device_register() does actually return NULL if CONFIG_THERMAL is turned off (then the routine turns into a dummy inline routine in the header files that returns NULL unconditionally). This was found with randconfig testing, causing a crash during bootup: initcall 0x78878534 ran for 13 msecs: acpi_button_init+0x0/0x51() Calling initcall 0x78878585: acpi_fan_init+0x0/0x2c() BUG: unable to handle kernel NULL pointer dereference at 00000000 IP: [<782b8ad0>] acpi_fan_add+0x7d/0xfd *pde = 00000000 Oops: 0000 [#1] Modules linked in: Pid: 1, comm: swapper Not tainted (2.6.25-rc7-sched-devel.git-x86-latest.git #14) EIP: 0060:[<782b8ad0>] EFLAGS: 00010246 CPU: 0 EIP is at acpi_fan_add+0x7d/0xfd EAX: b787c718 EBX: b787c400 ECX: b782ceb4 EDX: 00000007 ESI: 00000000 EDI: b787c6f4 EBP: b782cee0 ESP: b782cecc DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 Process swapper (pid: 1, ti=b782c000 task=b7846000 task.ti=b782c000) Stack: b787c459 00000000 b787c400 78790888 b787c60c b782cef8 782b6fb8 ffffffda b787c60c 00000000 78790958 b782cf0c 783005d7 b787c60c 78790958 78790584 b782cf1c 783007f6 b782cf28 00000000 b782cf40 782ffc4a 78790958 b794d558 Call Trace: [<782b6fb8>] ? acpi_device_probe+0x3e/0xdb [<783005d7>] ? driver_probe_device+0x82/0xfc [<783007f6>] ? __driver_attach+0x3a/0x70 [<782ffc4a>] ? bus_for_each_dev+0x3e/0x60 [<7830048c>] ? driver_attach+0x14/0x16 [<783007bc>] ? __driver_attach+0x0/0x70 [<7830006a>] ? bus_add_driver+0x9d/0x1b0 [<783008c3>] ? driver_register+0x47/0xa3 [<7813db00>] ? timespec_to_ktime+0x9/0xc [<782b7331>] ? acpi_bus_register_driver+0x3a/0x3c [<78878592>] ? acpi_fan_init+0xd/0x2c [<78863656>] ? kernel_init+0xac/0x1f9 [<788635aa>] ? kernel_init+0x0/0x1f9 [<78114563>] ? kernel_thread_helper+0x7/0x10 ======================= Code: 6e 78 e8 57 44 e7 ff 58 e9 93 00 00 00 8b 55 f0 8d bb f4 02 00 00 80 4b 2d 10 8b 03 e8 87 cb ff ff 8d 83 18 03 00 00 80 63 2d ef 35 00 00 00 00 50 68 e8 9c 6e 78 e8 22 44 e7 ff b9 b6 9c 6e EIP: [<782b8ad0>] acpi_fan_add+0x7d/0xfd SS:ESP 0068:b782cecc ---[ end trace 778e504de7e3b1e3 ]--- Kernel panic - not syncing: Attempted to kill init! Signed-off-by: Ingo Molnar Acked-by: Julia Lawall Signed-off-by: Linus Torvalds commit 1035d60d92325bddcc4248df5a27dcd5698f5931 Author: Gordon Farquharson Date: Wed Mar 26 04:57:49 2008 +0100 [ARM] 4875/1: Add MODULE_ALIAS to ixp4xx-beeper module The following patch allows ixp4xx-beeper to be loaded by udev automatically when compiled as a module with kernel versions 2.4.24 and greater. This patch is required because commit 43cc71eed1250755986da4c0f9898f9a635cb3bf adds "platform:" to the modalias string. LKG7102D7:~# udevinfo -a -p /sys/devices/platform/ixp4xx-beeper.4 looking at device '/devices/platform/ixp4xx-beeper.4': KERNEL=="ixp4xx-beeper.4" SUBSYSTEM=="platform" DRIVER=="" ATTR{modalias}=="platform:ixp4xx-beeper" udev therefore tries to modprobe platform:ixp4xx-beeper instead of ixp4xx-beeper. LKG7102D7:~# udevtest /sys/devices/platform/ixp4xx-beeper.4 ... import_uevent_var: import into environment: 'PHYSDEVBUS=platform' import_uevent_var: import into environment: 'MODALIAS=platform:ixp4xx-beeper' main: looking at device '/devices/platform/ixp4xx-beeper.4' from subsystem 'platform' wait_for_sysfs: file '/sys/devices/platform/ixp4xx-beeper.4/bus' appeared after 0 loops main: run: 'socket:/org/kernel/udev/monitor' main: run: '/sbin/modprobe --use-blacklist platform:ixp4xx-beeper' With this patch, depmod adds an alias line (see below) to modules.alias which allows modprobe to load the right module. modules.alias: alias platform:ixp4xx-beeper ixp4xx-beeper Signed-off-by: Gordon Farquharson Signed-off-by: Alessandro Zummo Signed-off-by: Russell King commit b626517751b8d78abc8465971e3120ebd686673a Author: Mike Rapoport Date: Sun Mar 23 15:32:33 2008 +0100 [ARM] 4873/1: Fix ITE 8152 interrupt demux This patch fixes misprints in ITE 8152 interrupt demuxing Signed-off-by: Mike Rapoport Signed-off-by: Russell King commit c60afe1014dc4b8d2211fb6cc9dd08ebab31d00b Author: Riku Voipio Date: Fri Mar 28 13:08:09 2008 +0100 [ARM] 4878/1: Add oabi shim for fstatat64 Ccoreutils and other have started using fstatat64. Thus, we need a shim for it if we want to support modern oldabi userlands (such as Debian/arm/lenny) with EABI kernels. See http://bugs.debian.org/462677 Acked-by: Nicolas Pitre Signed-off-by: Riku Voipio Signed-off-by: Russell King commit a2ceff5e555e664751bc653a4d9b133efa18c742 Author: Michael Ellerman Date: Fri Mar 28 19:11:48 2008 +1100 [POWERPC] Fix missed hardware breakpoints across multiple threads There is a bug in the powerpc DABR (data access breakpoint) handling, which can result in us missing breakpoints if several threads are trying to break on the same address. The circumstances are that do_page_fault() calls do_dabr(), this clears the DABR (sets it to 0) and sets up the signal which will report to userspace that the DABR was hit. The do_signal() code will restore the DABR value on the way out to userspace. If we reschedule before calling do_signal(), __switch_to() will check the cached DABR value and compare it to the new thread's value, if they match we don't set the DABR in hardware. So if two threads have the same DABR value, and we schedule from one to the other after taking the interrupt for the first thread hitting the DABR, the second thread will run without the DABR set in hardware. The cleanest fix is to move the cache update into set_dabr(), that way we can't forget to do it. Reported-by: Jan Kratochvil Signed-off-by: Michael Ellerman Signed-off-by: Paul Mackerras commit e72e9c23ee025a4c063ca112ba0a6059f9ecc9b7 Author: Linus Torvalds Date: Thu Mar 27 20:56:33 2008 -0700 Revert "SLUB: remove useless masking of GFP_ZERO" This reverts commit 3811dbf67162bd08412f1b0e02e554f353e93bdb. The masking was not at all useless, and it was sensible. We handle GFP_ZERO in the caller, and passing it down to any page allocator logic is buggy and wrong. Signed-off-by: Linus Torvalds commit 3480c63bdf008e9289aab94418f43b9592978fff Author: Patrick McHardy Date: Thu Mar 27 20:28:10 2008 -0700 [LLC]: Restrict LLC sockets to root LLC currently allows users to inject raw frames, including IP packets encapsulated in SNAP. While Linux doesn't handle IP over SNAP, other systems do. Restrict LLC sockets to root similar to packet sockets. [ Modified Patrick's patch to use CAP_NEW_RAW --DaveM ] Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 8536bbaff44addff8d2ac66da1156c95b1e00c4e Merge: 7529963... a6bd8e1... Author: Linus Torvalds Date: Thu Mar 27 18:52:43 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: lguest: comment documentation update. lguest: Don't need comment terminator before disk section. lguest: lguest.txt documentation fix lguest: Add puppies which where previously missing. virtio_pci: unregister virtio device at device remove commit 349fb2d6492e7d644bc8e670ba11d764a3e2901b Merge: 50fd440... 9896322... Author: David S. Miller Date: Thu Mar 27 18:00:00 2008 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 6758f953d05378d907a164c67934cd86183d9c88 Author: Al Viro Date: Sat Mar 22 16:14:30 2008 -0400 [PATCH] mnt_expire is protected by namespace_sem, no need for vfsmount_lock Signed-off-by: Al Viro commit c35038becad0adb0e25261fff66d85b1a6ddd0c2 Author: Al Viro Date: Sat Mar 22 00:46:23 2008 -0400 [PATCH] do shrink_submounts() for all fs types ... and take it out of ->umount_begin() instances. Call with all locks already taken (by do_umount()) and leave calling release_mounts() to caller (it will do release_mounts() anyway, so we can just put into the same list). Signed-off-by: Al Viro commit bcc5c7d2b692e5319db00b0dd020ce98723103b1 Author: Al Viro Date: Sat Mar 22 00:21:53 2008 -0400 [PATCH] sanitize locking in mark_mounts_for_expiry() and shrink_submounts() ... and fix a race on access of ->mnt_share et.al. without namespace_sem in the latter. Signed-off-by: Al Viro commit 7c4b93d8269b9d35971a8239426b1f6ddc3d5ef7 Author: Al Viro Date: Fri Mar 21 23:59:49 2008 -0400 [PATCH] count ghost references to vfsmounts make propagate_mount_busy() exclude references from the vfsmounts that had been isolated by umount_tree() and are just waiting for release_mounts() to dispose of their ->mnt_parent/->mnt_mountpoint. Signed-off-by: Al Viro commit 1a39068954e33f4bf3e09375a8112dcc801c4688 Author: Al Viro Date: Fri Mar 21 20:48:19 2008 -0400 [PATCH] reduce stack footprint in namespace.c A lot of places misuse struct nameidata when they need struct path. Signed-off-by: Al Viro commit 50fd4407b8bfbde7c1a0bfe4f24de7df37164342 Author: David S. Miller Date: Thu Mar 27 17:42:50 2008 -0700 [NET]: Use local_irq_{save,restore}() in napi_complete(). Based upon a lockdep report. Since ->poll() can be invoked from netpoll with interrupts disabled, we must not unconditionally enable interrupts in napi_complete(). Instead we must use local_irq_{save,restore}(). Noticed by Peter Zijlstra: netpoll_poll() poll_napi() spin_trylock(&napi->poll_lock) poll_one_napi() napi->poll() := sky2_poll() napi_complete() local_irq_disable() local_irq_enable() <--- *BUG* irq_exit() do_softirq() net_rx_action() spin_lock(&napi->poll_lock) <--- Deadlock! Because we still hold the lock.... Signed-off-by: David S. Miller commit a6bd8e13034dd7d60b6f14217096efa192d0adc1 Author: Rusty Russell Date: Fri Mar 28 11:05:53 2008 -0500 lguest: comment documentation update. Took some cycles to re-read the Lguest Journey end-to-end, fix some rot and tighten some phrases. Only comments change. No new jokes, but a couple of recycled old jokes. Signed-off-by: Rusty Russell commit e18b094f0faa4889b06a112da17230a10b88c815 Author: Rusty Russell Date: Fri Mar 28 11:05:52 2008 -0500 lguest: Don't need comment terminator before disk section. Signed-off-by: Rusty Russell commit 9b7a448e2b23101a776ddf639c9037d47244f7ab Author: Paul Bolle Date: Tue Mar 11 13:36:14 2008 +0100 lguest: lguest.txt documentation fix Mention the config options for the Virtio drivers and move the Virtualization menu to the toplevel. Signed-off-by: Paul Bolle Signed-off-by: Rusty Russell commit b488f22d70f1c2451618b9991b9665d2c6b31e2b Author: Tim Ansell Date: Mon Feb 11 18:13:42 2008 +1030 lguest: Add puppies which where previously missing. lguest doesn't have features, it has puppies! Signed-off-by: Timothy R Ansell Signed-off-by: Rusty Russell commit bd6c26900bae19bd51abedfc9a8a281afbba3a06 Author: Anthony Liguori Date: Wed Mar 19 20:35:04 2008 -0500 virtio_pci: unregister virtio device at device remove Make sure to call unregister_virtio_device() when a virtio device is removed. Otherwise, virtio_pci.ko cannot be rmmod'd. This was spotted by Marcelo Tosatti. Signed-off-by: Anthony Liguori Signed-off-by: Rusty Russell commit 8eeee8b152ae6bbe181518efaf62ba8e9c613693 Author: Denis V. Lunev Date: Thu Mar 27 16:55:53 2008 -0700 [NETFILTER]: Replate direct proc_fops assignment with proc_create call. This elliminates infamous race during module loading when one could lookup proc entry without proc_fops assigned. Signed-off-by: Denis V. Lunev Signed-off-by: David S. Miller commit 7529963cb9c5db6821f0a00fc8426ebed79fc2e0 Merge: 3085354... 5c29934... Author: Linus Torvalds Date: Thu Mar 27 16:12:25 2008 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] update pasemi_defconfig commit 920fc941a9617f95ccb283037fe6f8a38d95bb69 Author: Thomas Graf Date: Thu Mar 27 16:08:03 2008 -0700 [ESP]: Ensure IV is in linear part of the skb to avoid BUG() due to OOB access ESP does not account for the IV size when calling pskb_may_pull() to ensure everything it accesses directly is within the linear part of a potential fragment. This results in a BUG() being triggered when the both the IPv4 and IPv6 ESP stack is fed with an skb where the first fragment ends between the end of the esp header and the end of the IV. This bug was found by Dirk Nehring . Signed-off-by: Thomas Graf Signed-off-by: David S. Miller commit 15c73d5afd9f7489ca6a71cd0bef60f94c0c85a8 Author: James Bottomley Date: Wed Mar 26 09:26:13 2008 -0700 [SCSI] libsas: Warn if ATA device detected but CONFIG_SCSI_SAS_ATA not set We give a very cryptic error if an ATA device is seen on a SAS port but libsas isn't compiled to include libata to handle them. Add an extra warning to explain specifically what the problem is. Acked-by: Darrick J. Wong Signed-off-by: James Bottomley commit 77cca462c69d827fabee0ef3fdab86109c2fe8d8 Author: James Smart Date: Fri Mar 21 17:18:23 2008 -0400 [SCSI] hosts.c: fixes for "no error" reported after error scenarios This patch corrects some cases in scsi_add_host() that fail, but the "error" return code was not reset after a prior use which set it to a non-error value. Patch cut against scsi-rc-fixes-2.6 Signed-off-by: James Smart Signed-off-by: James Bottomley commit 3085354de635179d70c240e6d942bcbd1d93056c Author: Ingo Molnar Date: Thu Mar 27 21:29:09 2008 +0100 x86: prefetch fix #2 Linus noticed a second bug and an uncleanliness: - we'd return on any instruction fetch fault - we'd use both the value of 16 and the PF_INSTR symbol which are the same and make no sense the cleanup nicely unifies this piece of logic. Signed-off-by: Ingo Molnar commit fb8c7fb25d7d754a992481e9f763ec0b5889c4d9 Merge: 074fcab... 2e8fe71... Author: Linus Torvalds Date: Thu Mar 27 13:20:47 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: xen: fix UP setup of shared_info xen: fix RMW when unmasking events x86, documentation: nmi_watchdog=2 works on x86_64 x86: stricter check in follow_huge_addr() rdc321x: GPIO routines bugfixes x86: ptrace.c: fix defined-but-unused warnings x86: fix prefetch workaround commit 6b84236d37ef602d1e4f52b27162c20394e83359 Author: Jarod Wilson Date: Tue Mar 25 16:47:16 2008 -0400 firewire: fw-ohci: plug dma memory leak in AR handler There's an ugly little memory leak in firewire-ohci's ar_context_tasklet(), where we're not freeing up some of the memory we use for each ar_buffer, due to a moving pointer. The problem has been there for a while, but didn't get noticed until after converting the AR routines over to use coherent DMA and I started running into I/O stall- outs with the following message output repeatedly to the console: PCI-DMA: Out of IOMMU space for 53248 bytes at device 0000:04:09.0 Plugging this leak is definitely necessary, but unfortunately, isn't the entire answer to my problem, it only increases the amount of I/O that I can do before hitting the problem. Still working on tracking down the root cause.. Signed-off-by: Jarod Wilson Signed-off-by: Stefan Richter commit 9896322ae180e3520edec71e2480318e7196119c Author: Ivo van Doorn Date: Thu Mar 27 17:15:24 2008 +0100 rt2x00: Ignore set_state(STATE_SLEEP) failure Some hardware never seem to accept the "goto sleep" command, since the legacy drivers don't have suspend and resume handlers the entire code for it was basically a educated guess (based on the "enable radio" code). This patch will only print a warning when the "goto sleep" command fails, and just continues as usual. Perhaps that means the device will not reach a sleep state and consumes more power then it should, but it is equally possible it simply needs some seconds longer to sleep. Anyway, by making the command non-fatal it will not block the rest of the suspend procedure. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ebd9302842ecae39061b269531c0f5e278949cd3 Author: Julia Lawall Date: Tue Mar 4 14:58:59 2008 -0800 drivers/net/wireless/iwlwifi/iwl-4965.c: correct use of ! and & In commit e6bafba5b4765a5a252f1b8d31cbf6d2459da337, a bug was fixed that involved converting !x & y to !(x & y). The code below shows the same pattern, and thus should perhaps be fixed in the same way. This is not tested and clearly changes the semantics, so it is only something to consider. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ expression E1,E2; @@ ( !E1 & !E2 | - !E1 & E2 + !(E1 & E2) ) // Signed-off-by: Julia Lawall Cc: Tomas Winkler Cc: Guy Cohen Cc: Reinette Chatre Cc: Zhu Yi Signed-off-by: Andrew Morton Signed-off-by: John W. Linville commit dd1f635fe0f14d8c03181f9f1f743b127694fc14 Author: Holger Schurig Date: Wed Mar 19 15:24:21 2008 +0100 libertas: fix spinlock recursion bug This fixes a bug detected by CONFIG_DEBUG_SPINLOCK: if_cs_get_int_status() is only called from lbs_thread(), via priv->hw_get_int_status. However, lbs_thread() has already taken the priv->driver_lock. So it's a fault to take the same lock again here. Signed-off-by: Holger Schurig Acked-by: Dan Williams Signed-off-by: John W. Linville commit 074fcab574a36edec35d2e74955250f2e17d6000 Merge: c94b432... a2a3952... Author: Linus Torvalds Date: Thu Mar 27 09:14:07 2008 -0700 Merge branch 'avr32-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6 * 'avr32-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemoen/avr32-2.6: avr32: Fix bug in early resource allocation code avr32: Build fix for CONFIG_BUG=n avr32: Work around byteswap bug in gcc < 4.2 commit 2e8fe719b57bbdc9e313daed1204bb55fed3ed44 Author: Jeremy Fitzhardinge Date: Mon Mar 17 16:36:53 2008 -0700 xen: fix UP setup of shared_info We need to set up the shared_info pointer once we've mapped the real shared_info into its fixmap slot. That needs to happen once the general pagetable setup has been done. Previously, the UP shared_info was set up one in xen_start_kernel, but that was left pointing to the dummy shared info. Unfortunately there's no really good place to do a later setup of the shared_info in UP, so just do it once the pagetable setup has been done. [ Stable: needed in 2.6.24.x ] Signed-off-by: Jeremy Fitzhardinge Cc: Stable Kernel Signed-off-by: Ingo Molnar commit 04c44a080d2f699a3042d4e743f7ad2ffae9d538 Author: Jeremy Fitzhardinge Date: Mon Mar 17 16:36:52 2008 -0700 xen: fix RMW when unmasking events xen_irq_enable_direct and xen_sysexit were using "andw $0x00ff, XEN_vcpu_info_pending(vcpu)" to unmask events and test for pending ones in one instuction. Unfortunately, the pending flag must be modified with a locked operation since it can be set by another CPU, and the unlocked form of this operation was causing the pending flag to get lost, allowing the processor to return to usermode with pending events and ultimately deadlock. The simple fix would be to make it a locked operation, but that's rather costly and unnecessary. The fix here is to split the mask-clearing and pending-testing into two instructions; the interrupt window between them is of no concern because either way pending or new events will be processed. This should fix lingering bugs in using direct vcpu structure access too. [ Stable: needed in 2.6.24.x ] Signed-off-by: Jeremy Fitzhardinge Cc: Stable Signed-off-by: Ingo Molnar commit 5abbcf29928966b28d70f8a0da424f55582f8603 Author: Marcin Slusarz Date: Sun Mar 23 21:06:30 2008 +0100 x86, documentation: nmi_watchdog=2 works on x86_64 Signed-off-by: Marcin Slusarz Cc: Peter Zijlstra Signed-off-by: Ingo Molnar commit 25e59881f109dc6378ebc463ae4c2de907435de3 Author: Christoph Lameter Date: Wed Mar 26 21:03:04 2008 -0700 x86: stricter check in follow_huge_addr() The first page of the compound page is determined in follow_huge_addr() but then PageCompound() only checks if the page is part of a compound page. PageHead() allows checking if this is indeed the first page of the compound. Cc: Jeremy Fitzhardinge Signed-off-by: Christoph Lameter Signed-off-by: Ingo Molnar commit b2ef749720a97053d60605a7456772a1752164cc Author: Florian Fainelli Date: Wed Mar 26 22:39:15 2008 +0100 rdc321x: GPIO routines bugfixes This patch fixes the use of GPIO routines which are in the PCI configuration space of the RDC321x, therefore reading/writing to this space without spinlock protection can be problematic. We also now request and free GPIOs and support the MGB100 board, previous code was very AR525W-centric. Signed-off-by: Volker Weiss Signed-off-by: Florian Fainelli Signed-off-by: Ingo Molnar commit d8d4f157b8d828bc837f0eb2ee4a2dd40dbdd572 Author: Andrew Morton Date: Tue Mar 4 15:05:39 2008 -0800 x86: ptrace.c: fix defined-but-unused warnings arch/x86/kernel/ptrace.c:548: warning: 'ptrace_bts_get_size' defined but not used arch/x86/kernel/ptrace.c:558: warning: 'ptrace_bts_read_record' defined but not used arch/x86/kernel/ptrace.c:607: warning: 'ptrace_bts_clear' defined but not used arch/x86/kernel/ptrace.c:617: warning: 'ptrace_bts_drain' defined but not used arch/x86/kernel/ptrace.c:720: warning: 'ptrace_bts_config' defined but not used arch/x86/kernel/ptrace.c:788: warning: 'ptrace_bts_status' defined but not used Cc: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit bc713dcf35c427ae8377fb9a4d1b7f891054ce13 Author: Ingo Molnar Date: Thu Mar 27 15:58:28 2008 +0100 x86: fix prefetch workaround some early Athlon XP's and Opterons generate bogus faults on prefetch instructions. The workaround for this regressed over .24 - reinstate it. Signed-off-by: Ingo Molnar commit c94b4321ebde51a80a805f7a5e102ac083ae2ac9 Merge: f6d107f... 1192aeb... Author: Linus Torvalds Date: Thu Mar 27 08:03:22 2008 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: ACPI: drivers/acpi: elide a non-zero test on a result that is never 0 pnpacpi: reduce printk severity for "pnpacpi: exceeded the max number of ..." cpuidle: fix 100% C0 statistics regression cpuidle: fix cpuidle time and usage overflow ACPI: fix mis-merge -- invoke acpi_unlazy_tlb() only on C3 entry ACPI: fix a regression of ACPI device driver autoloading ACPI: SBS: remove typo from sbchc.c commit f6d107fb10def502522b10bfb7af9533afbb8274 Author: Benjamin Herrenschmidt Date: Thu Mar 27 14:52:15 2008 +1100 Give futex init a proper name The futex init function is called init(). This is a pain in the neck when debugging when you code dies in ... init :-) This renames it to futex_init(). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Linus Torvalds commit a2a395256134a24d906d5e67e03e853c580b37ed Author: Haavard Skinnemoen Date: Thu Mar 27 15:24:12 2008 +0100 avr32: Fix bug in early resource allocation code add_reserved_region() tries to keep the resource list sorted, so when looking for a place to insert the new resource, it may break out before the last entry. When this happens, the list is broken in two because the sibling field of the new entry doesn't point to the next resource. Fix it by updating the new resource's sibling field appropriately. Signed-off-by: Haavard Skinnemoen commit 2961cb22ef02850d90e7a12c28a14d74e327df8d Author: Jean Delvare Date: Sun Mar 9 13:34:28 2008 +0100 hwmon: (w83781d) Fix I/O resource conflict with PNP Only request I/O ports 0x295-0x296 instead of the full I/O address range. This solves a conflict with PNP resources on a few motherboards. Also request the I/O ports in two parts (4 low ports, 4 high ports) during device detection, otherwise the PNP resource makes the request (and thus the detection) fail. This fixes lm-sensors ticket #2306: http://www.lm-sensors.org/ticket/2306 Signed-off-by: Jean Delvare Signed-off-by: Mark M. Hoffman commit 1192aeb957402b45f311895f124e4ca41206843c Author: Julia Lawall Date: Thu Mar 27 01:48:22 2008 -0400 ACPI: drivers/acpi: elide a non-zero test on a result that is never 0 The function thermal_cooling_device_register always returns either a valid pointer or a value made with ERR_PTR, so a test for non-zero on the result will always succeed. The problem was found using the following semantic match. (http://www.emn.fr/x-info/coccinelle/) // @a@ expression E, E1; statement S,S1; position p; @@ E = thermal_cooling_device_register(...) ... when != E = E1 if@p (E) S else S1 @n@ position a.p; expression E,E1; statement S,S1; @@ E = NULL ... when != E = E1 if@p (E) S else S1 @depends on !n@ expression E; statement S,S1; position a.p; @@ * if@p (E) S else S1 // Signed-off-by: Julia Lawall Signed-off-by: Andrew Morton Signed-off-by: Len Brown commit 86d9fc1293aa9456677eab94e9fd2d3a10920548 Merge: 08dcf29... 8e92b66... 33fd7af... 7642d21... 5c9fcb5... Author: Len Brown Date: Wed Mar 26 22:50:09 2008 -0400 Merge branches 'release', 'idle', 'redhat-bugzilla-436589', 'sbs' and 'video' into release commit ee20a0dd5400e771ff93eb7f2bcc731eab1f377e Merge: d55a452... 732c8bd... Author: Linus Torvalds Date: Wed Mar 26 18:35:50 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (43 commits) [IPSEC]: Fix BEET output [ICMP]: Dst entry leak in icmp_send host re-lookup code (v2). [AX25]: Remove obsolete references to BKL from TODO file. [NET]: Fix multicast device ioctl checks [IRDA]: Store irnet_socket termios properly. [UML]: uml-net: don't set IFF_ALLMULTI in set_multicast_list [VLAN]: Don't copy ALLMULTI/PROMISC flags from underlying device netxen, phy/marvell, skge: minor checkpatch fixes S2io: Handle TX completions on the same CPU as the sender for MIS-X interrupts b44: Truncate PHY address skge napi->poll() locking bug rndis_host: fix oops when query for OID_GEN_PHYSICAL_MEDIUM fails cxgb3: Fix lockdep problems with sge.reg_lock ehea: Fix IPv6 support dm9000: Support promisc and all-multi modes dm9601: configure MAC to drop invalid (crc/length) packets dm9601: add Hirose USB-100 device ID Marvell PHY m88e1111 driver fix netxen: fix rx dropped stats netxen: remove low level tx lock ... commit d55a4528f7f607ca2872fec18574bc8cec060f05 Merge: 08dcf29... c101b08... Author: Linus Torvalds Date: Wed Mar 26 18:35:22 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: Define TASK_SIZE_OF() [SPARC64]: flush_ptrace_access() needs preemption disable. [SPARC64]: Update defconfig. [SPARC64]: Fix allnoconfig build, ptrace.c missing CONFIG_COMPAT checks. [SPARC64]: Fix __get_cpu_var in preemption-enabled area. [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/signal.c [SPARC64]: Fix most sparse warnings in arch/sparc64/kernel/sys_sparc.c [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/time.c [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/ptrace.c [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/irq.c [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/iommu.c [SPARC64]: Fix sparse errors in arch/sparc64/kernel/traps.c [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/{cpu,setup}.c [SPARC64]: Adjust {TLBTEMP,TSBMAP}_BASE. [SPARC64]: Make save_stack_trace() more efficient. commit c101b088ba0ed16d7109b2f3c2d16798d162a535 Author: David S. Miller Date: Wed Mar 26 17:32:33 2008 -0700 [SPARC64]: Define TASK_SIZE_OF() This make "cat /proc/${PID}/pagemap" more efficient for 32-bit tasks. Based upon a report by Mariusz Kozlowski. Signed-off-by: David S. Miller commit 732c8bd590625e8bc0b88313b82930e336b2bec4 Author: Herbert Xu Date: Wed Mar 26 16:51:09 2008 -0700 [IPSEC]: Fix BEET output The IPv6 BEET output function is incorrectly including the inner header in the payload to be protected. This causes a crash as the packet doesn't actually have that many bytes for a second header. The IPv4 BEET output on the other hand is broken when it comes to handling an inner IPv6 header since it always assumes an inner IPv4 header. This patch fixes both by making sure that neither BEET output function touches the inner header at all. All access is now done through the protocol-independent cb structure. Two new attributes are added to make this work, the IP header length and the IPv4 option length. They're filled in by the inner mode's output function. Thanks to Joakim Koskela for finding this problem. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 0e5606e4f46b7cf52dd445af01e71ed9dbb7f735 Merge: 7c0ecc4... 7a193a5... Author: David S. Miller Date: Wed Mar 26 16:09:43 2008 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 08dcf29e01dcb786c13dc80045bd65f804117efb Merge: 11320d1... d546b67... Author: Linus Torvalds Date: Wed Mar 26 15:02:12 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: x86: fix performance drop for glx x86: fix trim mtrr not to setup_memory two times x86: GEODE: add missing module.h include x86, cpufreq: fix Speedfreq-SMI call that clobbers ECX x86: fix memoryless node oops during boot x86: add dmi quirk for io_delay x86: convert mtrr/generic.c to kernel-doc x86: Documentation/i386/IO-APIC.txt: fix description commit 11320d17ce4ecf8002dc8f9b6f1e49cd18e45a94 Author: Nishanth Aravamudan Date: Wed Mar 26 14:40:20 2008 -0700 hugetlb: fix potential livelock in return_unused_surplus_hugepages() Running the counters testcase from libhugetlbfs results in on 2.6.25-rc5 and 2.6.25-rc5-mm1: BUG: soft lockup - CPU#3 stuck for 61s! [counters:10531] NIP: c0000000000d1f3c LR: c0000000000d1f2c CTR: c0000000001b5088 REGS: c000005db12cb360 TRAP: 0901 Not tainted (2.6.25-rc5-autokern1) MSR: 8000000000009032 CR: 48008448 XER: 20000000 TASK = c000005dbf3d6000[10531] 'counters' THREAD: c000005db12c8000 CPU: 3 GPR00: 0000000000000004 c000005db12cb5e0 c000000000879228 0000000000000004 GPR04: 0000000000000010 0000000000000000 0000000000200200 0000000000100100 GPR08: c0000000008aba10 000000000000ffff 0000000000000004 0000000000000000 GPR12: 0000000028000442 c000000000770080 NIP [c0000000000d1f3c] .return_unused_surplus_pages+0x84/0x18c LR [c0000000000d1f2c] .return_unused_surplus_pages+0x74/0x18c Call Trace: [c000005db12cb5e0] [c000005db12cb670] 0xc000005db12cb670 (unreliable) [c000005db12cb670] [c0000000000d24c4] .hugetlb_acct_memory+0x2e0/0x354 [c000005db12cb740] [c0000000001b5048] .truncate_hugepages+0x1d4/0x214 [c000005db12cb890] [c0000000001b50a4] .hugetlbfs_delete_inode+0x1c/0x3c [c000005db12cb920] [c000000000103fd8] .generic_delete_inode+0xf8/0x1c0 [c000005db12cb9b0] [c0000000001b5100] .hugetlbfs_drop_inode+0x3c/0x24c [c000005db12cba50] [c00000000010287c] .iput+0xdc/0xf8 [c000005db12cbad0] [c0000000000fee54] .dentry_iput+0x12c/0x194 [c000005db12cbb60] [c0000000000ff050] .d_kill+0x6c/0xa4 [c000005db12cbbf0] [c0000000000ffb74] .dput+0x18c/0x1b0 [c000005db12cbc70] [c0000000000e9e98] .__fput+0x1a4/0x1e8 [c000005db12cbd10] [c0000000000e61ec] .filp_close+0xb8/0xe0 [c000005db12cbda0] [c0000000000e62d0] .sys_close+0xbc/0x134 [c000005db12cbe30] [c00000000000872c] syscall_exit+0x0/0x40 Instruction dump: ebbe8038 38800010 e8bf0002 3bbd0008 7fa3eb78 38a50001 7ca507b4 4818df25 60000000 38800010 38a00000 7c601b78 <7fa3eb78> 2f800010 409d0008 38000010 This was tracked down to a potential livelock in return_unused_surplus_hugepages(). In the case where we have surplus pages on some node, but no free pages on the same node, we may never break out of the loop. To avoid this livelock, terminate the search if we iterate a number of times equal to the number of online nodes without freeing a page. Thanks to Andy Whitcroft and Adam Litke for helping with debugging and the patch. Signed-off-by: Nishanth Aravamudan Signed-off-by: Linus Torvalds commit a1de09195b294c6a4c5dec8c8defd0a2688d3f75 Author: Nishanth Aravamudan Date: Wed Mar 26 14:37:53 2008 -0700 hugetlb: indicate surplus huge page counts in per-node meminfo Currently we show the surplus hugetlb pool state in /proc/meminfo, but not in the per-node meminfo files, even though we track the information on a per-node basis. Printing it there can help track down dynamic pool bugs including the one in the follow-on patch. Signed-off-by: Nishanth Aravamudan Signed-off-by: Linus Torvalds commit d546b67a940eb42a99f56b86c5cd8d47c8348c2a Author: Suresh Siddha Date: Tue Mar 25 17:39:12 2008 -0700 x86: fix performance drop for glx fix the 3D performance drop reported at: http://bugzilla.kernel.org/show_bug.cgi?id=10328 fb drivers are using ioremap()/ioremap_nocache(), followed by mtrr_add with WC attribute. Recent changes in page attribute code made both ioremap()/ioremap_nocache() mappings as UC (instead of previous UC-). This breaks the graphics performance, as the effective memory type is UC instead of expected WC. The correct way to fix this is to add ioremap_wc() (which uses UC- in the absence of PAT kernel support and WC with PAT) and change all the fb drivers to use this new ioremap_wc() API. We can take this correct and longer route for post 2.6.25. For now, revert back to the UC- behavior for ioremap/ioremap_nocache. Signed-off-by: Suresh Siddha Signed-off-by: Venkatesh Pallipadi Cc: Arjan van de Ven Signed-off-by: Ingo Molnar commit 76c324182bbd29dfe4298ca65efb15be18055df1 Author: Yinghai Lu Date: Sun Mar 23 00:16:49 2008 -0700 x86: fix trim mtrr not to setup_memory two times we could call find_max_pfn() directly instead of setup_memory() to get max_pfn needed for mtrr trimming. otherwise setup_memory() is called two times... that is duplicated... [ mingo@elte.hu: both Thomas and me simulated a double call to setup_bootmem_allocator() and can confirm that it is a real bug which can hang in certain configs. It's not been reported yet but that is probably due to the relatively scarce nature of MTRR-trimming systems. ] Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar commit 923a0cf82f2b504e316642e2d152d38b6c0be4ba Author: Andres Salomon Date: Wed Mar 26 14:13:01 2008 -0400 x86: GEODE: add missing module.h include On Wed, 26 Mar 2008 11:56:22 -0600 Jordan Crouse wrote: > On 26/03/08 14:31 +0100, Stefan Pfetzing wrote: > > Hello Jordan, > > > > I just tried to build your geodwdt driver for the geode watchdog. Therefore > > I pulled your repository from http://git.infradead.org/geode.git (or more, > > the git url). > > > > I tried to build the geodewdt driver as a module - which didn't work, and > > it failed with the same problem as earlier mentioned on lkmk [1]. I also > > checked the fix [2], but that seems to be already in your (or linus) tree - > > and so I'm unsure what the problem is. > > > > [1] http://kerneltrap.org/mailarchive/linux-kernel/2008/2/17/884074 > > [2] http://kerneltrap.org/mailarchive/linux-kernel/2008/2/17/884174 > > > > Building directly into the kernel seems to work. > > > > Maybe you have some idea? > > Hmm - that is strange. Exporting the symbols should work. I recommend > starting over with a clean tree. > > CCing Andres - any thoughts? > > Jordan > Er, yeah. The patch below should fix it. This should probably go into 2.6.25. Oops, EXPORT_SYMBOL_GPL wasn't being declared due to this header being missing. Signed-off-by: Andres Salomon Signed-off-by: Ingo Molnar commit c6e8256a7b15033bc5d7797e25c7e053040c4c7c Author: Stephan Diestelhorst Date: Mon Mar 10 16:05:41 2008 +0100 x86, cpufreq: fix Speedfreq-SMI call that clobbers ECX I have found that using SMI to change the cpu's frequency on my DELL Latitude L400 clobbers the ECX register in speedstep_set_state, causing unneccessary retries because the "state" variable has changed silently (GCC assumes it is still present in ECX). play safe and avoid gcc caching any register across IO port accesses that trigger SMIs. Signed-off by: Signed-off-by: Ingo Molnar commit 475613b9e374bf0c15340eb166a962da04aa02e8 Author: Yinghai Lu Date: Sun Feb 24 23:23:09 2008 -0800 x86: fix memoryless node oops during boot fix oops during boot reported in this thread: http://lkml.org/lkml/2008/2/6/65 enable booting on memoryless nodes. Reported-by: Kamalesh Babulal Signed-off-by: Ingo Molnar commit 3c274c2909e17aa0afeded4cd4520b7357357ca0 Author: Ingo Molnar Date: Fri Mar 21 10:06:32 2008 +0100 x86: add dmi quirk for io_delay reported by mereandor@gmail.com, in: http://bugzilla.kernel.org/show_bug.cgi?id=6307 Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 1d3381ebf42de1b6f8c118732893cb5bdc37edcd Author: Randy Dunlap Date: Thu Mar 13 16:59:12 2008 -0700 x86: convert mtrr/generic.c to kernel-doc Convert function comment blocks to kernel-doc notation. Signed-off-by: Randy Dunlap Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit c0c20fb5a8f2e2eddf7f0e5467c7511fee907903 Author: Nick Andrew Date: Tue Mar 4 15:05:40 2008 -0800 x86: Documentation/i386/IO-APIC.txt: fix description The description of the interrupt routing doesn't match the (nice) diagram. Signed-off-by: Nick Andrew Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 6edef97e17ca1c322b146023862da8a39e36204d Author: Masami Hiramatsu Date: Wed Mar 26 15:53:19 2008 -0400 kprobes: MAINTAINERS update Add Masami Hiramatsu to kprobes maintainers Signed-off-by: Masami Hiramatsu Signed-off-by: Linus Torvalds commit 5254149f6c4e938fea3735183434e208097bd188 Merge: 8f404fa... ec1f5ee... Author: Linus Torvalds Date: Wed Mar 26 11:30:17 2008 -0700 Merge branch 'slab-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/christoph/vm * 'slab-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/christoph/vm: slab: fix cache_cache bootstrap in kmem_cache_init() count_partial() is not used if !SLUB_DEBUG and !CONFIG_SLABINFO commit 8f404faa72f4e458e7bd81ac75ce55ae829e953d Merge: 729eb52... 06d8308... Author: Linus Torvalds Date: Wed Mar 26 11:29:35 2008 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt * 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt: NOHZ: reevaluate idle sleep length after add_timer_on() clocksource: revert: use init_timer_deferrable for clocksource_watchdog commit 729eb528c7e10a4828fece102872ec5255946f64 Merge: c8237a5... 5eb7f9f... Author: Linus Torvalds Date: Wed Mar 26 11:27:24 2008 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block * 'for-linus' of git://git.kernel.dk/linux-2.6-block: relay: set an spd_release() hook for splice set relay file can not be read by pread(2) commit c8237a5fcea9d49a73275b4c8f541dd42f8da1a4 Author: Tom Tucker Date: Tue Mar 25 22:27:19 2008 -0400 SVCRDMA: Check num_sge when setting LAST_CTXT bit The RDMACTXT_F_LAST_CTXT bit was getting set incorrectly when the last chunk in the read-list spanned multiple pages. This resulted in a kernel panic when the wrong context was used to build the RPC iovec page list. RDMA_READ is used to fetch RPC data from the client for NFS_WRITE requests. A scatter-gather is used to map the advertised client side buffer to the server-side iovec and associated page list. WR contexts are used to convey which scatter-gather entries are handled by each WR. When the write data is large, a single RPC may require multiple RDMA_READ requests so the contexts for a single RPC are chained together in a linked list. The last context in this list is marked with a bit RDMACTXT_F_LAST_CTXT so that when this WR completes, the CQ handler code can enqueue the RPC for processing. The code in rdma_read_xdr was setting this bit on the last two contexts on this list when the last read-list chunk spanned multiple pages. This caused the svc_rdma_recvfrom logic to incorrectly build the RPC and caused the kernel to crash because the second-to-last context doesn't contain the iovec page list. Modified the condition that sets this bit so that it correctly detects the last context for the RPC. Signed-off-by: Tom Tucker Tested-by: Roland Dreier Signed-off-by: J. Bruce Fields Signed-off-by: Linus Torvalds commit 12c22d6ef299ccf0955e5756eb57d90d7577ac68 Author: Linus Torvalds Date: Wed Mar 26 11:22:40 2008 -0700 Revert "PCI: remove transparent bridge sizing" This reverts commit 8fa5913d54f3b1e09948e6a0db34da887e05ff1f, which caused various interesting problems for people, including wrong resource allocations. See for example bugzilla entry "2.6.25-rc2: ohci1394 problem (MMIO broken)" at http://bugzilla.kernel.org/show_bug.cgi?id=10080 And Gary Hade says: "The same change had also exposed an issue reported by Paul Martin that has been causing an Oops while hotplugging ThinkPads to a ThinkPad Dock II. See http://lkml.org/lkml/2008/2/19/405 http://bugzilla.kernel.org/show_bug.cgi?id=9961 I have a fix for the ThinkPad docking Oops but if the issue being discussed here is caused by the transparent bridge sizing removal change I totally agree that it should be reverted." The transparent bridge sizing removal change was motivated by insufficient PCI memory resource for a transparent bridge window that was being created as a result of expansion ROM(s) being included in the transparent bridge sizing calculations. A later "PCI: Remove default PCI expansion ROM memory allocation" change ( re: http://lkml.org/lkml/2007/12/11/361 ) removes the expansion ROM(s) from the transparent bridge sizing calculations which actually resolves the original issue in a different manner. So, even if the "PCI: remove transparent bridge sizing" is not problematic it is no longer needed anyway." Identified-by: Ivan Kokshaysky Tested-by: Thomas Meyer Acked-by: Gary Hade Acked-by: Ingo Molnar Cc: Stefan Richter Signed-off-by: Linus Torvalds commit 33fd7afd66ffdc6addf1b085fe6403b6af532f8e Author: Len Brown Date: Wed Mar 26 13:29:32 2008 -0400 pnpacpi: reduce printk severity for "pnpacpi: exceeded the max number of ..." We have been printing these messages at KERN_ERR since 2.6.24, per http://bugzilla.kernel.org/show_bug.cgi?id=9535 But KERN_ERR pops up on a console booted with "quiet" and causes users to get alarmed and file bugs about the message itself: https://bugzilla.redhat.com/show_bug.cgi?id=436589 So reduce the severity of these messages to KERN_WARNING, which is not printed by "quiet". This message will still be seen without "quiet", but a lot of messages are printed in that mode and it will be less likely to cause undue alarm. We could go all the way to KERN_DEBUG, but this is a real warning after all, so it seems prudent not to require "debug" to see it. Signed-off-by: Len Brown commit ec1f5eeeb5a79a0d48036de649a3498da42db565 Author: Daniel Yeisley Date: Tue Mar 25 23:59:08 2008 +0200 slab: fix cache_cache bootstrap in kmem_cache_init() Commit 556a169dab38b5100df6f4a45b655dddd3db94c1 ("slab: fix bootstrap on memoryless node") introduced bootstrap-time cache_cache list3s for all nodes but forgot that initkmem_list3 needs to be accessed by [somevalue + node]. This patch fixes list_add() corruption in mm/slab.c seen on the ES7000. Cc: Mel Gorman Cc: Olaf Hering Cc: Christoph Lameter Signed-off-by: Dan Yeisley Signed-off-by: Pekka Enberg Signed-off-by: Christoph Lameter commit 53625b4204753b904addd40ca96d9ba802e6977d Author: Christoph Lameter Date: Wed Mar 19 13:42:07 2008 -0700 count_partial() is not used if !SLUB_DEBUG and !CONFIG_SLABINFO Avoid warnings about unused functions if neither SLUB_DEBUG nor CONFIG_SLABINFO is defined. This patch will be reversed when slab defrag is merged since slab defrag requires count_partial() to determine the fragmentation status of slab caches. Signed-off-by: Christoph Lameter commit 0feed274d2dfa2162d2c37c254eede96926d3717 Author: James Bottomley Date: Wed Mar 26 09:09:19 2008 -0700 Revert "[SCSI] fix bsg queue oops with iscsi logout" This reverts commit 4b6f5b3a993cbe34b4280f252bccc76967c185c8. bsg takes a reference to the underlying generic device, so it's impossible to unregister bsg in the device release routine. Acked-by: FUJITA Tomonori Signed-off-by: James Bottomley commit f6a843d939ade435e060d580f5c56d958464f8a5 Author: David S. Miller Date: Wed Mar 26 04:51:12 2008 -0700 [SPARC64]: flush_ptrace_access() needs preemption disable. Based upon a report by Mariusz Kozlowski. Signed-off-by: David S. Miller commit e5ac71f255335f130bbe582c4ce3008c1b46413f Author: David S. Miller Date: Wed Mar 26 04:34:04 2008 -0700 [SPARC64]: Update defconfig. Signed-off-by: David S. Miller commit 11cc8a3abf5556d9f24395d87573532420d5ace7 Author: David S. Miller Date: Wed Mar 26 04:31:50 2008 -0700 [SPARC64]: Fix allnoconfig build, ptrace.c missing CONFIG_COMPAT checks. Signed-off-by: David S. Miller commit 69072f6e8e4bd4799d2a54e4ff8771d0657512c1 Author: David S. Miller Date: Wed Mar 26 04:25:00 2008 -0700 [SPARC64]: Fix __get_cpu_var in preemption-enabled area. Reported by Mariusz Kozlowski. Signed-off-by: David S. Miller commit 5eb7f9fa847b8ab6e4864bfb8cb45f370844a47c Author: Jens Axboe Date: Wed Mar 26 12:04:09 2008 +0100 relay: set an spd_release() hook for splice relay doesn't reference the pages it adds, however we need a non-NULL hook or splice_to_pipe() can oops. Signed-off-by: Jens Axboe commit 37529fe9f62835e1c11895a1895064748b032dc1 Author: Lai Jiangshan Date: Wed Mar 26 12:01:28 2008 +0100 set relay file can not be read by pread(2) I found that relay files can be read by pread(2). I fix it, for relay files are not capable of seeking. Signed-off-by: Lai Jiangshan Signed-off-by: Jens Axboe commit 138bed154eab2205b4ef93f02f5feb1edf6d8552 Author: Paul Mundt Date: Wed Mar 26 19:09:21 2008 +0900 sh: Fix TIF_USEDFPU clearing under FPU emulation. The unlazy_fpu() path calls in to save_fpu() if the task has TIF_USEDFPU set. save_fpu() being the crap API that it is has the side effect of clearing the flag itself, which presently doesn't happen if we're using FPU emulation. Fix this up for now, pending an overhaul in 2.6.26. Signed-off-by: Paul Mundt commit 9bbafce2eec190ef7e44b0eb1095ba17ce6ad3af Author: Paul Mundt Date: Wed Mar 26 19:02:47 2008 +0900 sh: Fix occasional FPU register corruption under preempt. Presently with preempt enabled there's the possibility to be preempted after the TIF_USEDFPU test and the register save, leading to bogus state post-__switch_to(). Use an explicit preempt_disable()/enable() pair around unlazy_fpu()/clear_fpu() to avoid this. Follows the x86 change. Reported-by: Takuo Koguchi Signed-off-by: Paul Mundt commit 7c0ecc4c4f8fd90988aab8a95297b9c0038b6160 Author: Pavel Emelyanov Date: Wed Mar 26 02:27:09 2008 -0700 [ICMP]: Dst entry leak in icmp_send host re-lookup code (v2). Commit 8b7817f3a959ed99d7443afc12f78a7e1fcc2063 ([IPSEC]: Add ICMP host relookup support) introduced some dst leaks on error paths: the rt pointer can be forgotten to be put. Fix it bu going to a proper label. Found after net namespace's lo refused to unregister :) Many thanks to Den for valuable help during debugging. Herbert pointed out, that xfrm_lookup() will put the rtable in case of error itself, so the first goto fix is redundant. Signed-off-by: Pavel Emelyanov Signed-off-by: Denis V. Lunev Signed-off-by: David S. Miller commit 5c2e2e239ebe44e3fdc5f2ae270d96c4ceee4e9a Author: Robert P. J. Day Date: Wed Mar 26 02:14:38 2008 -0700 [AX25]: Remove obsolete references to BKL from TODO file. Given that there are no apparent calls to lock_kernel() or unlock_kernel() under net/ax25, delete the TODO reference related to that. Signed-off-by: Robert P. J. Day Signed-off-by: David S. Miller commit 61ee6bd487b9cc160e533034eb338f2085dc7922 Author: Patrick McHardy Date: Wed Mar 26 02:12:11 2008 -0700 [NET]: Fix multicast device ioctl checks SIOCADDMULTI/SIOCDELMULTI check whether the driver has a set_multicast_list method to determine whether it supports multicast. Drivers implementing secondary unicast support use set_rx_mode however. Check for both dev->set_multicast_mode and dev->set_rx_mode to determine multicast capabilities. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 062ea6d36c5841286f57b360534eb33139e506f3 Author: David S. Miller Date: Wed Mar 26 01:52:18 2008 -0700 [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/signal.c Signed-off-by: David S. Miller commit 207ddd0a3a42e6273e3a26447b52e9d6d90d579d Author: David S. Miller Date: Wed Mar 26 01:43:29 2008 -0700 [SPARC64]: Fix most sparse warnings in arch/sparc64/kernel/sys_sparc.c Sparse still doesn't like the funny cast we make from a scalar to a "union semun" (which is correct by the C language and in particular works with the sparc64 calling conventions, but sparse doesn't grok that yet). Signed-off-by: David S. Miller commit cf3d7c1ef418863376d556c48c214cb828623584 Author: David S. Miller Date: Wed Mar 26 01:11:55 2008 -0700 [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/time.c Signed-off-by: David S. Miller commit 8c7230f781749cd7261b504c0bfa188bb96e77ee Author: David S. Miller Date: Wed Mar 26 00:55:50 2008 -0700 [IRDA]: Store irnet_socket termios properly. It should be a "struct ktermios" not a "struct termios". Based upon a build warning reported by Stephen Rothwell. Signed-off-by: David S. Miller commit bfdf9ebc396a2373af2f1d117491dc6bbdc9ee75 Author: David S. Miller Date: Wed Mar 26 00:46:21 2008 -0700 [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/ptrace.c Signed-off-by: David S. Miller commit d91aa123b4b96e57680a39fb9dfd9722f8df3c7e Author: David S. Miller Date: Wed Mar 26 00:37:51 2008 -0700 [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/irq.c Signed-off-by: David S. Miller commit 06d8308c61e54346585b2691c13ee3f90cb6fb2f Author: Thomas Gleixner Date: Sat Mar 22 09:20:24 2008 +0100 NOHZ: reevaluate idle sleep length after add_timer_on() add_timer_on() can add a timer on a CPU which is currently in a long idle sleep, but the timer wheel is not reevaluated by the nohz code on that CPU. So a timer can be delayed for quite a long time. This triggered a false positive in the clocksource watchdog code. To avoid this we need to wake up the idle CPU and enforce the reevaluation of the timer wheel for the next timer event. Add a function, which checks a given CPU for idle state, marks the idle task with NEED_RESCHED and sends a reschedule IPI to notify the other CPU of the change in the timer wheel. Call this function from add_timer_on(). Signed-off-by: Thomas Gleixner Acked-by: Peter Zijlstra Acked-by: Ingo Molnar Cc: stable@kernel.org -- include/linux/sched.h | 6 ++++++ kernel/sched.c | 43 +++++++++++++++++++++++++++++++++++++++++++ kernel/timer.c | 10 +++++++++- 3 files changed, 58 insertions(+), 1 deletion(-) commit 6c830fefcc2e9d20f0a6c6aff43c8d333da2ea46 Author: David S. Miller Date: Tue Mar 25 22:44:10 2008 -0700 [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/iommu.c Fix local variable shadowing in dma_4u_map_sg(). Mark sun4u_dma_ops static. Signed-off-by: David S. Miller commit 99cd220133cdf2a559529d522a78b2ebc1bef2d8 Author: David S. Miller Date: Wed Mar 26 00:19:43 2008 -0700 [SPARC64]: Fix sparse errors in arch/sparc64/kernel/traps.c Add 'UL' markers to DCU_* macros. Declare C functions called from assembler in entry.h Declare C functions called from within the sparc64 arch code in include/asm-sparc64/*.h headers as appropriate. Remove unused routines in traps.c Signed-off-by: David S. Miller commit f70c176619dde7f32283fc5c94df8e9aaac12729 Author: Patrick McHardy Date: Wed Mar 26 00:16:29 2008 -0700 [UML]: uml-net: don't set IFF_ALLMULTI in set_multicast_list IFF_ALLMULTI is an indication from the network stack to the driver to disable multicast filters, drivers should never set it directly. Since the UML networking device doesn't have any filtering capabilites, it doesn't the set_multicast_list function at all, it is kept so userspace can still issue SIOCADDMULTI/SIOCDELMULTI ioctls however. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 0ed21b321a13421e2dfeaa70a6c324e05e3e91e6 Author: Patrick McHardy Date: Wed Mar 26 00:15:17 2008 -0700 [VLAN]: Don't copy ALLMULTI/PROMISC flags from underlying device Changing these flags requires to use dev_set_allmulti/dev_set_promiscuity or dev_change_flags. Setting it directly causes two unwanted effects: - the next dev_change_flags call will notice a difference between dev->gflags and the actual flags, enable promisc/allmulti mode and incorrectly update dev->gflags - this keeps the underlying device in promisc/allmulti mode until the VLAN device is deleted Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 8e92b6605da989c0aa8ff7e33306f36f0efd957c Author: Venki Pallipadi Date: Fri Feb 29 10:24:32 2008 -0800 cpuidle: fix 100% C0 statistics regression commit 9b12e18cdc1553de62d931e73443c806347cd974 'ACPI: cpuidle: Support C1 idle time accounting' was implicated in a 100% C0 idle regression. http://bugzilla.kernel.org/show_bug.cgi?id=10076 It pointed out a potential problem where the menu governor may get confused by the C-state residency time from poll idle or C1 idle, where this timing info is not accurate. This inaccuracy is due to interrupts being handled before we account for C-state exit. Do not mark TIME_VALID for CO poll state. Mark C1 time as valid only with the MWAIT (CSTATE_FFH) entry method. This makes governors use the timing information only when it is correct and eliminates any wrong policy decisions that may result from invalid timing information. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit 3d5ae6b69eacfac025021998d2ce159768edcfe1 Author: David S. Miller Date: Tue Mar 25 21:51:40 2008 -0700 [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/{cpu,setup}.c We create a local header file entry.h, under arch/sparc64/kernel/, that we can use to declare routines either defined in assembler or only invoked from assembler. As well as other data objects which are private to the inner sparc64 kernel arch code. Signed-off-by: David S. Miller commit 8b78cf602fd3bd97c0080edd22fe8fd5d0fa7832 Author: Yi Yang Date: Mon Feb 25 08:46:12 2008 +0800 cpuidle: fix cpuidle time and usage overflow cpuidle C-state sysfs node time and usage are very easy to overflow because they are all of unsigned int type, time will overflow within about two hours, usage will take longer time to overflow, but they are increasing for ever. This patch will convert them to unsigned long long. Signed-off-by: Yi Yang Acked-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit 996520c1fdd2948addb629be56c9febf2967e02b Author: Venki Pallipadi Date: Mon Mar 24 14:24:10 2008 -0700 ACPI: fix mis-merge -- invoke acpi_unlazy_tlb() only on C3 entry This original patch http://ussg.iu.edu/hypermail/linux/kernel/0712.2/1451.html was intending to add acpi_unlazy_tlb() to acpi_idle_enter_bm(), which is used for C3 entry. But it was merged incorrectly as commmit bde6f5f59c2b2b48a7a849c129d5b48838fe77ee 'x86: voluntary leave_mm before entering ACPI C3' so the call was instead added to acpi_idle_enter_simple() (which is C2 entry routine), probably due to identical context in that function. Move the call back to acpi_idle_enter_bm(). Signed-off-by: Venkatesh Pallipadi Signed-off-by: Len Brown commit 606d5b19391476f71e10ccce5b376f7071d11aba Author: David S. Miller Date: Tue Mar 25 21:13:22 2008 -0700 [SPARC64]: Adjust {TLBTEMP,TSBMAP}_BASE. Move them further from the main kernel image area to facilitate larger kernel sizes. Adjust comments to match. Signed-off-by: David S. Miller commit f0c88f9c45f39acd017328515890481adcb32607 Author: Jeff Garzik Date: Tue Mar 25 23:53:24 2008 -0400 netxen, phy/marvell, skge: minor checkpatch fixes Signed-off-by: Jeff Garzik commit f6f4bfa3561a2d8e949cab0d28e0db6d2b13641d Author: Sreenivasa Honnur Date: Tue Mar 25 15:11:56 2008 -0400 S2io: Handle TX completions on the same CPU as the sender for MIS-X interrupts - Handling TX completions on the same cpu as the sender. Signed-off-by: Surjit Reang Signed-off-by: Jeff Garzik commit 5ea79631c0c47d28831a0635e8af9da539d449cd Author: Michael Buesch Date: Tue Mar 25 18:04:46 2008 +0100 b44: Truncate PHY address Some ROMs on embedded devices store incorrect values for the PHY address of the ethernet device. It looks like the number is sign-extended. Truncate the value by applying the PHY-address mask to it. The patch was tested on a bcm47xx embedded system (where the bug triggers) and a bcm4400 PCI card. Signed-off-by: Michael Buesch Signed-off-by: Jeff Garzik commit 6ef2977d414cc196baba0fb53509c5f8cd9154b4 Author: Marin Mitov Date: Sun Mar 23 10:20:09 2008 +0200 skge napi->poll() locking bug According to: Documentation/networking/netdevices.txt: napi->poll: .......... Context: softirq will be called with interrupts disabled by netconsole. napi->poll() could be called either with interrupts enabled (in softirq context) or disabled (by netconsole), so the irq flag should be preserved. Inspired by Ingo's resent forcedeth patch :-) Signed-off-by: Marin Mitov Signed-off-by: Jeff Garzik commit 9f5e60dd5ffca938da4cabc197af8b9405b5512e Author: Jussi Kivilinna Date: Sun Mar 23 12:45:44 2008 +0200 rndis_host: fix oops when query for OID_GEN_PHYSICAL_MEDIUM fails When query for OID_GEN_PHYSICAL_MEDIUM fails, uninitialized pointer 'phym' is being accessed in generic_rndis_bind(), resulting OOPS. Patch fixes phym to be initialized and setup correctly when rndis_query() for physical medium fails. Bug was introduced by following commit: commit 039ee17d1baabaa21783a0d5ab3e8c6d8c794bdf Author: Jussi Kivilinna Date: Sun Jan 27 23:34:33 2008 +0200 Reported-by: Dmitri Monakhov Signed-off-by: Jussi Kivilinna Acked-by: David Brownell Signed-off-by: Jeff Garzik commit b1186dee3e785679876f6b629609ec080842edda Author: Roland Dreier Date: Thu Mar 20 13:30:48 2008 -0700 cxgb3: Fix lockdep problems with sge.reg_lock Using iWARP with a Chelsio T3 NIC generates the following lockdep warning: ================================= [ INFO: inconsistent lock state ] 2.6.25-rc6 #50 --------------------------------- inconsistent {softirq-on-W} -> {in-softirq-W} usage. swapper/0 [HC0[0]:SC1[1]:HE0:SE0] takes: (&adap->sge.reg_lock){-+..}, at: [] cxgb_offload_ctl+0x3af/0x507 [cxgb3] The problem is that reg_lock is used with plain spin_lock() in drivers/net/cxgb3/sge.c but is used with spin_lock_irqsave() in drivers/net/cxgb3/cxgb3_offload.c. This is technically a false positive, since the uses in sge.c are only in the initialization and cleanup paths and cannot overlap with any use in interrupt context. The best fix is probably just to use spin_lock_irq() with reg_lock in sge.c. Even though it's not strictly required for correctness, it avoids triggering lockdep and the extra overhead of disabling interrupts is not important at all in the initialization and cleanup slow paths. Signed-off-by: Roland Dreier Signed-off-by: Jeff Garzik commit dc01c447123b489af7b4d0c58a15abcec36a40e6 Author: Thomas Klein Date: Wed Mar 19 13:55:43 2008 +0100 ehea: Fix IPv6 support Indicate that HEA calculates IPv4 checksums only Signed-off-by: Thomas Klein Signed-off-by: Jeff Garzik commit 23d245b66ec8bec21f41ea484e05f470bea764e8 Author: Peter Korsgaard Date: Tue Mar 18 23:17:16 2008 +0100 dm9000: Support promisc and all-multi modes Signed-off-by: Peter Korsgaard Signed-off-by: Jeff Garzik commit 33eddedb9cae602e093348421205b1619cccdbb4 Author: Peter Korsgaard Date: Tue Mar 18 23:16:54 2008 +0100 dm9601: configure MAC to drop invalid (crc/length) packets Signed-off-by: Peter Korsgaard Signed-off-by: Jeff Garzik commit b47b4b22e2195146baf089b637ec8f6654953018 Author: Peter Korsgaard Date: Tue Mar 18 23:16:53 2008 +0100 dm9601: add Hirose USB-100 device ID The Hirose USB-100 adapter uses a dm9601 chip. Reported by Robert Brockway. Signed-off-by: Peter Korsgaard Signed-off-by: Jeff Garzik commit be937f1f89cacd833bd242c35af911b971225cf0 Author: Alexandr Smirnov Date: Wed Mar 19 00:37:24 2008 +0300 Marvell PHY m88e1111 driver fix Marvell PHY m88e1111 (not sure about other models, but think they too) works in two modes: fiber and copper. In Marvell PHY driver (that we have in current community kernels) code supported only copper mode, and this is not configurable, bits for copper mode are simply written in registers during PHY initialization. This patch adds support for both modes. Signed-off-by: Alexandr Smirnov Acked-by: Andy Fleming Signed-off-by: Jeff Garzik commit d1847a722e79bbfc557755d78f44d3e2c8ae5ea9 Author: Dhananjay Phadke Date: Mon Mar 17 19:59:51 2008 -0700 netxen: fix rx dropped stats Don't count rx dropped packets based on return value of netif_receive_skb(), which is misleading. Signed-off-by: Dhananjay Phadke Tested-by: Vernon Mauery Signed-off-by: Jeff Garzik commit ba53e6b4878e07411826312c59bfe49561594b6e Author: Dhananjay Phadke Date: Mon Mar 17 19:59:50 2008 -0700 netxen: remove low level tx lock o eliminate tx lock in netxen adapter struct, instead pound on netdev tx lock appropriately. o remove old "concurrent transmit" code that unnecessarily drops and reacquires tx lock in hard_xmit_frame(), this is already serialized the netdev xmit lock. o reduce scope of tx lock in tx cleanup. tx cleanup operates on different section of the ring than transmitting cpus and is guarded by producer and consumer indices. This fixes a race caused by rx softirq preemption on realtime kernels. Signed-off-by: Dhananjay Phadke Tested-by: Vernon Mauery Signed-off-by: Jeff Garzik commit 05aaa02d799e8e9548d57ac92fcb05e783027341 Author: Dhananjay Phadke Date: Mon Mar 17 19:59:49 2008 -0700 netxen: napi and irq cleanup o separate and simpler irq handler for msi interrupts, avoids few checks than legacy mode. o avoid redudant tx_has_work() and rx_has_work() checks in interrupt and napi, which can uncork irq based on racy (lockless) access to tx and rx ring indices. If we get interrupt, there's sufficient reason to schedule napi. o replenish rx ring more often, remove self-imposed threshold rcv_free that prevents posting rx desc to card. This improves performance in low memory. Signed-off-by: Dhananjay Phadke Tested-by: Vernon Mauery Signed-off-by: Jeff Garzik commit 443be7960be77f3345b44491c700ae4471b0fe57 Author: Dhananjay Phadke Date: Mon Mar 17 19:59:48 2008 -0700 netxen: improve msi support Recent netxen firmware has new scheme of generating MSI interrupts, it raises interrupt and blocks itself, waiting for driver to unmask. This reduces chance of spurious interrupts. The driver will be able to deal with older firmware as well. Signed-off-by: Dhananjay Phadke Tested-by: Vernon Mauery Signed-off-by: Jeff Garzik commit 9e6db60825ef7e7999abc610ce256ba768e58162 Author: Bryan Wu Date: Mon Mar 17 14:18:31 2008 -0700 smc91x: fix build breakage from the SMC_GET_MAC_ADDR API upgrade Cc: Jeff Garzik Cc: Deepak Saxena Cc: Nicolas Pitre Cc: Russell King Cc: Paul Mundt Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit c7793ace780942831f9b2b2b0518e810ecbd4d6f Author: Julia Lawall Date: Mon Mar 17 10:12:27 2008 -0700 ixgb: remove unused variable The variable num_group_tail_writes is initialized but never used otherwise. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ type T; identifier i; constant C; @@ ( extern T i; | - T i; <+... when != i - i = C; ...+> ) // Signed-off-by: Julia Lawall Signed-off-by: Auke Kok Signed-off-by: Jeff Garzik commit 1172899a30d0c26df934d63cc98241cd53fe7130 Author: Al Viro Date: Sun Mar 16 22:21:44 2008 +0000 e100: endianness annotations Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit 6d8126f988556d593f13be32cbe60dacf19c2d2c Author: Al Viro Date: Sun Mar 16 22:23:24 2008 +0000 igb trivial annotations Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit 7deb07b1befc9f09dbdaed66c9613a3d08f1c061 Author: Al Viro Date: Sun Mar 16 22:43:06 2008 +0000 igb: endianness fix le16_to_cpu() should be done before mask and shift... Signed-off-by: Al Viro Signed-off-by: Jeff Garzik commit 2cfb8b71ccb3ebca76cff48241527eba39226883 Author: Jay Vosburgh Date: Fri Mar 21 22:29:36 2008 -0700 bonding: update version Update version to 3.2.5. Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 92b41daa45a505268b11de9b7cbde2c13c0223b5 Author: Libor Pechacek Date: Fri Mar 21 22:29:35 2008 -0700 bonding: Fix sysfs attribute handling For bonding interfaces any attempt to read the sysfs directory contents after module removal results in an oops. The fix is to release sysfs attributes for the interfaces upon module unload. Signed-off-by: Libor Pechacek Acked-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 966bc6f434df4a02108d01dda8cd52951fe853da Author: Jay Vosburgh Date: Fri Mar 21 22:29:34 2008 -0700 bonding: fix two compiler warnings Fix two compiler warnings that are new with recent versions of gcc (apparently 4.2 and up). One is fixed by refactoring; this change was supplied by Stephen Hemminger. The other was fixed by labelling the variable as uninitialized_var() after confirming via inspection that it cannot actually be used uninitialized. Signed-off-by: Jay Vosburgh Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 2bf86b7aa8e74bf81a9872f7b610f49b610a4649 Author: Jay Vosburgh Date: Fri Mar 21 22:29:33 2008 -0700 bonding: Fix locking in 802.3ad mode The 802.3ad state machine lock can be acquired in both softirq and not softirq context, but was not held at _bh to prevent a deadlock (which could occur if a LACPDU arrived and was processed while the lock was held). Corrected this, now hold the state machine lock at _bh to prevent deadlock. Bug reported by Todd Fleisher . Signed-off-by: Jay Vosburgh Signed-off-by: Jeff Garzik commit 26c080bf8308449330037f91daa3ac0a7c41023e Author: Jay Schulist Date: Tue Mar 18 17:53:09 2008 -0400 smctr.c: fix logical-bitwise-or confusion This patch to drivers/net/tokenring/smctr.c fixes a "bitwise vs logical" or error. Signed-off-by: Jay Schulist Signed-off-by: Jeff Garzik commit 5c9fcb5deef4d3a49798d76c48b726d2e3c7df72 Author: Zhang Rui Date: Thu Mar 20 16:40:32 2008 +0800 ACPI: fix a regression of ACPI device driver autoloading commit 3620f2f2f39e7870cf1a4fb2e34063a142f28716 sets the cid of ACPI video/dock/bay device and leaves the hid empty. As a result, "modalias" should export the cid for devices which don't have a hid. ACPI Video driver is not autoloaded with commit 3620f2f2f39e7870cf1a4fb2e34063a142f28716 applied. "cat /sys/.../device:03(acpi video bus)/modalias" shows nothing. ACPI Video driver is autoloaded after revert that commit. "cat /sys/.../LNXVIDEO:0x/modalias" shows "acpi:LNXVIDEO:" ACPI Video driver is autoloaded with commit 3620f2f2f39e7870cf1a4fb2e34063a142f28716 and this patch applied. "cat /sys/.../device:03(acpi video bus)/modalias" shows "acpi:LNXVIDEO:" Signed-off-by: Zhang Rui Acked-by: Thomas Renninger Signed-off-by: Len Brown commit 05dda977f2574c3341abef9b74c27d2b362e1e3a Author: Linus Torvalds Date: Tue Mar 25 18:38:14 2008 -0700 Linux 2.6.25-rc7 commit b97d4803400a4442b0e4ae14d0bd8e83994b9004 Author: Bjorn Helgaas Date: Tue Mar 25 11:21:11 2008 -0600 ACPI: fix Medion _PRT quirk (use "ISA_", not "ISA") This fixes the builtin RTL8139 NIC on the Medion MD9580-F laptop. The BIOS reports the interrupt routing incorrectly. I recently added a quirk to work around this, and this patch fixes a typo in the quirk. We pad every ACPI pathname component to four characters, so ".ISA." will never match anything. We need ".ISA_." instead. Thank you Johann-Nikolaus Andreae for patiently testing this patch. See http://bugzilla.kernel.org/show_bug.cgi?id=4773 Signed-off-by: Bjorn Helgaas Signed-off-by: Linus Torvalds commit 898a19de1502649877091b398229026b4142c0e2 Author: Thomas Gleixner Date: Tue Mar 25 09:01:51 2008 +0100 clocksource: revert: use init_timer_deferrable for clocksource_watchdog Revert commit 1077f5a917b7c630231037826b344b2f7f5b903f Author: Parag Warudkar Date: Wed Jan 30 13:30:01 2008 +0100 clocksource.c: use init_timer_deferrable for clocksource_watchdog clocksource_watchdog can use a deferrable timer - reduces wakeups from idle per second. The watchdog timer needs to run with the specified interval. Otherwise it will miss the possible wrap of the watchdog clocksource. Signed-off-by: Thomas Gleixner Cc: stable@kernel.org commit 5004de1809a5ad97a76840da9f62a1111da505e7 Merge: e584152... 8c07e46... Author: Linus Torvalds Date: Tue Mar 25 09:06:44 2008 -0700 Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6 * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: i2c: Fix docbook problem ASoC/TLV320AIC3X: Stop I2C driver ID abuse i2c-omap: Fix unhandled fault i2c-bfin-twi: Disable BF54x support for now commit e584152571d1535a3d27138b91e0ece3b713dd6b Merge: 7ed7fe5... e48bb49... Author: Linus Torvalds Date: Tue Mar 25 09:06:19 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm: KVM: MMU: Fix memory leak on guest demand faults KVM: VMX: convert init_rmode_tss() to slots_lock KVM: MMU: handle page removal with shadow mapping KVM: MMU: Fix is_rmap_pte() with io ptes KVM: VMX: Restore tss even on x86_64 commit 7ed7fe5e82c9fc8473974fbd7389d169b8f17c77 Merge: a4083c9... a02f76c... Author: Linus Torvalds Date: Tue Mar 25 08:57:47 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: [PATCH] get stack footprint of pathname resolution back to relative sanity [PATCH] double iput() on failure exit in hugetlb [PATCH] double dput() on failure exit in tiny-shmem [PATCH] fix up new filp allocators [PATCH] check for null vfsmount in dentry_open() [PATCH] reiserfs: eliminate private use of struct file in xattr [PATCH] sanitize hppfs hppfs pass vfsmount to dentry_open() [PATCH] restore export of do_kern_mount() commit 5c29934de29ddd7ecd913d83cad28e872f2e8c78 Author: Olof Johansson Date: Tue Mar 25 10:28:26 2008 -0500 [POWERPC] update pasemi_defconfig Disable GEN_RTC since it conflicts with the i2c rtc drivers registering, besides that keep most of the new defaults. Signed-off-by: Olof Johansson commit e48bb497b95a0f7127f9ff596a6b4c4b206f7dcf Author: Avi Kivity Date: Sun Mar 23 14:21:08 2008 +0200 KVM: MMU: Fix memory leak on guest demand faults While backporting 72dc67a69690288538142df73a7e3ac66fea68dc, a gfn_to_page() call was duplicated instead of moved (due to an unrelated patch not being present in mainline). This caused a page reference leak, resulting in a fairly massive memory leak. Fix by removing the extraneous gfn_to_page() call. Signed-off-by: Avi Kivity commit 707a18a51d83d9180a63b3cbaad8eda7764a8689 Author: Marcelo Tosatti Date: Tue Mar 18 17:42:34 2008 -0300 KVM: VMX: convert init_rmode_tss() to slots_lock init_rmode_tss was forgotten during the conversion from mmap_sem to slots_lock. INFO: task qemu-system-x86:3748 blocked for more than 120 seconds. Call Trace: [] __down_read+0x86/0x9e [] do_page_fault+0x346/0x78e [] trace_hardirqs_on_thunk+0x35/0x3a [] error_exit+0x0/0xa9 [] copy_user_generic_string+0x17/0x40 [] :kvm:kvm_write_guest_page+0x3e/0x5f [] :kvm_intel:init_rmode_tss+0xa7/0xf9 [] :kvm_intel:vmx_vcpu_reset+0x10/0x38a [] :kvm:kvm_arch_vcpu_setup+0x20/0x53 [] :kvm:kvm_vm_ioctl+0xad/0x1cf [] __lock_acquire+0x4f7/0xc28 [] vfs_ioctl+0x21/0x6b [] do_vfs_ioctl+0x252/0x26b [] sys_ioctl+0x3c/0x5e [] system_call_after_swapgs+0x7b/0x80 Signed-off-by: Marcelo Tosatti Signed-off-by: Avi Kivity commit 15aaa819e20cb183f26392ed8ea16020630ef142 Author: Marcelo Tosatti Date: Mon Mar 17 10:08:18 2008 -0300 KVM: MMU: handle page removal with shadow mapping Do not assume that a shadow mapping will always point to the same host frame number. Fixes crash with madvise(MADV_DONTNEED). [avi: move after first printk(), add another printk()] Signed-off-by: Marcelo Tosatti Signed-off-by: Avi Kivity commit 4b1a80fa65aa9e2ec5696998856136c886385538 Author: Avi Kivity Date: Sun Mar 23 12:18:19 2008 +0200 KVM: MMU: Fix is_rmap_pte() with io ptes is_rmap_pte() doesn't take into account io ptes, which have the avail bit set. Signed-off-by: Avi Kivity commit 5dc832628229d2736fab10523566855c3cda622d Author: Avi Kivity Date: Sun Mar 16 18:48:26 2008 +0200 KVM: VMX: Restore tss even on x86_64 The vmx hardware state restore restores the tss selector and base address, but not its length. Usually, this does not matter since most of the tss contents is within the default length of 0x67. However, if a process is using ioperm() to grant itself I/O port permissions, an additional bitmap within the tss, but outside the default length is consulted. The effect is that the process will receive a SIGSEGV instead of transparently accessing the port. Fix by restoring the tss length. Note that i386 had this working already. Closes bugzilla 10246. Signed-off-by: Avi Kivity commit a4083c9271e0a697278e089f2c0b9a95363ada0a Merge: 4742dc1... 7fdba2f... Author: Linus Torvalds Date: Mon Mar 24 23:24:16 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB: Fix cut-and-paste error in rtl8150.c USB: ehci: stop vt6212 bus hogging USB: sierra: add another device id USB: sierra: dma fixes USB: add support for Motorola ROKR Z6 cellphone in mass storage mode USB: isd200: fix memory leak in isd200_get_inquiry_data USB: pl2303: another product ID USB: new quirk flag to avoid Set-Interface USB: fix gadgetfs class request delegation commit 4742dc1d7670bd00253d2dfb637d55446dc6ef81 Merge: 49741c4... 815d2d5... Author: Linus Torvalds Date: Mon Mar 24 23:23:39 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6: driver core: debug for bad dev_attr_show() return value. UIO: add pgprot_noncached() to UIO mmap code commit 49741c4d01554c2630cea02cfdf236b17062a912 Author: Andrew Morton Date: Mon Mar 17 14:21:18 2008 -0700 PCI: revert "pcie: utilize pcie transaction pending bit" Revert as it is reported to cause problems for people. commit 4348a2dc49f9baecd34a9b0904245488c6189398 Author: Shaohua Li Date: Wed Oct 24 10:45:08 2007 +0800 pcie: utilize pcie transaction pending bit PCIE has a mechanism to wait for Non-Posted request to complete. I think pci_disable_device is a good place to do this. Signed-off-by: Shaohua Li Signed-off-by: Greg Kroah-Hartman Due to the regression reported at http://bugzilla.kernel.org/show_bug.cgi?id=10065 Cc: Shaohua Li Cc: Soeren Sonnenburg Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 8a443df40b35da89e32fcd499d7720c8c2cc2eee Author: Mark Gross Date: Tue Mar 4 14:59:31 2008 -0800 PCI: iova: lockdep false alarm fix lockdep goes off on the iova copy_reserved_iova() because it and a function it calls grabs locks in the from, and the to of the copy operation. The function grab locks of the same lock classes triggering the warning. The first lock grabbed is for the constant reserved areas that is never accessed after early boot. Technically you could do without grabbing the locks for the "from" structure its copying reserved areas from. But dropping the from locks to me looks wrong, even though it would be ok. The affected code only runs in early boot as its setting up the DMAR engines. This patch gives the reserved_ioval_list locks special lockdep classes. Signed-off-by: Mark Gross Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 815d2d50da41f28aae58f5e9b3c61c3094422749 Author: Andrew Morton Date: Tue Mar 4 15:09:07 2008 -0800 driver core: debug for bad dev_attr_show() return value. Try to find the culprit who caused http://bugzilla.kernel.org/show_bug.cgi?id=10150 Cc: Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit c9698d6b1a90929e427a165bd8283f803f57d9bd Author: Jean-Samuel Chenard Date: Fri Mar 14 11:28:36 2008 +0100 UIO: add pgprot_noncached() to UIO mmap code Mapping of physical memory in UIO needs pgprot_noncached() to ensure that IO memory is not cached. Without pgprot_noncached(), it (accidentally) works on x86 and arm, but fails on PPC. Signed-off-by: Jean-Samuel Chenard Signed-off-by: Hans J Koch Cc: stable Signed-off-by: Greg Kroah-Hartman commit 7fdba2f2917da4403044d9ea5d239f9cc0e9693d Author: Robert P. J. Day Date: Sun Mar 9 20:44:52 2008 -0400 USB: Fix cut-and-paste error in rtl8150.c Signed-off-by: Robert P. J. Day Signed-off-by: Greg Kroah-Hartman commit 055b93c9e32a44acfe3e5e58b900f1e8fcd5f858 Author: Rene Herman Date: Thu Mar 20 00:58:16 2008 -0700 USB: ehci: stop vt6212 bus hogging The VIA VT6212 defaults to only waiting 1us between passes over EHCI's async ring, which hammers PCI badly ... and by preventing other devices from accessing the bus, causes problems like drops in IDE throughput, a problem that's been bugging users of those chips for several years. A (partial) datasheet for this chip eventually turned up, letting us see how to make it use a VIA-specific register to switch over to the the normal 10us value instead, as suggested by the EHCI specification Solution noted by Lev A. Melnikovsky. It's not clear whether this register exists on other VIA chips; we know that it's ineffective on the vt8235. So this patch only applies to chips that seem to be incarnations of the (discrete) vt6212. Signed-off-by: Rene Herman Tested-by: Lev A. Melnikovsky Tested-by: Alessandro Suardi Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 7f170a632d67297b4076947f9b42f55f710ccd42 Author: Kevin Lloyd Date: Fri Mar 14 00:53:24 2008 -0700 USB: sierra: add another device id Add support for the MC8775 device to the sierra driver. Signed-off-by: Kevin Lloyd Signed-off-by: Greg Kroah-Hartman commit 4f4f9c53c241a0205434c76d05eba2c5f160e9d0 Author: Oliver Neukum Date: Fri Mar 14 00:53:24 2008 -0700 USB: sierra: dma fixes while I was adding autosuspend to that driver I noticed a few issues. You were having DMAed buffers as a part of a structure. This will fail on platforms that are not DMA-coherent (arm, sparc, ppc, ...) Please test this patch to fix it. Signed-off-by: Kevin Lloyd Signed-off-by: Greg Kroah-Hartman commit cc36bdd47ae51b66780b317c1fa519221f894405 Author: Constantin Baranov Date: Sun Mar 16 20:04:23 2008 +0000 USB: add support for Motorola ROKR Z6 cellphone in mass storage mode Motorola ROKR Z6 cellphone has bugs in its USB, so it is impossible to use it as mass storage. Patch describes new "unusual" USB device for it with FIX_INQUIRY and FIX_CAPACITY flags and new BULK_IGNORE_TAG flag. Last flag relaxes check for equality of bcs->Tag and us->tag in usb_stor_Bulk_transport routine. Signed-off-by: Constantin Baranov Signed-off-by: Matthew Dharm Signed-off-by: Daniel Drake Cc: stable Signed-off-by: Greg Kroah-Hartman commit ba2ef3b36c8ad9aa1df6b2061b0a56f68c64776d Author: Boaz Harrosh Date: Mon Mar 17 14:21:01 2008 -0700 USB: isd200: fix memory leak in isd200_get_inquiry_data If the inquiry fails then the info structure on us->extra was not freed. Signed-off-by: Boaz Harrosh Acked-by: Alan Stern Cc: James Bottomley Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit b483b6aaa56f0db72fa50e85b6499a32d82009bf Author: Max Arnold Date: Thu Mar 20 16:43:56 2008 +0700 USB: pl2303: another product ID Device like this http://aldiga.com/english/A-100-USB-EDGE10.htm contains Prolific 2303 chip. Actually their site a bit outdated - I have AlDiga AL-11U GSM/GPRS/EDGE modem and it works with pl2303 module after adding corresponding product ID. By default modem uses baud rate 460800. GSM chipset - SIMCom SIM600, quad band 850/900/1800/1900 MHz Device info: T: Bus=04 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 5 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=067b ProdID=0611 Rev= 0.00 C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=500mA I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=pl2303 E: Ad=81(I) Atr=03(Int.) MxPS= 10 Ivl=1ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms From: Max Arnold Signed-off-by: Greg Kroah-Hartman commit 392e1d9817d0024c96aae237c3c4349e47c976fd Author: Alan Stern Date: Tue Mar 11 10:20:12 2008 -0400 USB: new quirk flag to avoid Set-Interface This patch (as1057) fixes a problem with the X-Rite/Gretag-Macbeth Eye-One Pro display colorimeter; the device crashes when it receives a Set-Interface request. A new quirk (USB_QUIRK_NO_SET_INTF) is introduced and a quirks entry is created for this device. Signed-off-by: Alan Stern Cc: stable Signed-off-by: Greg Kroah-Hartman commit 12cd5b984f825c5448aa4c0df561f8252076fd52 Author: Roy Hashimoto Date: Wed Mar 12 13:55:31 2008 -0800 USB: fix gadgetfs class request delegation gadgetfs (drivers/usb/gadget/inode.c) was not delegating all non-device requests to userspace. This patch makes the handling of all request cases consistent. Signed-off-by: Roy Hashimoto Acked-by: David Brownell Signed-off-by: Greg Kroah-Hartman commit 7c12c92fba4bd985ed6d909e5537468b268dcaa4 Merge: 5a17558... 16fddf5... Author: Linus Torvalds Date: Mon Mar 24 20:35:48 2008 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] mpc5200: Fix incorrect compatible string for the mdio node [POWERPC] Update some defconfigs commit 85a793533524f333e8d630dc22450e574b7e08d2 Author: David S. Miller Date: Mon Mar 24 20:06:24 2008 -0700 [SPARC64]: Make save_stack_trace() more efficient. Doing a 'flushw' every stack trace capture creates so much overhead that it makes lockdep next to unusable. We only care about the frame pointer chain and the function caller program counters, so flush those by hand to the stack frame. This is significantly more efficient than a 'flushw' because: 1) We only save 16 bytes per active register window to the stack. 2) This doesn't push the entire register window context of the current call chain out of the cpu, forcing register window fill traps as we return back down. Note that we can't use 'restore' and 'save' instructions to move around the register windows because that wouldn't work on Niagara processors. They optimize 'save' into a new register window by simply clearing out the registers instead of pulling them in from the on-chip register window backing store. Based upon a report by Tom Callaway. Signed-off-by: David S. Miller commit 5a17558f06993fdc509362f659582b52b0f921e3 Merge: d56dc0b... 4cde32f... Author: Linus Torvalds Date: Mon Mar 24 20:02:32 2008 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: [libata] ahci: SB600 workaround is suspect... play it safe for now sata_promise: fix hardreset hotplug events, take 2 libata: improve HPA error handling libata: assume no device is attached if both IDENTIFYs are aborted pata_it821x: use raw nbytes in check_atapi_dma libata: implement ata_qc_raw_nbytes() commit 4cde32fc4b32e96a99063af3183acdfd54c563f0 Author: Jeff Garzik Date: Mon Mar 24 22:40:40 2008 -0400 [libata] ahci: SB600 workaround is suspect... play it safe for now At least one report claims that a878539ef994787c447a98c2e3ba0fe3dad984ec failed to solve lockups, whereas the old limit-to-32-bit trick worked. Restore the 32-bit limit, but also leave the 255-sector limit in place, because we know that's needed as well. Signed-off-by: Jeff Garzik commit d56dc0b641da647012af573dac4a5fa7b9883fe0 Merge: 266c2e0... 4ce6efe... Author: Linus Torvalds Date: Mon Mar 24 19:32:38 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-linus * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-linus: kbuild: soften modpost checks when doing cross builds commit 16fddf5457d2a7eb5e96ceb016a8f722eca97af6 Merge: 5492a7e... cc7feea... Author: Paul Mackerras Date: Tue Mar 25 13:31:46 2008 +1100 Merge branch 'linux-2.6' into merge commit c07a9c4995827a4f4bcdbd07cec40ec87467f308 Author: Mikael Pettersson Date: Sun Mar 23 18:41:01 2008 +0100 sata_promise: fix hardreset hotplug events, take 2 A Promise SATA controller will signal hotplug events when a hard reset (COMRESET) is done on a port. These events aren't masked by the driver, and the unexpected interrupts will cause a sequence of failed reset attempts util libata's EH finally gives up. This has not been a common problem so far, but the pending libata hardreset-by-default changes makes it a critical issue. The solution is to disable hotplug events before a reset, and to reenable them afterwards. (Promise's driver does this too.) This patch adds SATA-specific versions of ->freeze() and ->thaw() that also disable and enable hotplug events. PATA ports continue to use the old versions of ->freeze() and ->thaw(). Accesses to the hotplug register must be serialised via host->lock. We rely on ap->lock == &ap->host->lock and that libata takes this lock before ->freeze() and ->thaw(). Document this requirement. The interrupt handler is adjusted so its hotplug register accesses are inside the region protected by host->lock. Tested on various chips (SATA300TX4, SATA300TX2plus, SATAII150TX4, FastTrack TX4000) with various combinations of SATA and PATA disks, with and without the pending hardreset-by-default changes. Signed-off-by: Mikael Pettersson Acked-by: Tejun Heo Signed-off-by: Jeff Garzik commit 266c2e0abeca649fa6667a1a427ad1da507c6375 Author: Linus Torvalds Date: Mon Mar 24 19:25:08 2008 -0700 Make printk() console semaphore accesses sensible The printk() logic on when/how to get the console semaphore was unreadable, this splits the code up into a few helper functions and makes it easier to follow what is going on. Signed-off-by: Linus Torvalds commit 5f7b703fe2be40db5a2bf136ac9e44cf5db267cc Author: Pavel Emelyanov Date: Mon Mar 24 12:29:53 2008 -0700 bsd_acct: using task_struct->tgid is not right in pid-namespaces In case we're accounting from a sub-namespace, the tgids reported will not refer to the right namespace. Save the pid_namespace we're accounting in on the acct_glbs and use it in do_acct_process. Two less :) places using the task_struct.tgid member. Signed-off-by: Pavel Emelyanov Cc: Oleg Nesterov Cc: "Paul E. McKenney" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a846a1954b6397e844fe1e258af7598897ec6159 Author: Pavel Emelyanov Date: Mon Mar 24 12:29:52 2008 -0700 bsd_acct: plain current->real_parent access is not always safe This is minor, but dereferencing even current real_parent is not safe on debug kernels, since the memory, this points to, can be unmapped - RCU protection is required. Besides, the tgid field is deprecated and is to be replaced with task_tgid_xxx call (the 2nd patch), so RCU will be required anyway. Signed-off-by: Pavel Emelyanov Cc: Oleg Nesterov Cc: "Paul E. McKenney" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4dd4b920218326231156c7991ce5b94afad841c3 Author: Andrew Morton Date: Mon Mar 24 12:29:52 2008 -0700 revert "kswapd should only wait on IO if there is IO" Revert commit f1a9ee758de7de1e040de849fdef46e6802ea117: Author: Rik van Riel Date: Thu Feb 7 00:14:08 2008 -0800 kswapd should only wait on IO if there is IO The current kswapd (and try_to_free_pages) code has an oddity where the code will wait on IO, even if there is no IO in flight. This problem is notable especially when the system scans through many unfreeable pages, causing unnecessary stalls in the VM. Additionally, tasks without __GFP_FS or __GFP_IO in the direct reclaim path will sleep if a significant number of pages are encountered that should be written out. This gives kswapd a chance to write out those pages, while the direct reclaim task sleeps. Signed-off-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds Because of large latencies and interactivity problems reported by Carlos, here: http://lkml.org/lkml/2008/3/22/211 Cc: Rik van Riel Cc: "Carlos R. Mafra" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 537878d2c988fa12bbfaec19ee060c7603a48230 Author: David Brownell Date: Mon Mar 24 12:29:51 2008 -0700 hw_random doc updates Update documentation for the hw_random support to be current: - Documentation/hw_random.txt has been updated to reflect the current code: it's a framework now, a "core" with a small sysfs interface, that hardware-specific drivers plug in to. Text specific to Intel hardware is now at the end. - Kconfig now references the Documentation/hw_random.txt file and better explains what this really does. Both chunks of documentation now higlight the fact that the kernel entropy pool is maintained by "rngd", and this driver has nothing directly to do with that important task. Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cb622bbb69e41f2746aadf5d7d527e77597abe2e Author: Ahmed S. Darwish Date: Mon Mar 24 12:29:49 2008 -0700 smackfs: remove redundant lock, fix open(,O_RDWR) Older smackfs was parsing MAC rules by characters, thus a need of locking write sessions on open() was needed. This lock is no longer useful now since each rule is handled by a single write() call. This is also a bugfix since seq_open() was not called if an open() O_RDWR flag was given, leading to a seq_read() without an initialized seq_file, thus an Oops. Signed-off-by: Ahmed S. Darwish Reported-by: Jonathan Corbet Acked-by: Casey Schaufler Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 58336114af4d2cce830201aae49e50b93ede6c5c Author: Mathieu Desnoyers Date: Mon Mar 24 12:29:49 2008 -0700 markers: remove ACCESS_ONCE As Paul pointed out, the ACCESS_ONCE are not needed because we already have the explicit surrounding memory barriers. Signed-off-by: Mathieu Desnoyers Cc: Christoph Hellwig Cc: Mike Mason Cc: Dipankar Sarma Cc: David Smith Cc: "Paul E. McKenney" Cc: Steven Rostedt Cc: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fd3c36f8b527d13cf311d15e0702bc0390956970 Author: Mathieu Desnoyers Date: Mon Mar 24 12:29:47 2008 -0700 markers: update preempt_disable. call_rcu, rcu_barrier comments Add comments requested by Andrew. Updated comments about synchronize_sched(). Since we use call_rcu and rcu_barrier now, these comments were out of sync with the code. Signed-off-by: Mathieu Desnoyers Cc: Christoph Hellwig Cc: Mike Mason Cc: Dipankar Sarma Cc: David Smith Cc: "Paul E. McKenney" Cc: Steven Rostedt Cc: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a982cbc7b3fe6cf72266f319286f29963c71b9e Author: Yinghai Lu Date: Mon Mar 24 12:29:45 2008 -0700 mm: fix boundary checking in free_bootmem_core With numa enabled, some callers could have a range of memory on one node but try to free that on other node. This can cause some pages to be freed wrongly. For example: when we try to allocate 128g boot ram early for gart/swiotlb, and free that range later so gart/swiotlb can get some range afterwards. With this patch, we don't need to care which node holds the range, just loop to call free_bootmem_node for all online nodes. This patch makes free_bootmem_core() more robust by trimming the sidx and eidx according the ram range that the node has. And make the free_bootmem_core handle this out of range case. We could use bdata_list to make sure the range can be freed for sure. So next time, we don't need to loop online nodes and could use free_bootmem directly. Signed-off-by: Yinghai Lu Cc: Andi Kleen Cc: Yasunori Goto Cc: KAMEZAWA Hiroyuki Acked-by: Ingo Molnar Tested-by: Ingo Molnar Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2875fb65f8e40401c4b781ebc5002df10485f635 Author: Ingo van Lil Date: Mon Mar 24 12:29:44 2008 -0700 mtd: memory corruption in block2mtd.c The block2mtd driver (drivers/mtd/devices/block2mtd.c) will kfree an on-stack pointer when handling an invalid argument line (e.g. block2mtd=/dev/loop0,xxx). The kfree was added some time ago when "name" was dynamically allocated. Signed-off-by: Ingo van Lil Acked-by: Joern Engel Cc: David Woodhouse Cc: Cc: Andrew Morton Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1312848e92a0686cb5124aa86ea58d55ba795742 Author: Pavel Machek Date: Mon Mar 24 12:29:43 2008 -0700 kernel-parameters.txt: document memmap option better Provide example for memmap exclude option (it is slightly strange and non-trivial) and provide nice small HOWTO for people with bad memory. Signed-off-by: Jan-Simon Moeller Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5492a7e4cba8e38419d489f0865de0a67c737e8a Author: Grant Likely Date: Sat Mar 22 14:25:15 2008 +1100 [POWERPC] mpc5200: Fix incorrect compatible string for the mdio node The MDIO node in the lite5200b.dts file needs to also claim compatibility with the older mpc5200 chip. Otherwise the driver won't find the device. Signed-off-by: Grant Likely Signed-off-by: Paul Mackerras commit dda7aba119536084d082cd11d4781fe15d7355f2 Author: Tejun Heo Date: Sun Mar 23 21:05:15 2008 +0900 libata: improve HPA error handling There's no point in retrying and eventually failing device detection when the device rejects READ_NATIVE_MAX[_EXT]. Disable HPA unlocking if READ_NATIVE_MAX[_EXT] is rejected as done when SET_MAX[_EXT] is rejected. This allows some old drives to work even if they aren't blacklisted. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 1ffc151fcddf524d0c76709d7e7a2af0255acb6b Author: Tejun Heo Date: Sun Mar 23 15:16:53 2008 +0900 libata: assume no device is attached if both IDENTIFYs are aborted This is to fix bugzilla #10254. QSI cdrom attached to pata_sis as secondary master appears as phantom device for the slave. Interestingly, instead of not setting DRQ after IDENTIFY which triggers NODEV_HINT, it aborts both IDENTIFY and IDENTIFY PACKET which makes EH retry. Modify EH such that it assumes no device is attached if both flavors of IDENTIFY are aborted by the device. There really isn't much point in retrying when the device actively aborts the commands. While at it, convert NODEV detection message to ata_dev_printk() to help debugging obscure detection problems. This problem was reported by Jan Bücken. Signed-off-by: Tejun Heo Cc: Jan Bücken Acked-by: Alan Cox Signed-off-by: Jeff Garzik commit b63b133165b876838e8685350ef469620f4abd99 Author: Tejun Heo Date: Tue Mar 18 17:56:12 2008 +0900 pata_it821x: use raw nbytes in check_atapi_dma pata_it821x needs to look at raw request size in check_atapi_dma(). Signed-off-by: Tejun Heo Cc: Alan Cox Signed-off-by: Jeff Garzik commit aacda37538e7f9cf2148eedf3766239829e51ba4 Author: Tejun Heo Date: Tue Mar 18 17:47:43 2008 +0900 libata: implement ata_qc_raw_nbytes() Implement ata_qc_raw_nbytes() which determines the raw user-requested size of a PC command. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 7a193a5df7580957c918269e4ba2fccbe4141cb4 Author: Michael Buesch Date: Sun Mar 23 01:08:22 2008 +0100 b43: Remove irqs_disabled() sanity checks Remove all irqs_disabled() sanity checks, as they are not safe on a RT-enabled kernel and will trigger bogus warnings. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit ffa9256aaa28af24ea9d2a7d81b3b93b571226a3 Author: Michael Buesch Date: Sat Mar 22 22:04:45 2008 +0100 b43: Fix DMA mapping leakage This fixes a DMA mapping leakage in the case where we reject a DMA buffer because of its address. Signed-off-by: Michael Buesch Cc: Christian Casteyde Signed-off-by: John W. Linville commit c83dbf687f1e0f6eccb96cd08438285e280a3876 Author: Reinette Chatre Date: Fri Mar 21 13:53:41 2008 -0700 iwlwifi: fix __devexit_p points to __devexit functions The iwlxxxx_pci_remove functions are not needed when drivers are not compiled as modules - they can thus be discarded at kernel link time. This is already captured by having them as __devexit_p in the pci_driver struct - these are supposed to be pointers to __devexit functions, but was not. This is now fixed. This problem was reported by Toralf Forster when testing the compilation of 2.6.25-rc6. Signed-off-by: Reinette Chatre CC: Toralf Forster Signed-off-by: Tomas Winkler Signed-off-by: John W. Linville commit c2c25fb8144e9e77910294ee76a888e5c8477793 Author: Reinette Chatre Date: Fri Mar 21 13:53:40 2008 -0700 MAINTAINERS: update iwlwifi git url Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit 9fe0a8c838f0584bca51bcc2f81e5c2c933a5880 Author: John W. Linville Date: Thu Mar 20 16:19:04 2008 -0400 arlan: fix warning when PROC_FS=n drivers/net/wireless/arlan-proc.c:1216: warning: 'arlan_root_table' defined but not used Signed-off-by: John W. Linville commit a9f46786ec5bb291c9b5e6cc6f83ebbd3fceea51 Author: Rick Farrington Date: Tue Mar 18 14:57:49 2008 -0700 iwlwifi: mac start synchronization issue This patch fixes a synchronization problem on the 4965 and 3945 with the mac start callback routine. The problem is that this function exits BEFORE the 'xxx_alive_start' has completed. This can lead to a problem if a subsequent MAC callback attempts to issue a firmware command. Signed-off-by: Rick Farrington Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit ea995abfed7f0726aaa22580aaf10b2cf5d91be5 Author: Al Viro Date: Sun Mar 16 22:43:06 2008 +0000 wavelan_cs arm fix Even when all fields are unsigned char, struct still might have alignment > 1. Does so on arm, unless you explicitly say that it's packed... Signed-off-by: Al Viro Signed-off-by: John W. Linville commit 0a74892b6df8f1e7191dffd5a2b0e0e2ca7e73fb Author: Masakazu Mokuno Date: Sat Mar 15 21:38:29 2008 +0100 rt2x00: Add id for Corega CG-WLUSB2GPX This adds the id for Corega CG-WLUSB2GPX. Signed-off-by: Masakazu Mokuno Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 7c44b6e922052989ca2af62aa4ff9ff30f04e092 Author: Pascal Terjan Date: Thu Mar 13 19:13:24 2008 +0100 iwlwifi: fix a typo in Kconfig message Signed-off-by: Pascal Terjan Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit df9dcb4588aca9cc243cf1f3f454361a84e1cbdb Author: Kazunori MIYAZAWA Date: Mon Mar 24 14:51:51 2008 -0700 [IPSEC]: Fix inter address family IPsec tunnel handling. Signed-off-by: Kazunori MIYAZAWA Signed-off-by: David S. Miller commit fa86d322d89995fef1bfb5cc768b89d8c22ea0d9 Author: Pavel Emelyanov Date: Mon Mar 24 14:48:59 2008 -0700 [NEIGH]: Fix race between pneigh deletion and ipv6's ndisc_recv_ns (v3). Proxy neighbors do not have any reference counting, so any caller of pneigh_lookup (unless it's a netlink triggered add/del routine) should _not_ perform any actions on the found proxy entry. There's one exception from this rule - the ipv6's ndisc_recv_ns() uses found entry to check the flags for NTF_ROUTER. This creates a race between the ndisc and pneigh_delete - after the pneigh is returned to the caller, the nd_tbl.lock is dropped and the deleting procedure may proceed. One of the fixes would be to add a reference counting, but this problem exists for ndisc only. Besides such a patch would be too big for -rc4. So I propose to introduce a __pneigh_lookup() which is supposed to be called with the lock held and use it in ndisc code to check the flags on alive pneigh entry. Changes from v2: As David noticed, Exported the __pneigh_lookup() to ipv6 module. The checkpatch generates a warning on it, since the EXPORT_SYMBOL does not follow the symbol itself, but in this file all the exports come at the end, so I decided no to break this harmony. Changes from v1: Fixed comments from YOSHIFUJI - indentation of prototype in header and the pndisc_check_router() name - and a compilation fix, pointed by Daniel - the is_routed was (falsely) considered as uninitialized by gcc. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit cc7feea39bed2951cc29af3ad642f39a99dfe8d3 Merge: 6f58d79... 7ea6fd7... Author: Linus Torvalds Date: Mon Mar 24 13:09:34 2008 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] Fix Oops with TQM5200 on TQM5200 [POWERPC] mpc5200: Fix null dereference if bestcomm fails to initialize [POWERPC] mpc5200-fec: Fix possible NULL dereference in mdio driver [POWERPC] Fix crash in init_ipic_sysfs on efika [POWERPC] Don't use 64k pages for ioremap on pSeries commit 6f58d79598c184dc4f18ceddfaa5fa7483bce0a5 Merge: ca1a6ba... 6d00815... Author: Linus Torvalds Date: Mon Mar 24 13:08:01 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: exec PT_DTRACE [SPARC64]: Use shorter list_splice_init() for brevity. [SPARC64]: Remove most limitations to kernel image size. commit ca1a6ba57c5fca755b4ac7a13395bca2e2e371b1 Merge: d307377... 8f3ea33... Author: Linus Torvalds Date: Mon Mar 24 13:07:24 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: sch_htb: fix "too many events" situation connector: convert to single-threaded workqueue [ATM]: When proc_create() fails, do some error handling work and return -ENOMEM. [SUNGEM]: Fix NAPI assertion failure. BNX2X: prevent ethtool from setting port type [9P] net/9p/trans_fd.c: remove unused variable [IPV6] net/ipv6/ndisc.c: remove unused variable [IPV4] fib_trie: fix warning from rcu_assign_poinger [TCP]: Let skbs grow over a page on fast peers [DLCI]: Fix tiny race between module unload and sock_ioctl. [SCTP]: Fix build warnings with IPV6 disabled. [IPV4]: Fix null dereference in ip_defrag commit d3073779f8362d64b804882f5f41c208c4a5e11e Author: Roland Dreier Date: Mon Mar 24 12:03:03 2008 -0400 SVCRDMA: Use only 1 RDMA read scatter entry for iWARP adapters The iWARP protocol limits RDMA read requests to a single scatter entry. NFS/RDMA has code in rdma_read_max_sge() that is supposed to limit the sge_count for RDMA read requests to 1, but the code to do that is inside an #ifdef RDMA_TRANSPORT_IWARP block. In the mainline kernel at least, RDMA_TRANSPORT_IWARP is an enum and not a preprocessor #define, so the #ifdef'ed code is never compiled. In my test of a kernel build with -j8 on an NFS/RDMA mount, this problem eventually leads to trouble starting with: svcrdma: Error posting send = -22 svcrdma : RDMA_READ error = -22 and things go downhill from there. The trivial fix is to delete the #ifdef guard. The check seems to be a remnant of when the NFS/RDMA code was not merged and needed to compile against multiple kernel versions, although I don't think it ever worked as intended. In any case now that the code is upstream there's no need to test whether the RDMA_TRANSPORT_IWARP constant is defined or not. Without this patch, my kernel build on an NFS/RDMA mount using NetEffect adapters quickly and 100% reproducibly failed with an error like: ld: final link failed: Software caused connection abort With the patch applied I was able to complete a kernel build on the same setup. (Tom Tucker says this is "actually an _ancient_ remnant when it had to compile against iWARP vs. non-iWARP enabled OFA trees.") Signed-off-by: Roland Dreier Acked-by: Tom Tucker Signed-off-by: J. Bruce Fields Signed-off-by: Linus Torvalds commit b9e76a00749521f2b080fa8a4fb15f66538ab756 Author: Linus Torvalds Date: Mon Mar 24 11:22:39 2008 -0700 x86-32: Pass the full resource data to ioremap() It appears that 64-bit PCI resources cannot possibly ever have worked on x86-32 even when the RESOURCES_64BIT config option was set, because any driver that tried to [pci_]ioremap() the resource would have been unable to do so because the high 32 bits would have been silently dropped on the floor by the ioremap() routines that only used "unsigned long". Change them to use "resource_size_t" instead, which properly encodes the whole 64-bit resource data if RESOURCES_64BIT is enabled. Acked-by: H. Peter Anvin Acked-by: Stefan Richter Cc: Ivan Kokshaysky Signed-off-by: Linus Torvalds commit 92896bd9fd75b1c993b92874d339a8088bb75560 Author: Linus Torvalds Date: Mon Mar 24 11:07:15 2008 -0700 Don't 'printk()' while holding xtime lock for writing The printk() can deadlock because it can wake up klogd(), and task enqueueing will try to read the time in order to set a hrtimer. Reported-by: Marcin Slusarz Debugged-by: Peter Zijlstra Cc: Ingo Molnar Cc: Thomas Gleixner Signed-off-by: Linus Torvalds commit 481419ec9fbdf3f4ec5389c7e91a81b4a7ebee8d Author: Helge Deller Date: Mon Mar 24 11:02:06 2008 -0400 Input: apm-power - fix crash when unloading modules Fix a crash in the apm-power driver when an input-device, such as keyboard driver module, is unloaded. Signed-off-by: Helge Deller Signed-off-by: Dmitry Torokhov commit eff2f1ec37c114fda63ac1dd15c9ca9ac7e68db4 Author: Kumar Gala Date: Mon Mar 24 08:56:06 2008 -0500 [POWERPC] Update some defconfigs Signed-off-by: Kumar Gala commit 7ea6fd7e2df041297298b5feb5b7b78a2b1a5310 Author: Anatolij Gustschin Date: Sat Mar 22 21:49:05 2008 +1100 [POWERPC] Fix Oops with TQM5200 on TQM5200 The "bestcomm-core" driver defines its of_match table as follows static struct of_device_id mpc52xx_bcom_of_match[] = { { .type = "dma-controller", .compatible = "fsl,mpc5200-bestcomm", }, { .type = "dma-controller", .compatible = "mpc5200-bestcomm", }, {}, }; so while registering the driver, the driver's probe function won't be called, because the device tree node doesn't have a device_type property. Thus the driver's bcom_engine structure won't be allocated. Referencing this structure later causes observed Oops. Checking bcom_eng pointer for NULL before referencing data pointed by it prevents oopsing, but fec driver still doesn't work (because of the lost bestcomm match and resulted task allocation failure). Actually the compatible property exists and should match and so the fec driver should work. This removes .type = "dma-controller" from the bestcomm driver's mpc52xx_bcom_of_match table to solve the problem. Signed-off-by: Anatolij Gustschin Acked-by: Grant Likely Signed-off-by: Paul Mackerras commit 9560aea4e9d17cb75113c6051e800222fd5c71a4 Author: Grant Likely Date: Sat Mar 22 14:41:05 2008 +1100 [POWERPC] mpc5200: Fix null dereference if bestcomm fails to initialize If the bestcomm initialization fails, calls to the task allocate function should fail gracefully instead of oopsing with a NULL deref. Signed-off-by: Grant Likely Signed-off-by: Paul Mackerras commit b8c19eb16a7e6df57d0f6d67e42ce026e5d5930b Author: Grant Likely Date: Sat Mar 22 14:20:29 2008 +1100 [POWERPC] mpc5200-fec: Fix possible NULL dereference in mdio driver If the reg property is missing from the phy node (unlikely, but possible), then the kernel will oops with a NULL pointer dereference. This fixes it by checking the pointer first. Signed-off-by: Grant Likely Signed-off-by: Paul Mackerras commit 1428a9fa586cb80acf98289f797f58b8bd662598 Author: Olaf Hering Date: Tue Mar 18 06:53:05 2008 +1100 [POWERPC] Fix crash in init_ipic_sysfs on efika The global primary_ipic in arch/powerpc/sysdev/ipic.c can remain NULL if ipic_init() fails, which will happen on machines that don't have an ipic interrupt controller. init_ipic_sysfs() will crash in that case. Acked-by: Grant Likely Signed-off-by: Paul Mackerras commit cfe666b145cecffe784d98e60ffe201a5dc57ac3 Author: Paul Mackerras Date: Mon Mar 24 17:41:22 2008 +1100 [POWERPC] Don't use 64k pages for ioremap on pSeries On pSeries, the hypervisor doesn't let us map in the eHEA ethernet adapter using 64k pages, and thus the ehea driver will fail if 64k pages are configured. This works around the problem by always using 4k pages for ioremap on pSeries (but not on other platforms). A better fix would be to check whether the partition could ever have an eHEA adapter, and only force 4k pages if it could, but this will do for 2.6.25. This is based on an earlier patch by Tony Breeds. Signed-off-by: Paul Mackerras commit 6d008153234c4cccae7bb0170defeea18258db4a Author: Roland McGrath Date: Sun Mar 23 22:50:16 2008 -0700 [SPARC64]: exec PT_DTRACE The PT_DTRACE flag is meaningless and obsolete. Don't touch it. Signed-off-by: Roland McGrath Signed-off-by: David S. Miller commit 1f17131bb46065141069dee9fbcc4bdd0e9c2a2e Author: Robert P. J. Day Date: Sun Mar 23 22:48:29 2008 -0700 [SPARC64]: Use shorter list_splice_init() for brevity. Signed-off-by: Robert P. J. Day Signed-off-by: David S. Miller commit 8f3ea33a5078a09eba12bfe57424507809367756 Author: Martin Devera Date: Sun Mar 23 22:00:38 2008 -0700 sch_htb: fix "too many events" situation HTB is event driven algorithm and part of its work is to apply scheduled events at proper times. It tried to defend itself from livelock by processing only limited number of events per dequeue. Because of faster computers some users already hit this hardcoded limit. This patch limits processing up to 2 jiffies (why not 1 jiffie ? because it might stop prematurely when only fraction of jiffie remains). Signed-off-by: Martin Devera Signed-off-by: David S. Miller commit 4b1b366721101f2f0d2350fbdccb679f7909cf57 Author: Evgeniy Polyakov Date: Sun Mar 23 21:51:12 2008 -0700 connector: convert to single-threaded workqueue From: Evgeniy Polyakov We don't need one cqueue thread for each CPU. cqueue is used for receiving userspace datagrams, which are very rare and thus will happily live with a single queue. Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit dbee0d3f4603b9d0e56234a0743321fe4dad31ca Author: Wang Chen Date: Sun Mar 23 21:45:36 2008 -0700 [ATM]: When proc_create() fails, do some error handling work and return -ENOMEM. Signed-off-by: Wang Chen Signed-off-by: David S. Miller commit 4ce6efed48d736e3384c39ff87bda723e1f8e041 Author: Sam Ravnborg Date: Sun Mar 23 21:38:54 2008 +0100 kbuild: soften modpost checks when doing cross builds The module alias support in the kernel have a consistency check where it is checked that the size of a structure in the kernel and on the build host are the same. For cross builds this check does not make sense so detect when we do cross builds and silently skip the check in these situations. This fixes a build bug for a wireless driver when cross building for arm. Acked-by: Michael Buesch Tested-by: Gordon Farquharson Signed-off-by: Sam Ravnborg Cc: stable@kernel.org commit 8c07e46f39d8c613cf2281c7d87908c0105fb0d0 Author: Randy Dunlap Date: Sun Mar 23 20:28:20 2008 +0100 i2c: Fix docbook problem Sometimes kernel-doc and xmlto conspire to create output that is invalid and causes problems. Until I know a real/better solution, change the source code that causes this. If anyone has better fixes or can just explain what is happening here, that would be great. xmlto: input does not validate (status 1) mmotm-2008-0314-1449/Documentation/DocBook/kernel-api.xml:71468: parser error : Opening and ending tag mismatch: programlisting line 71464 and para ^ mmotm-2008-0314-1449/Documentation/DocBook/kernel-api.xml:71480: parser error : Opening and ending tag mismatch: para line 71473 and programlisting ^ make[1]: *** [Documentation/DocBook/kernel-api.html] Error 1 Signed-off-by: Randy Dunlap Signed-off-by: Jean Delvare commit bc80cc55f0a1689b86bf037c9d84cb7ff2b95131 Author: Jean Delvare Date: Sun Mar 23 20:28:20 2008 +0100 ASoC/TLV320AIC3X: Stop I2C driver ID abuse Please stop using random I2C driver IDs. Also removed a pointless initialization to 0 of a static struct member. Acked-by: Takashi Iwai Cc: Jarkko Nikula Signed-off-by: Jean Delvare commit f08ac4e79424c266aed8282939649104b37f53b4 Author: Tony Lindgren Date: Sun Mar 23 20:28:20 2008 +0100 i2c-omap: Fix unhandled fault If an I2C interrupt happens between disabling interface clock and functional clock, the interrupt handler will produce an external abort on non-linefetch error when trying to access driver registers while interface clock is disabled. This patch fixes the problem by saving and disabling i2c-omap interrupt before turning off the clocks. Also disable functional clock before the interface clock as suggested by Paul Walmsley. Patch also renames enable/disable_clocks functions to unidle/idle functions. Note that the driver is currently not taking advantage of the idle interrupts. To use the idle interrupts, driver would have to enable interface clock based on the idle interrupt and dev->idle flag. This patch has been tested in linux-omap tree with various omaps. Cc: Paul Walmsley Signed-off-by: Tony Lindgren Signed-off-by: Jean Delvare commit 70849251147c3499afb8d7500d0fba240da73456 Author: Bryan Wu Date: Sun Mar 23 20:28:20 2008 +0100 i2c-bfin-twi: Disable BF54x support for now The i2c-bfin-twi driver doesn't support BF54x for now due to missing header definitions causing the build to fail. Exclude it for now, it will be enabled again later. Signed-off-by: Bryan Wu Signed-off-by: Jean Delvare commit da990a2402aeaee84837f29054c4628eb02f7493 Author: David S. Miller Date: Sun Mar 23 03:35:12 2008 -0700 [SUNGEM]: Fix NAPI assertion failure. As reported by Johannes Berg: I started getting this warning with recent kernels: [ 773.908927] ------------[ cut here ]------------ [ 773.908954] Badness at net/core/dev.c:2204 ... If we loop more than once in gem_poll(), we'll use more than the real budget in our gem_rx() calls, thus eventually trigger the caller's assertions in net_rx_action(). Subtract "work_done" from "budget" for the second arg to gem_rx() to fix the bug. Signed-off-by: David S. Miller commit 2572c149a2f52232ce690ddb9c6fd0c90ffd61cd Author: Eliezer Tamir Date: Sun Mar 23 03:07:45 2008 -0700 BNX2X: prevent ethtool from setting port type On 10GBaseT boards setting the type to TP will cause the driver to try to configure 1GBaseT. Since there are currently no boards that support setting of the port type, disable this for now. Signed-off-by: Eliezer Tamir Signed-off-by: David S. Miller commit 53a6201fdfa04accc91ea1a7accce8e8bc37ef8e Author: Julia Lawall Date: Sat Mar 22 18:05:33 2008 -0700 [9P] net/9p/trans_fd.c: remove unused variable The variable cb is initialized but never used otherwise. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ type T; identifier i; constant C; @@ ( extern T i; | - T i; <+... when != i - i = C; ...+> ) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit 421f099bc555c5f1516fdf5060de1d6bb5f51002 Author: Julia Lawall Date: Sat Mar 22 18:04:16 2008 -0700 [IPV6] net/ipv6/ndisc.c: remove unused variable The variable hlen is initialized but never used otherwise. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // @@ type T; identifier i; constant C; @@ ( extern T i; | - T i; <+... when != i - i = C; ...+> ) // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit 6440cc9e0f48ade57af7be28008cbfa6a991f287 Author: Stephen Hemminger Date: Sat Mar 22 17:59:58 2008 -0700 [IPV4] fib_trie: fix warning from rcu_assign_poinger This gets rid of a warning caused by the test in rcu_assign_pointer. I tried to fix rcu_assign_pointer, but that devolved into a long set of discussions about doing it right that came to no real solution. Since the test in rcu_assign_pointer for constant NULL would never succeed in fib_trie, just open code instead. Signed-off-by: Stephen Hemminger Acked-by: Paul E. McKenney Signed-off-by: David S. Miller commit d2532dd20a126020de407c1c2476a75b53fce7ac Merge: 7f8ed18... f2b2b59... Author: Linus Torvalds Date: Sat Mar 22 17:07:59 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: RDMA/nes: Fix MSS calculation on RDMA path commit 7f8ed1855d7f23eb5fa1b5d2f890b748ecf95179 Merge: 0d995b2... ca4e2ab... Author: Linus Torvalds Date: Sat Mar 22 17:06:57 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: Revert "ide-tape: schedule driver for removal after 6 months" ide: mark "hdx=remap" and "hdx=remap63" kernel parameters as obsoleted ide: mark "hdx=[driver_name]" and "hdx=scsi" kernel parameters as obsoleted ide: Documentation/ide/ide.txt fixes ide: mark special "ide0=" kernel parameters as obsoleted ide: remove commented out entries from ide_pio_blacklist[] commit 0d995b2b446c2304c04058bedba49460823adbf7 Merge: 130eb46... 04b6e6e... Author: Linus Torvalds Date: Sat Mar 22 17:05:31 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] Fix mem leak on dfs referral [CIFS] file create with acl support enabled is slow [CIFS] Fix mtime on cp -p when file data cached but written out too late [CIFS] Fix build problem [CIFS] cifs: replace remaining __FUNCTION__ occurrences [CIFS] DFS patch that connects inode with dfs handling ops commit 130eb4653550ff9c73e09858464446cc9d59ff7b Merge: f16278c... 9e96304... Author: Linus Torvalds Date: Sat Mar 22 17:04:58 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86: x86: revert: reserve dma32 early for gart commit f16278c679aa72e28288435b313ba2d4494d6be5 Author: Hans Rosenfeld Date: Fri Mar 21 18:46:59 2008 -0500 Change pagemap output format to allow for future reporting of huge pages Change pagemap output format to allow for future reporting of huge pages. (Format comment and minor cleanups: mpm@selenic.com) Signed-off-by: Hans Rosenfeld Signed-off-by: Matt Mackall Signed-off-by: Linus Torvalds commit 51ec92e295d563dd5712d198a7e46c2ae5ccccb2 Author: Pierre Ossman Date: Fri Mar 21 23:54:50 2008 +0100 mmc: use sysfs groups to handle conditional attributes Suppressing uevents turned out to be a bad idea as it screws up the order of events, making user space very confused. Change the system to use sysfs groups instead. This is a regression that, for some odd reason, has gone unnoticed for some time. It confuses hal so that the block devices (which have the mmc device as a parent) are not registered. End result being that desktop magic when cards are inserted won't work. Signed-off-by: Pierre Ossman Signed-off-by: Linus Torvalds commit 03c086a747d0b242878eb881971ec61c1555869d Author: Darren Salt Date: Thu Mar 13 15:35:49 2008 +0000 PNP: increase the number of PnP memory resources from 12 to 24 Increase the number of PnP memory resources from 12 to 24. This removes an "exceeded the max num of mem resources" warning on boot. I also noticed the reservation of two more iomem ranges on the computer on which this was tested. Signed-off-by: Darren Salt Signed-off-by: Ingo Molnar Acked-by: Bjorn Helgaas Signed-off-by: Linus Torvalds commit 245073f0b3a8b8b626f3222dacb483695bf46419 Author: Bjorn Helgaas Date: Fri Mar 21 12:08:37 2008 -0600 ISAPNP: fix limits of logical device register set PNP_MAX_MEM and PNP_MAX_PORT are mainly used to size tables of PNP device resources. In 2.6.24, we increased their values to accomodate ACPI devices that have many resources: 2.6.23 2.6.24 ------ ------ PNP_MAX_MEM 4 12 PNP_MAX_PORT 8 40 However, ISAPNP also used these constants as the size of parts of the logical device register set. This register set is fixed by hardware, so increasing the constants meant that we were reading and writing unintended parts of the register set. This patch changes ISAPNP to use the correct register set sizes (the same values we used prior to 2.6.24). Signed-off-by: Bjorn Helgaas Signed-off-by: Linus Torvalds commit 04b6e6ec1a9340ab77637cae9b51b984d9d706d8 Author: Steve French Date: Sat Mar 22 22:57:44 2008 +0000 [CIFS] Fix mem leak on dfs referral Signed-off-by: Igor Mammedov Signed-off-by: Steve French commit 69d1506731168d6845a76a303b2c45f7c05f3f2c Author: Herbert Xu Date: Sat Mar 22 15:47:05 2008 -0700 [TCP]: Let skbs grow over a page on fast peers While testing the virtio-net driver on KVM with TSO I noticed that TSO performance with a 1500 MTU is significantly worse compared to the performance of non-TSO with a 16436 MTU. The packet dump shows that most of the packets sent are smaller than a page. Looking at the code this actually is quite obvious as it always stop extending the packet if it's the first packet yet to be sent and if it's larger than the MSS. Since each extension is bound by the page size, this means that (given a 1500 MTU) we're very unlikely to construct packets greater than a page, provided that the receiver and the path is fast enough so that packets can always be sent immediately. The fix is also quite obvious. The push calls inside the loop is just an optimisation so that we don't end up doing all the sending at the end of the loop. Therefore there is no specific reason why it has to do so at MSS boundaries. For TSO, the most natural extension of this optimisation is to do the pushing once the skb exceeds the TSO size goal. This is what the patch does and testing with KVM shows that the TSO performance with a 1500 MTU easily surpasses that of a 16436 MTU and indeed the packet sizes sent are generally larger than 16436. I don't see any obvious downsides for slower peers or connections, but it would be prudent to test this extensively to ensure that those cases don't regress. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 9e9630481ee8ef33f1cce71ce3636169fa37cd49 Author: Thomas Gleixner Date: Sat Mar 22 14:13:06 2008 +0100 x86: revert: reserve dma32 early for gart Revert commit f62f1fc9ef94f74fda2b456d935ba2da69fa0a40 Author: Yinghai Lu Date: Fri Mar 7 15:02:50 2008 -0800 x86: reserve dma32 early for gart The patch has a dependency on bootmem modifications which are not .25 material that late in the -rc cycle. The problem which is addressed by the patch is limited to machines with 256G and more memory booted with NUMA disabled. This is not a .25 regression and the audience which is affected by this problem is very limited, so it's safer to do the revert than pulling in intrusive bootmem changes right now. Signed-off-by: Thomas Gleixner commit ca4e2ab5b2764562fe3d41b95b27e6bbd4733d66 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 22 16:44:27 2008 +0100 Revert "ide-tape: schedule driver for removal after 6 months" This reverts commit d48567dd43868b3d2e1fcc33ee76dc2d38a1ddeb. Borislav is working on ide-tape "light" version instead. Cc: Borislav Petkov Signed-off-by: Bartlomiej Zolnierkiewicz commit d708c40da83a86551556999e924e27fdc43dad71 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 22 16:40:22 2008 +0100 ide: mark "hdx=remap" and "hdx=remap63" kernel parameters as obsoleted Mark "hdx=remap" and "hdx=remap63" kernel parameters as obsoleted (they are layering violation and should be dealt with in the same way as done by libata - device-mapper should be used instead). Signed-off-by: Bartlomiej Zolnierkiewicz commit 15220d9b5a7e6f4ff251350b285674ed676e0d3d Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 22 16:40:21 2008 +0100 ide: mark "hdx=[driver_name]" and "hdx=scsi" kernel parameters as obsoleted Mark "hdx=[driver_name]" and "hdx=scsi" kernel parameters as obsoleted (nowadays device-driver binding can be changed at runtime through sysfs and it can also be dealt with using per device driver parameters). Signed-off-by: Bartlomiej Zolnierkiewicz commit ad1c53bcdb831e14b1313ad694d5053ae0349393 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 22 16:40:21 2008 +0100 ide: Documentation/ide/ide.txt fixes * "hdx=cyls,heads,sects,wpcom,irq" should be "hdx=cyls,heads,sects". * "hdx=" is for "x" from 'a' to 'u', "idex=" is for "x" from '0' to '9'. * "idex=noautotune" is long gone. * Obsoleted "ide0=" parameters were already removed from the documentation. Signed-off-by: Bartlomiej Zolnierkiewicz commit 9c027c684bd01b91a7aecc63161b56071685ce7d Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 22 16:40:21 2008 +0100 ide: mark special "ide0=" kernel parameters as obsoleted Mark "ide0=ali14xx|cmd640_vlb|dtc2278|ht6560b|qd65xx|umc8672" kernel parameters as obsoleted (per host driver replacements have been available for a long time). Signed-off-by: Bartlomiej Zolnierkiewicz commit 37ff9f3953dfa7262be091e431cd0eb368c38080 Author: Bartlomiej Zolnierkiewicz Date: Sat Mar 22 16:40:20 2008 +0100 ide: remove commented out entries from ide_pio_blacklist[] Signed-off-by: Bartlomiej Zolnierkiewicz commit 64658743fdd40021e3ac91e8ff260ad06578dd23 Author: David S. Miller Date: Fri Mar 21 17:01:38 2008 -0700 [SPARC64]: Remove most limitations to kernel image size. Currently kernel images are limited to 8MB in size, and this causes problems especially when enabling features that take up a lot of kernel image space such as lockdep. The code now will align the kernel image size up to 4MB and map that many locked TLB entries. So, the only practical limitation is the number of available locked TLB entries which is 16 on Cheetah and 64 on pre-Cheetah sparc64 cpus. Niagara cpus don't actually have hw locked TLB entry support. Rather, the hypervisor transparently provides support for "locked" TLB entries since it runs with physical addressing and does the initial TLB miss processing. Fully utilizing this change requires some help from SILO, a patch for which will be submitted to the maintainer. Essentially, SILO will only currently map up to 8MB for the kernel image and that needs to be increased. Note that neither this patch nor the SILO bits will help with network booting. The openfirmware code will only map up to a certain amount of kernel image during a network boot and there isn't much we can to about that other than to implemented a layered network booting facility. Solaris has this, and calls it "wanboot" and we may implement something similar at some point. Signed-off-by: David S. Miller commit 7512cbf6efc97644812f137527a54b8e92b6a90a Author: Pavel Emelyanov Date: Fri Mar 21 15:58:52 2008 -0700 [DLCI]: Fix tiny race between module unload and sock_ioctl. This is a narrow pedantry :) but the dlci_ioctl_hook check and call should not be parted with the mutex lock. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 1233823b0847190976d69a86d7bb1287992ba2c7 Author: David S. Miller Date: Fri Mar 21 15:40:47 2008 -0700 [SCTP]: Fix build warnings with IPV6 disabled. Introduced by 270637abff0cdf848b910b9f96ad342e1da61c66 ("[SCTP]: Fix a race between module load and protosw access") Reported by Gabriel C: In file included from net/sctp/sm_statetable.c:50: include/net/sctp/sctp.h: In function 'sctp_v6_pf_init': include/net/sctp/sctp.h:392: warning: 'return' with a value, in function returning void In file included from net/sctp/sm_statefuns.c:62: include/net/sctp/sctp.h: In function 'sctp_v6_pf_init': include/net/sctp/sctp.h:392: warning: 'return' with a value, in function returning void ... Signed-off-by: David S. Miller commit 12b101555f4a67db67a66966a516075bd477741f Author: Phil Oester Date: Fri Mar 21 15:01:50 2008 -0700 [IPV4]: Fix null dereference in ip_defrag Been seeing occasional panics in my testing of 2.6.25-rc in ip_defrag. Offending line in ip_defrag is here: net = skb->dev->nd_net where dev is NULL. Bisected the problem down to commit ac18e7509e7df327e30d6e073a787d922eaf211d ([NETNS][FRAGS]: Make the inet_frag_queue lookup work in namespaces). Below patch (idea from Patrick McHardy) fixes the problem for me. Signed-off-by: Phil Oester Acked-by: Patrick McHardy Signed-off-by: David S. Miller commit f2b2b59b93082d02ee5ec8fda4ed94f498551a47 Author: Chien Tung Date: Thu Mar 20 19:55:30 2008 -0500 RDMA/nes: Fix MSS calculation on RDMA path Fix the calculation of the MSS for RDMA connections: we need to allow space in frames for a VLAN tag too. Signed-off-by: Chien Tung Signed-off-by: Glenn Streiff Signed-off-by: Roland Dreier commit a57543376c99e4d074516c5bf23c7ddc1dc613a0 Author: Mark Fasheh Date: Fri Mar 21 10:40:31 2008 -0700 ocfs2: MAINTAINERS update Change my e-mail address, add Joel as new co-maintainer. Signed-off-by: Mark Fasheh commit 028011e1391eab27e7bc113c2ac08d4f55584a75 Merge: 37bff62... 22e52b0... Author: Linus Torvalds Date: Fri Mar 21 10:05:19 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel: sched: add arch_update_cpu_topology hook. sched: add exported arch_reinit_sched_domains() to header file. sched: remove double unlikely from schedule() sched: cleanup old and rarely used 'debug' features. commit 37bff62e98f675777e1e76173fe320f04062841d Author: Yinghai Lu Date: Tue Mar 18 12:40:04 2008 -0700 x86_64: free_bootmem should take phys so use nodedata_phys directly. Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 7800c0c3b146013e1e8439e91dc1236a55871d21 Author: Matti Linnanvuori Date: Sun Mar 16 02:47:35 2008 -0700 sync_bitops: fix wrong comments [Bug 10247] Fix wrong function name and references to non-x86 architectures. Signed-off-by: Matti Linnanvuori mattilinnanvuori@yahoo.com Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 5dca6a1bb014875a17289fdaae8c31e0a3641c99 Author: Yinghai Lu Date: Tue Mar 18 16:44:19 2008 -0700 x86: trim mtrr don't close gap for resource allocation. fix the bug reported here: http://bugzilla.kernel.org/show_bug.cgi?id=10232 use update_memory_range() instead of add_memory_range() directly to avoid closing the gap. ( the new code only affects and runs on systems where the MTRR workaround triggers. ) Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit fc1c8925c8210009c1fc5d909d189252d8fb4fb2 Author: Heinz-Ado Arnolds Date: Wed Mar 12 16:27:56 2008 +0100 x86: fix reboot problem with Dell Optiplex 745, 0KW626 board we have seen a little problem in rebooting Dell Optiplex 745 with the 0KW626 board. Here is a small patch enabling reboot with this board, which forces the default reboot path it into the BIOS reboot mode. Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit e215f3c2c5247b727a76f28de4b3e46def950c55 Author: Jiri Slaby Date: Wed Mar 12 14:53:53 2008 +0100 x86: fix fault_msg nul termination The fault_msg text is not explictly nul terminated now in startup assembly. Do so by converting .ascii to .asciz. Signed-off-by: Jiri Slaby Cc: H. Peter Anvin Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 2050d45d7c32cbad7a070d04256237144a0920db Author: Pavel Machek Date: Thu Mar 13 23:05:41 2008 +0100 x86: fix long standing bug with usb after hibernation with 4GB ram aperture_64.c takes a piece of memory and makes it into iommu window... but such window may not be saved by swsusp -- that leads to oops during hibernation. Signed-off-by: Pavel Machek Acked-by: "Rafael J. Wysocki" Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 96bcf458cbc71fc08f4d10e0b5bf1b18702b2344 Author: Zbigniew Luszpinski Date: Wed Mar 19 15:51:50 2008 +0100 x86: hpet clock enable quirk on nVidia nForce 430 this patch allows hpet=force on nVidia nForce 430 southbridge. This patch was tested by me on my old Asus A8N-VM CSM (where bios does not support hpet and does not advertise it via acpi entry). My nForce430 version: lspci -nn | grep LPC 00:0a.0 ISA bridge [0601]: nVidia Corporation MCP51 LPC Bridge [10de:0260] (rev a2) Kernel 2.6.24.3 after patching and using hpet=force reports this: dmesg | grep -i hpet Kernel command line: root=/dev/sda8 ro vga=773 video=vesafb:mtrr:4,ywrap vt.default_utf8=0 hpet=force Force enabled HPET at base address 0xfed00000 hpet clockevent registered Time: hpet clocksource has been installed. grep -i hpet /proc/timer_list Clock Event Device: hpet set_next_event: hpet_legacy_next_event set_mode: hpet_legacy_set_mode grep Clock /proc/timer_list (before patching) Clock Event Device: pit Clock Event Device: lapic grep Clock /proc/timer_list (after patching) Clock Event Device: hpet Clock Event Device: lapic Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit f62f1fc9ef94f74fda2b456d935ba2da69fa0a40 Author: Yinghai Lu Date: Fri Mar 7 15:02:50 2008 -0800 x86: reserve dma32 early for gart a system with 256 GB of RAM, when NUMA is disabled crashes the following way: Your BIOS doesn't leave a aperture memory hole Please enable the IOMMU option in the BIOS setup This costs you 64 MB of RAM Cannot allocate aperture memory hole (ffff8101c0000000,65536K) Kernel panic - not syncing: Not enough memory for aperture Pid: 0, comm: swapper Not tainted 2.6.25-rc4-x86-latest.git #33 Call Trace: [] panic+0xb2/0x190 [] ? release_console_sem+0x7c/0x250 [] ? __alloc_bootmem_nopanic+0x48/0x90 [] ? free_bootmem+0x29/0x50 [] gart_iommu_hole_init+0x5e7/0x680 [] ? alloc_large_system_hash+0x16b/0x310 [] ? _etext+0x0/0x1 [] pci_iommu_alloc+0x1c/0x40 [] mem_init+0x45/0x1a0 [] start_kernel+0x295/0x380 [] _sinittext+0x1c2/0x230 the root cause is : memmap PMD is too big, [ffffe200e0600000-ffffe200e07fffff] PMD ->ffff81383c000000 on node 0 almost near 4G..., and vmemmap_alloc_block will use up the ram under 4G. solution will be: 1. make memmap allocation get memory above 4G... 2. reserve some dma32 range early before we try to set up memmap for all. and release that before pci_iommu_alloc, so gart or swiotlb could get some range under 4g limit for sure. the patch is using method 2. because method1 may need more code to handle SPARSEMEM and SPASEMEM_VMEMMAP will get Your BIOS doesn't leave a aperture memory hole Please enable the IOMMU option in the BIOS setup This costs you 64 MB of RAM Mapping aperture over 65536 KB of RAM @ 4000000 Memory: 264245736k/268959744k available (8484k kernel code, 4187464k reserved, 4004k data, 724k init) Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit fc115bf19b5b2f383614b264569fb48a43bfe56d Author: Coleman Kane Date: Tue Mar 4 15:05:41 2008 -0800 x86: add the DFF (Desktop Form Factor) Dell Optiplex 745 to the reboot errata list We recently got some of the "Desktop Form Factor" Optiplex 745's in. I noticed that there's an entry for the SFF one's, but the BIOS model number of the DFF differs from that of the SFF. We have been reliably experiencing the same (as far as I can tell) reboot bug as the SFF boxes. Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 31780715605f7fd09a06f509d677cd538104baa9 Author: Randy Dunlap Date: Tue Mar 4 14:55:47 2008 -0800 x86/visws: fix printk format warnings Fix visws printk format warnings: /local/linsrc/linux-2.6.24-git15/arch/x86/mach-visws/traps.c:50: warning: format '%#lx' expects type 'long unsigned int', but argument 2 has type 'u32' /local/linsrc/linux-2.6.24-git15/arch/x86/mach-visws/traps.c:50: warning: format '%#lx' expects type 'long unsigned int', but argument 3 has type 'u32' Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit f2f7abcb96f03a7a42c13063ad556fc80e345c71 Author: Chuck Lever Date: Tue Mar 4 14:55:45 2008 -0800 x86: fix {clear,copy}_user_page() declarations in page.h Clean up: eliminate some compiler noise on x86 when building with strict warnings enabled, introduced by commit 345b904c. In file included from include2/asm/thread_info_64.h:12, from include2/asm/thread_info.h:4, from /home/cel/src/linux/nfs-2.6/include/linux/thread_info.h:35, from /home/cel/src/linux/nfs-2.6/include/linux/preempt.h:9, from /home/cel/src/linux/nfs-2.6/include/linux/spinlock.h:49, from /home/cel/src/linux/nfs-2.6/include/linux/mmzone.h:7, from /home/cel/src/linux/nfs-2.6/include/linux/gfp.h:4, from /home/cel/src/linux/nfs-2.6/include/linux/slab.h:14, from /home/cel/src/linux/nfs-2.6/fs/nfsd/nfs4acl.c:40: include2/asm/page.h:55: warning: `inline' is not at beginning of declaration include2/asm/page.h:61: warning: `inline' is not at beginning of declaration Signed-off-by: Chuck Lever Cc: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 3078b79d257054c3697c85936afce38595e7b67b Author: Mathieu Desnoyers Date: Thu Mar 6 13:45:46 2008 +0100 x86: cast cmpxchg and cmpxchg_local result for 386 and 486 mm/slub.c: In function 'slab_alloc': mm/slub.c:1637: warning: assignment makes pointer from integer without a cast mm/slub.c:1637: warning: assignment makes pointer from integer without a cast mm/slub.c: In function 'slab_free': mm/slub.c:1796: warning: assignment makes pointer from integer without a cast mm/slub.c:1796: warning: assignment makes pointer from integer without a cast A cast is needed in the 386 and 486 code because the type is a pointer. In every other integer case the original cmpxchg code (and the cmpxchg_local which has been copied from it) worked fine, but since we touch a pointer, the type needs to be casted in the cmpxchg_local and cmpxchg macros. The more recent code (586+) does not have this problem (the cast is already there). Signed-off-by: Mathieu Desnoyers Signed-off-by: Thomas Gleixner Reviewed-by: Christoph Lameter Cc: Vegard Nossum Cc: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 7d2de1376226eab4660e162e0728eadd18db3c4a Author: Yinghai Lu Date: Thu Mar 6 18:25:16 2008 -0800 x86: tight online check in setup_per_cpu_areas when numa disabled I got this compile warning: arch/x86/kernel/setup64.c: In function setup_per_cpu_areas: arch/x86/kernel/setup64.c:147: warning: the address of contig_page_data will always evaluate as true it seems we missed checking if the node is online before we try to refer NODE_DATA. Fix it. Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 6721fc0a0d87019b08384ac798ca7d51bc5fda4e Author: Yinghai Lu Date: Tue Feb 19 02:21:45 2008 -0800 x86: fix dma_alloc_pages memory-less node support: this patch uses updated dev_to_node, because dev_to_node already makes sure it returns an online node. Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 22e52b072dd87faa9b2559fe89d4e8f2370f81ca Author: Heiko Carstens Date: Wed Mar 12 18:31:59 2008 +0100 sched: add arch_update_cpu_topology hook. Will be called each time the scheduling domains are rebuild. Needed for architectures that don't have a static cpu topology. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky Signed-off-by: Ingo Molnar commit 9aefd0abd8610e8f3bb097debf3afb73f8b7b210 Author: Heiko Carstens Date: Wed Mar 12 18:31:58 2008 +0100 sched: add exported arch_reinit_sched_domains() to header file. Needed so it can be called from outside of sched.c. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky Signed-off-by: Ingo Molnar commit 23e3c3cd2e39a3c9d07ee07d882c8cf6ddd61c86 Author: Roel Kluin <12o3l@tiscali.nl> Date: Thu Mar 13 17:41:59 2008 +0100 sched: remove double unlikely from schedule() Combine two unlikely's Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Signed-off-by: Ingo Molnar commit 2070ee01d314ecec8a570c07647ccf4ced6340bb Author: Peter Zijlstra Date: Fri Mar 21 16:43:47 2008 +0100 sched: cleanup old and rarely used 'debug' features. TREE_AVG and APPROX_AVG are initial task placement policies that have been disabled for a long while.. time to remove them. Signed-off-by: Peter Zijlstra CC: Srivatsa Vaddagiri Signed-off-by: Ingo Molnar commit ae51801ba5ca27c2c571eb508daa99b392e79bd4 Merge: 7d3628b... 4cfea5a... Author: Linus Torvalds Date: Fri Mar 21 08:04:28 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: Fix atomic backoff limit. commit 7d3628b230ecbdc29566c18bc7800ff8ed66a71f Merge: 2c78719... 94833df... Author: Linus Torvalds Date: Fri Mar 21 07:57:45 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (46 commits) [NET] ifb: set separate lockdep classes for queue locks [IPV6] KCONFIG: Fix description about IPV6_TUNNEL. [TCP]: Fix shrinking windows with window scaling netpoll: zap_completion_queue: adjust skb->users counter bridge: use time_before() in br_fdb_cleanup() [TG3]: Fix build warning on sparc32. MAINTAINERS: bluez-devel is subscribers-only audit: netlink socket can be auto-bound to pid other than current->pid (v2) [NET]: Fix permissions of /proc/net [SCTP]: Fix a race between module load and protosw access [NETFILTER]: ipt_recent: sanity check hit count [NETFILTER]: nf_conntrack_h323: logical-bitwise & confusion in process_setup() [RT2X00] drivers/net/wireless/rt2x00/rt2x00dev.c: remove dead code, fix warning [IPV4]: esp_output() misannotations [8021Q]: vlan_dev misannotations xfrm: ->eth_proto is __be16 [IPV4]: ipv4_is_lbcast() misannotations [SUNRPC]: net/* NULL noise [SCTP]: fix misannotated __sctp_rcv_asconf_lookup() [PKT_SCHED]: annotate cls_u32 ... commit 2c7871982cf27caaddbaeb7e2121ce1374b520ff Merge: 49ccf74... 49a5ba4... Author: Linus Torvalds Date: Fri Mar 21 07:56:58 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.25 * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.25: sh: Use relative paths for mach/cpu symlinks. SH: Use newer, non-deprecated __SPIN_LOCK_UNLOCKED macro. sh: Fix more user header breakage from sh64 integration. sh: Fix uImage build error. sh: Fix up the timer IRQ definition for SH7203. sh: Fix up the address error exception handler for SH-2. serial: sh-sci: Fix fifo stall on SH7760/SH7780/SH7785 SCIF. commit 49a5ba46c5d1e34bcb07634157b29d7414ce13bd Author: Franck Bui-Huu Date: Fri Mar 21 12:22:01 2008 +0900 sh: Use relative paths for mach/cpu symlinks. When building the kernel without passing the O= command line parameter there's no point to use absolute paths for them. Usually relative paths are preferred because they survive directory moves, work across networked file systems and chrooted environments. Absolute paths are still used if an output directory is given. Signed-off-by: Franck Bui-Huu Signed-off-by: Paul Mundt commit 40f75879a0dda7025cebc3444c9317ec9e3dcd70 Author: Robert P. J. Day Date: Sat Mar 15 12:49:10 2008 -0400 SH: Use newer, non-deprecated __SPIN_LOCK_UNLOCKED macro. Signed-off-by: Robert P. J. Day Signed-off-by: Paul Mundt commit 94833dfb8c98ed4ca1944dd2c1339d88a2d1c758 Author: Jarek Poplawski Date: Thu Mar 20 17:05:13 2008 -0700 [NET] ifb: set separate lockdep classes for queue locks [ 10.536424] ======================================================= [ 10.536424] [ INFO: possible circular locking dependency detected ] [ 10.536424] 2.6.25-rc3-devel #3 [ 10.536424] ------------------------------------------------------- [ 10.536424] swapper/0 is trying to acquire lock: [ 10.536424] (&dev->queue_lock){-+..}, at: [] dev_queue_xmit+0x175/0x2f3 [ 10.536424] [ 10.536424] but task is already holding lock: [ 10.536424] (&p->tcfc_lock){-+..}, at: [] tcf_mirred+0x20/0x178 [act_mirred] [ 10.536424] [ 10.536424] which lock already depends on the new lock. lockdep warns of locking order while using ifb with sch_ingress and act_mirred: ingress_lock, tcfc_lock, queue_lock (usually queue_lock is at the beginning). This patch is only to tell lockdep that ifb is a different device (e.g. from eth) and has its own pair of queue locks. (This warning is a false-positive in common scenario of using ifb; yet there are possible situations, when this order could be dangerous; lockdep should warn in such a case.) (With suggestions by David S. Miller) Reported-and-tested-by: Denys Fedoryshchenko Signed-off-by: Jarek Poplawski Acked-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit 38fe999e2286139cccdaa500a81bd49a16a81158 Author: YOSHIFUJI Hideaki Date: Thu Mar 20 16:13:58 2008 -0700 [IPV6] KCONFIG: Fix description about IPV6_TUNNEL. Based on notice from "Colin" . Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 607bfbf2d55dd1cfe5368b41c2a81a8c9ccf4723 Author: Patrick McHardy Date: Thu Mar 20 16:11:27 2008 -0700 [TCP]: Fix shrinking windows with window scaling When selecting a new window, tcp_select_window() tries not to shrink the offered window by using the maximum of the remaining offered window size and the newly calculated window size. The newly calculated window size is always a multiple of the window scaling fac