commit e25db641c0e6dd49c5db24dbe154048d4a466727 Merge: 7686fcf... 928ee51... Author: Linus Torvalds Date: Sun Dec 17 19:08:11 2006 -0800 Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq * master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] longhaul compile fix. [CPUFREQ] Advise not to use longhaul on VIA C7. [CPUFREQ] set policy->curfreq on initialization [CPUFREQ] Trivial cleanup for acpi read/write port in acpi-cpufreq.c [CPUFREQ] fixes typo in cpufreq.c commit 7686fcf7304eebd2228ec47045cb28ee3c58b1f1 Author: Al Viro Date: Fri Dec 8 09:16:49 2006 +0000 [PATCH] more work_struct fixes: tas300x sound drivers Signed-off-by: Al Viro Acked-by: Benjamin Herrenschmidt Signed-off-by: Linus Torvalds commit 8a8b836b91aa170a383f2f360b73d3d23160d9d7 Author: David S. Miller Date: Sun Dec 17 16:18:47 2006 -0800 [SPARC]: Make bitops use same spinlocks as atomics. Recent workqueue changes basically make this a formal requirement. Also, move atomic32.o from lib-y to obj-y since it exports symbols to modules. Signed-off-by: David S. Miller commit 928ee513c2fc39799cb13302bc02344a849fa37c Author: Dave Jones Date: Sun Dec 17 19:09:59 2006 -0500 [CPUFREQ] longhaul compile fix. Some gcc's are more anal than others about empty switch labels. error: label at end of compound statement Signed-off-by: Dave Jones commit 8ec9822dd1851698a3d26599c3105c11124b2c0b Author: Dave Jones Date: Sun Dec 17 19:07:35 2006 -0500 [CPUFREQ] Advise not to use longhaul on VIA C7. C7's are centrino speedstep-alike. Signed-off-by: Dave Jones commit a507ac4b01ed379a74eca5060f3553c4a4e5854c Author: Mattia Dongili Date: Fri Dec 15 19:52:45 2006 +0100 [CPUFREQ] set policy->curfreq on initialization Check the correct variable and set policy->cur upon acpi-cpufreq initialization to allow the userspace governor to be used as default. Signed-off-by: Mattia Dongili Acked-by: "Pallipadi, Venkatesh" Signed-off-by: Andrew Morton Signed-off-by: Dave Jones commit 216da721b881838d639a3987bf8a825e6b4aacdd Author: David S. Miller Date: Sun Dec 17 14:21:34 2006 -0800 [SPARC]: Update defconfig. Signed-off-by: David S. Miller commit 5a089006bf8b59f6610de11a857854d8f8730658 Author: David S. Miller Date: Thu Dec 14 23:40:57 2006 -0800 [SPARC64]: Mirror x86_64's PERCPU_ENOUGH_ROOM definition. Signed-off-by: David S. Miller commit 9bc83dcff8fab1f22048c8f82deb3198ec44d53f Author: Fabrice Knevez Date: Thu Dec 14 15:20:29 2006 -0800 [SUNKBD]: Fix sunkbd_enable(sunkbd, 0); obvious. "sunkbd_enable(sunkbd, 0);" has no effect. Adding "sunkbd->enabled = enable" in sunkbd_enable (obvious) Signed-off-by: Fabrice Knevez Signed-off-by: David S. Miller commit b06824cecafdacf2b12de583d4b41fd9c583c8c4 Author: David S. Miller Date: Tue Dec 12 01:00:06 2006 -0800 [DocBook]: Fix two typos in generic IRQ docs. desc-status --> desc->status Signed-off-by: David S. Miller commit 729e7d7e4dc6b905e40992b6439b07153db4bd63 Author: David S. Miller Date: Tue Dec 12 00:59:12 2006 -0800 [SPARC64]: Minor irq handling cleanups. Use struct irq_chip instead of hw_interrupt_type. Delete hw_resend_irq(), totally unused. Signed-off-by: David S. Miller commit 15f1483404f3497c66872de13f3d585e3da87785 Author: David S. Miller Date: Mon Dec 11 21:06:55 2006 -0800 [SPARC64]: Kill no-remapping-needed code in head.S It branches around some necessary prom calls, which we would need to do even if we are mapped at the correct location already. So it doesn't work. The idea was that this sort of thing could be used for the eventual kexec implementation, but it is clear that this will need to be done differently. Signed-off-by: David S. Miller commit 825020c3866e7312947e17a0caa9dd1a5622bafc Author: Oleg Nesterov Date: Sun Dec 17 18:52:47 2006 +0300 [PATCH] sys_mincore: s/max/min/ fix a typo, sys_mincore() needs min(). Signed-off-by: Oleg Nesterov Signed-off-by: Linus "I'm a moron" Torvalds commit 2bb71b5a44bfbe0d2066ee041149995f43b52d12 Author: Al Viro Date: Thu Dec 14 15:00:15 2006 +0000 [PATCH] m68k trivial build fixes amikbd: missing declaration sun3_NCR5380: more work_struct mess sun3_NCR5380: cast is not an lvalue Signed-off-by: Al Viro commit 4fb23e439ce09157d64b89a21061b9fc08f2b495 Author: Linus Torvalds Date: Sat Dec 16 16:01:50 2006 -0800 Fix up mm/mincore.c error value cases Hugh Dickins correctly points out that mincore() is actually _supposed_ to fail on an unmapped hole in the user address space, rather than return valid ("empty") information about the hole. This just simplifies the problem further (I had been misled by our previous confusing and complicated way of doing mincore()). Also, in the unlikely situation that we can't allocate a temporary kernel buffer, we should actually return EAGAIN, not ENOMEM, to keep the "unmapped hole" and "allocation failure" error cases separate. Finally, add a comment about our stupid historical lack of support for anonymous mappings. I'll fix that if somebody reminds me after 2.6.20 is out. Acked-by: Hugh Dickins Signed-off-by: Linus Torvalds commit c7ef259bfb4084d8806dfff9eb8bfc6e82bb8c45 Merge: 99f5e97... 0b0df6f... Author: Linus Torvalds Date: Sat Dec 16 13:23:45 2006 -0800 Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband: IB/mthca: Use DEFINE_MUTEX() instead of mutex_init() IB/mthca: Add HCA profile module parameters IB/srp: Fix FMR mapping for 32-bit kernels and addresses above 4G IB: Fix ib_dma_alloc_coherent() wrapper commit 99f5e9718185f07458ae70c2282c2153a2256c91 Merge: a08727b... 5c9a761... Author: Linus Torvalds Date: Sat Dec 16 09:54:23 2006 -0800 Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: [PATCH] pata_via: Cable detect error [PATCH] Fix help text for CONFIG_ATA_PIIX [PATCH] initializer entry defined twice in pata_rz1000 [PATCH] ata: fix platform_device_register_simple() error check [PATCH] ahci: do not mangle saved HOST_CAP while resetting controller [PATCH] libata: don't initialize sg in ata_exec_internal() if DMA_NONE (take #2) [libata] sata_svw: Disable ATAPI DMA on current boards (errata workaround) [libata] use kmap_atomic(KM_IRQ0) in SCSI simulator [PATCH] ata_piix: use piix_host_stop() in ich_pata_ops [PATCH] ata_piix: IDE mode SATA patch for Intel ICH9 commit a08727bae727fc2ca3a6ee9506d77786b71070b3 Author: Linus Torvalds Date: Sat Dec 16 09:53:50 2006 -0800 Make workqueue bit operations work on "atomic_long_t" On architectures where the atomicity of the bit operations is handled by external means (ie a separate spinlock to protect concurrent accesses), just doing a direct assignment on the workqueue data field (as done by commit 4594bf159f1962cec3b727954b7c598b07e2e737) can cause the assignment to be lost due to lack of serialization with the bitops on the same word. So we need to serialize the assignment with the locks on those architectures (notably older ARM chips, PA-RISC and sparc32). So rather than using an "unsigned long", let's use "atomic_long_t", which already has a safe assignment operation (atomic_long_set()) on such architectures. This requires that the atomic operations use the same atomicity locks as the bit operations do, but that is largely the case anyway. Sparc32 will probably need fixing. Architectures (including modern ARM with LL/SC) that implement sane atomic operations for SMP won't see any of this matter. Cc: Russell King Cc: David Howells Cc: David Miller Cc: Matthew Wilcox Cc: Linux Arch Maintainers Cc: Andrew Morton Signed-off-by: Linus Torvalds commit 2f77d107050abc14bc393b34bdb7b91cf670c250 Author: Linus Torvalds Date: Sat Dec 16 09:44:32 2006 -0800 Fix incorrect user space access locking in mincore() Doug Chapman noticed that mincore() will doa "copy_to_user()" of the result while holding the mmap semaphore for reading, which is a big no-no. While a recursive read-lock on a semaphore in the case of a page fault happens to work, we don't actually allow them due to deadlock schenarios with writers due to fairness issues. Doug and Marcel sent in a patch to fix it, but I decided to just rewrite the mess instead - not just fixing the locking problem, but making the code smaller and (imho) much easier to understand. Cc: Doug Chapman Cc: Marcel Holtmann Cc: Hugh Dickins Cc: Andrew Morton Signed-off-by: Linus Torvalds commit 5c9a76118d24f044b8d8ee721dbbf4e5c7db3dbb Author: Alan Date: Sat Dec 16 14:32:21 2006 +0000 [PATCH] pata_via: Cable detect error The UDMA66 VIA hardware has no controller side cable detect bits we can use. This patch minimally fixes the problem by reporting unknown in this case and using drive side detection. The old drivers/ide code does some additional tricks but those aren't appropriate now we are in -rc. Without this update UDMA66 via controllers run slowly. They don't fail so it's a borderline call whether this is -rc material or not. Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 2bfc3611bd91986ed2b979a7f536c52751c8ac8f Author: Alan Date: Sat Dec 16 12:54:29 2006 +0000 [PATCH] Fix help text for CONFIG_ATA_PIIX > Thanks for clarifying Bill, and sorry Alan. ata_piix does indeed work > correctly. The help text is a bit confusing: > > config ATA_PIIX > tristate "Intel PIIX/ICH SATA support" > depends on PCI > help > This option enables support for ICH5/6/7/8 Serial ATA. > If PATA support was enabled previously, this enables > support for select Intel PIIX/ICH PATA host controllers. New help text Signed-off-by: Alan Cox Signed-off-by: Jeff Garzik commit 0457882fed8af8580fb2f08183ea2dfbbc3ccac6 Author: Ira Snyder Date: Fri Dec 15 13:08:52 2006 -0800 [PATCH] initializer entry defined twice in pata_rz1000 This removes the extra definition of the .error_handler member in the pata_rz1000 driver. Signed-off-by: Ira W. Snyder Cc: Jeff Garzik Cc: Alan Cox Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 9825d73ceb6cad9b9c2ee2dc2971b58dbe8623cd Author: Akinobu Mita Date: Fri Dec 15 13:08:51 2006 -0800 [PATCH] ata: fix platform_device_register_simple() error check The return value of platform_device_register_simple() should be checked by IS_ERR(). Cc: Jeff Garzik Acked-by: Alan Cox Signed-off-by: Akinobu Mita Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 551c012d7eea3dc5ec063c7ff9c718d39e77634f Author: Tejun Heo Date: Tue Dec 12 20:17:32 2006 +0900 [PATCH] ahci: do not mangle saved HOST_CAP while resetting controller Do not mangle with HOST_CAP while resetting controller. The code is there for a historical reason. The mangling breaks controller feature detection and 0 PORTS_IMPL workaround code. This problem was spotted by Manoj Kasichainula. Signed-off-by: Tejun Heo Cc: Manoj Kasichainula Signed-off-by: Jeff Garzik commit 33480a0ede8dcc7e6483054279008f972bd56fd3 Author: Tejun Heo Date: Tue Dec 12 02:15:31 2006 +0900 [PATCH] libata: don't initialize sg in ata_exec_internal() if DMA_NONE (take #2) Calling sg_init_one() with NULL buf causes oops on certain configurations. Don't initialize sg in ata_exec_internal() if DMA_NONE and make the function complain if @buf is NULL when dma_dir isn't DMA_NONE. While at it, fix comment. The problem is discovered and initial patch was submitted by Arnd Bergmann. Signed-off-by: Tejun Heo Cc: Arnd Bergmann Signed-off-by: Jeff Garzik commit c10340aca270abb141154cd93dcf1be0b92143fc Author: Jeff Garzik Date: Thu Dec 14 17:04:33 2006 -0500 [libata] sata_svw: Disable ATAPI DMA on current boards (errata workaround) Current Broadcom/Serverworks SATA boards (including Apple K2 SATA) have problems with ATAPI DMA, so it is disabled. ATAPI PIO, ATA PIO, and ATA DMA continue to work just fine. Acked-by: Anantha Subramanyam Signed-off-by: Jeff Garzik commit da02d2a16ef3accd625f9e6e7bf83bb0f946ff62 Author: Jeff Garzik Date: Mon Dec 11 11:05:53 2006 -0500 [libata] use kmap_atomic(KM_IRQ0) in SCSI simulator We are inside spin_lock_irqsave(). quoth akpm's debug facility: [ 231.948000] SCSI device sda: 195371568 512-byte hdwr sectors (100030 MB) [ 232.232000] ata1.00: configured for UDMA/33 [ 232.404000] WARNING (1) at arch/i386/mm/highmem.c:47 kmap_atomic() [ 232.404000] [] kmap_atomic+0xa9/0x1ab [ 232.404000] [] ata_scsi_rbuf_get+0x1c/0x30 [ 232.404000] [] ata_scsi_rbuf_fill+0x1a/0x87 [ 232.404000] [] ata_scsiop_mode_sense+0x0/0x309 [ 232.404000] [] end_bio_bh_io_sync+0x0/0x37 [ 232.404000] [] scsi_done+0x0/0x16 [ 232.404000] [] scsi_done+0x0/0x16 [ 232.404000] [] ata_scsi_simulate+0xb0/0x13f [...] Signed-off-by: Jeff Garzik commit fae07dc389bc32a3638b9d4c61dd3738ca3fb61d Author: Tejun Heo Date: Mon Dec 11 22:26:25 2006 +0900 [PATCH] ata_piix: use piix_host_stop() in ich_pata_ops piix_init_one() allocates host private data which should be freed by piix_host_stop(). ich_pata_ops wasn't converted to piix_host_stop() while merging, leaking 4 bytes on driver detach. Fix it. This was spotted using Kmemleak by Catalin Marinas. Signed-off-by: Tejun Heo Cc: Catalin Marinas Signed-off-by: Jeff Garzik commit f98b6573f190aff2748894da13a48bab0f10c733 Author: Jason Gaston Date: Thu Dec 7 08:57:32 2006 -0800 [PATCH] ata_piix: IDE mode SATA patch for Intel ICH9 This updated patch adds the Intel ICH9 IDE mode SATA controller DID's. Signed-off-by: Jason Gaston Acked-by: Tejun Heo Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 0b0df6f2079e731c44226a0673b07a166509a5de Author: Roland Dreier Date: Fri Dec 15 20:55:28 2006 -0800 IB/mthca: Use DEFINE_MUTEX() instead of mutex_init() mthca_device_mutex() can be initialized automatically with DEFINE_MUTEX() rather than explicitly calling mutex_init(). This saves a bit of text and shrinks the source by a line, so we may as well do it.... Signed-off-by: Roland Dreier commit 82da703ee685b69b921b20eb76b50e519ca9956c Author: Leonid Arsh Date: Sun Dec 10 13:40:17 2006 +0200 IB/mthca: Add HCA profile module parameters Add module parameters that enable settting some of the HCA profile values, such as the number of QPs, CQs, etc. Signed-off-by: Leonid Arsh Signed-off-by: Moni Shoua Signed-off-by: Roland Dreier commit 0221872a3b0aa2fa2f3fa60affcbaebd662c4a90 Author: Linus Torvalds Date: Fri Dec 15 14:13:51 2006 -0800 Fix "delayed_work_pending()" macro expansion Nobody uses it, but it was still wrong. Using the macro argument name 'work' meant that when we used 'work' as a member name, that would also get replaced by the macro argument. Signed-off-by: Linus Torvalds commit bf628dc22a09ed2022abb32c76011ae5f99ad6b0 Author: Roland Dreier Date: Fri Dec 15 14:01:49 2006 -0800 IB/srp: Fix FMR mapping for 32-bit kernels and addresses above 4G struct srp_device.fmr_page_mask was unsigned long, which means that the top part of addresses above 4G was being chopped off on 32-bit architectures. Of course nothing good happens when data from SRP targets is DMAed to the wrong place. Fix this by changing fmr_page_mask to u64, to match the addresses actually used by IB devices. Thanks to Brian Cain and David McMillen for help diagnosing the bug and testing the fix. Signed-off-by: Roland Dreier commit c59a3da1342ff456e5123361739bc331446cda21 Author: Roland Dreier Date: Fri Dec 15 13:57:26 2006 -0800 IB: Fix ib_dma_alloc_coherent() wrapper The ib_dma_alloc_coherent() wrapper uses a u64* for the dma_handle parameter, unlike dma_alloc_coherent, which uses dma_addr_t*. This means that we need a temporary variable to handle the case when ib_dma_alloc_coherent() just falls through directly to dma_alloc_coherent() on architectures where sizeof u64 != sizeof dma_addr_t. Signed-off-by: Roland Dreier commit 701dfbe71903413d10caf2790259bccbabbedcf5 Merge: d1526e2... e42734e... Author: Linus Torvalds Date: Fri Dec 15 10:22:22 2006 -0800 Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: [S390] cio: css_register_subchannel race. [S390] Save prefix register for dump on panic [S390] Fix reboot hang [S390] Fix reboot hang on LPARs [S390] sclp_cpi module license. [S390] zcrypt: module unload fixes. [S390] Hipersocket multicast queue: make sure outbound handler is called [S390] hypfs fixes [S390] update default configuration commit d1526e2cda64d5a1de56aef50bad9e5df14245c2 Author: Linus Torvalds Date: Fri Dec 15 08:43:13 2006 -0800 Remove stack unwinder for now It has caused more problems than it ever really solved, and is apparently not getting cleaned up and fixed. We can put it back when it's stable and isn't likely to make warning or bug events worse. In the meantime, enable frame pointers for more readable stack traces. Signed-off-by: Linus Torvalds commit e42734e270b9e5ada83188d73b733533ce11ee4a Author: Stefan Bader Date: Fri Dec 15 17:18:30 2006 +0100 [S390] cio: css_register_subchannel race. Asynchronous probe can release memory of a subchannel before css_get_ssd_info is called. To fix this call css_get_ssd_info before registering with driver core. Signed-off-by: Stefan Bader Signed-off-by: Martin Schwidefsky commit da1cf23efe0c067ef95e4702b386e6e1baab10c7 Author: Michael Holzheu Date: Fri Dec 15 17:18:27 2006 +0100 [S390] Save prefix register for dump on panic The dump tools expect that the saved prefix register points to the lowcore of the dump cpu. Since we set the prefix register to 0 during reipl/dump, we have to save the original prefix register. Before we start the dump program, we copy the original prefix register to the designated location in the lowcore. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit 58be944127be80bd947dd72d69523b3d4b17781f Author: Michael Holzheu Date: Fri Dec 15 17:18:25 2006 +0100 [S390] Fix reboot hang We use printks after shutting down all other cpus. This is not allowed and can lead to deadlocks. Therefore the printks have to be removed. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit a45e14148fb34175cba042df8979e7982758635f Author: Michael Holzheu Date: Fri Dec 15 17:18:22 2006 +0100 [S390] Fix reboot hang on LPARs Reboot hangs on LPARs without diag308 support. The reason for this is, that before the reboot is done, the channel subsystem is shut down. During the reset on each possible subchannel a "store subchannel" is done. This operation can end in a program check interruption, if the specified subchannel set is not implemented by the hardware. During the reset, currently we do not have a program check handler, which leads to the described kernel bug. We install now a new program check handler for the reboot code to fix this problem. Signed-off-by: Michael Holzheu Signed-off-by: Martin Schwidefsky commit b3c14d0bfd1739b930f26df90552a4d8cdcca0a6 Author: Christian Borntraeger Date: Fri Dec 15 17:18:20 2006 +0100 [S390] sclp_cpi module license. sclp_cpi is GPL. Make the module not taint the kernel Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 13e742babda8cda7df55b8d1ca67d46b4f8dea84 Author: Ralph Wuerthner Date: Fri Dec 15 17:18:17 2006 +0100 [S390] zcrypt: module unload fixes. Add code to reset all queues for a domain and add missing tasklet_kill call to ap bus module exit code. Signed-off-by: Ralph Wuerthner Signed-off-by: Martin Schwidefsky commit 028cf917b258b11286437a1b96e64030f94fd46d Author: Ursula Braun Date: Fri Dec 15 17:18:14 2006 +0100 [S390] Hipersocket multicast queue: make sure outbound handler is called A HiperSocket multicast queue works asynchronously. When sending buffers, the buffer state change from PRIMED to EMPTY may happen delayed. Reschedule the checking for changes in the outbound queue, if there are still PRIMED buffers. Signed-off-by: Ursula Braun Signed-off-by: Martin Schwidefsky commit 86b22470f68528c68cb25dbd58886040e1917494 Author: Christian Borntraeger Date: Fri Dec 15 17:18:10 2006 +0100 [S390] hypfs fixes Correct typo to make hypfs work on systems that support only diag204 subcode 4 and fix error handling in hypfs_diag_init. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 240bfbef67e9ae174190b231e63ee3c0f9f02d8a Author: Martin Schwidefsky Date: Fri Dec 15 17:17:57 2006 +0100 [S390] update default configuration Signed-off-by: Martin Schwidefsky commit d1998ef38a13c4e74c69df55ccd38b0440c429b2 Author: Ben Collins Date: Wed Dec 13 22:10:05 2006 -0500 [PATCH] ib_verbs: Use explicit if-else statements to avoid errors with do-while macros At least on PPC, the "op ? op : dma" construct causes a compile failure because the dma_* is a do{}while(0) macro. This turns all of them into proper if/else to avoid this problem. Signed-off-by: Ben Collins Signed-off-by: Linus Torvalds commit 4e581ff165f26ba3d37a4a836b2e3add47bec72f Author: Venkatesh Pallipadi Date: Wed Dec 13 10:41:16 2006 -0800 [CPUFREQ] Trivial cleanup for acpi read/write port in acpi-cpufreq.c Small cleanup in acpi-cpufreq. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Dave Jones commit 4ab70df451c6183dd5474a68edac44684b0b7616 Author: Dhaval Giani Date: Wed Dec 13 14:49:15 2006 +0530 [CPUFREQ] fixes typo in cpufreq.c This patch fixes a typo in cpufreq.c From: Dhaval Giani Signed-off-by: Dave Jones