commit 3de2403e6659d71b36ec820dc9b942762ddfe6eb Merge: e0164af... 1e38c12... Author: Linus Torvalds Date: Wed May 7 17:04:49 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 fork/clone/vfork system call restart. sparc: Fix mmap VA span checking. commit 1e38c126c9252b612697e34f43b1b3371c8ee31d Author: David S. Miller Date: Wed May 7 16:21:28 2008 -0700 sparc: Fix fork/clone/vfork system call restart. We clobber %i1 as well as %i0 for these system calls, because they give two return values. Therefore, on error, we have to restore %i1 properly or else the restart explodes since it uses the wrong arguments. This fixes glibc's nptl/tst-eintr1.c testcase. Signed-off-by: David S. Miller commit e0164af66b6ec165836d1d862b3f800890713452 Author: Auke Kok Date: Wed May 7 13:42:33 2008 -0700 [MAINTAINERS] New maintainer for Intel ethernet adapters I'm handing over maintainership to Jeff Kirsher and moving on to other Linux/Open Source work within Intel. Good luck to Jeff ;) Signed-off-by: Auke Kok Signed-off-by: Linus Torvalds commit 5816339310b2d9623cf413d33e538b45e815da5d Author: David S. Miller Date: Wed May 7 02:24:28 2008 -0700 sparc: Fix mmap VA span checking. We should not conditionalize VA range checks on MAP_FIXED. Signed-off-by: David S. Miller commit bd1d23a81083f03ac63afbb7656b87eed04d8953 Merge: c0a1811... d45100f... Author: Linus Torvalds Date: Tue May 6 18:18:43 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 initrd regression. usb: Sparc build fix, make USB_ISP1760_OF depend on PPC_OF sparc64: remove online_page() sparc64: use compat_sys_utimes instead of home-grown local copy. sbus: Fix bpp driver build. sparc video: make blank use proper constant Revert "[SPARC64]: Wrap SMP IPIs with irq_enter()/irq_exit()." sparc: tcx.c remove unnecessary function commit c0a18111e571138747a98af18b3a2124df56a0d1 Author: Linus Torvalds Date: Tue May 6 17:09:27 2008 -0700 Revert "uml: fix gcc problem" This reverts commit 22eecde2f9034764a3fd095eecfa3adfb8ec9a98. Uli reports that it breaks UML on x86-64 with the Fedora 8 gcc (gcc 4.1.2), causing a crash on startup. See http://marc.info/?l=linux-kernel&m=121011722806093&w=2 for a trace. Reported-by: Ulrich Drepper Cc: Ingo Molnar Cc: Thomas Gleixner Cc: Andrew Morton Signed-off-by: Linus Torvalds commit d45100f7b69e3d9cd0cd5e956b6ac2c78d460d07 Author: David S. Miller Date: Tue May 6 15:19:54 2008 -0700 sparc64: Fix initrd regression. We die because we forget to convert initrd_start and initrd_end to virtual addresses. Reported by Mikael Pettersson Signed-off-by: David S. Miller commit 3eb6753e20af1803d7784efc36e8208e8d5fac05 Author: David S. Miller Date: Tue May 6 15:15:12 2008 -0700 usb: Sparc build fix, make USB_ISP1760_OF depend on PPC_OF Sparc doesn't have some of the OF interfaces this driver wants to use. Acked-by: Benjamin Herrenschmidt Signed-off-by: David S. Miller commit db176c6ed8974fae94328ad5ac9e70b094ff22fd Author: OGAWA Hirofumi Date: Wed May 7 04:02:53 2008 +0900 Fix bogus warning in sysdev_driver_register() if ((drv->entry.next != drv->entry.prev) || (drv->entry.next != NULL)) { warns list_empty(&drv->entry). Signed-off-by: OGAWA Hirofumi Cc: Greg KH Cc: Len Brown [ Version 2 totally redone based on suggestions from Linus & Greg ] Signed-off-by: Linus Torvalds commit 6ce07c7b61e74af35a05060a2d6341f68fd92c9e Author: Linus Torvalds Date: Tue May 6 13:13:37 2008 -0700 VFS: fix unused variable warning Commit 33dcdac2df54e66c447ae03f58c95c7251aa5649 ("kill ->put_inode") removed the final use of i_op->put_inode, but left the now totally unused "op" variable in iput(). Get rid of it. Signed-off-by: Linus Torvalds commit aeed5fce37196e09b4dac3a1c00d8b7122e040ce Author: Hugh Dickins Date: Tue May 6 20:49:23 2008 +0100 x86: fix PAE pmd_bad bootup warning Fix warning from pmd_bad() at bootup on a HIGHMEM64G HIGHPTE x86_32. That came from 9fc34113f6880b215cbea4e7017fc818700384c2 x86: debug pmd_bad(); but we understand now that the typecasting was wrong for PAE in the previous version: pagetable pages above 4GB looked bad and stopped Arjan from booting. And revert that cded932b75ab0a5f9181ee3da34a0a488d1a14fd x86: fix pmd_bad and pud_bad to support huge pages. It was the wrong way round: we shouldn't weaken every pmd_bad and pud_bad check to let huge pages slip through - in part they check that we _don't_ have a huge page where it's not expected. Put the x86 pmd_bad() and pud_bad() definitions back to what they have long been: they can be improved (x86_32 should use PTE_MASK, to stop PAE thinking junk in the upper word is good; and x86_64 should follow x86_32's stricter comparison, to stop thinking any subset of required bits is good); but that should be a later patch. Fix Hans' good observation that follow_page() will never find pmd_huge() because that would have already failed the pmd_bad test: test pmd_huge in between the pmd_none and pmd_bad tests. Tighten x86's pmd_huge() check? No, once it's a hugepage entry, it can get quite far from a good pmd: for example, PROT_NONE leaves it with only ACCESSED of the KERN_PGTABLE bits. However... though follow_page() contains this and another test for huge pages, so it's nice to keep it working on them, where does it actually get called on a huge page? get_user_pages() checks is_vm_hugetlb_page(vma) to to call alternative hugetlb processing, as does unmap_vmas() and others. Signed-off-by: Hugh Dickins Earlier-version-tested-by: Ingo Molnar Cc: Thomas Gleixner Cc: Jeff Chua Cc: Hans Rosenfeld Cc: Arjan van de Ven Signed-off-by: Linus Torvalds commit bb78be8397d3b0900af3d717672218ee3ea07985 Merge: 31d9168... 0b2bac2... Author: Linus Torvalds Date: Tue May 6 11:39:57 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] fix SMP ordering hole in fcntl_setlk() [PATCH] kill ->put_inode [PATCH] fix reservation discarding in affs commit 0b2bac2f1ea0d33a3621b27ca68b9ae760fca2e9 Author: Al Viro Date: Tue May 6 13:58:34 2008 -0400 [PATCH] fix SMP ordering hole in fcntl_setlk() fcntl_setlk()/close() race prevention has a subtle hole - we need to make sure that if we *do* have an fcntl/close race on SMP box, the access to descriptor table and inode->i_flock won't get reordered. As it is, we get STORE inode->i_flock, LOAD descriptor table entry vs. STORE descriptor table entry, LOAD inode->i_flock with not a single lock in common on both sides. We do have BKL around the first STORE, but check in locks_remove_posix() is outside of BKL and for a good reason - we don't want BKL on common path of close(2). Solution is to hold ->file_lock around fcheck() in there; that orders us wrt removal from descriptor table that preceded locks_remove_posix() on close path and we either come first (in which case eviction will be handled by the close side) or we'll see the effect of close and do eviction ourselves. Note that even though it's read-only access, we do need ->file_lock here - rcu_read_lock() won't be enough to order the things. Signed-off-by: Al Viro commit 33dcdac2df54e66c447ae03f58c95c7251aa5649 Author: Christoph Hellwig Date: Tue Apr 29 17:46:26 2008 +0200 [PATCH] kill ->put_inode And with that last patch to affs killing the last put_inode instance we can finally, after many years of transition kill this racy and awkward interface. (It's kinda funny that even the description in Documentation/filesystems/vfs.txt was entirely wrong..) Also remove a very misleading comment above the defintion of struct super_operations. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit dca3c33652e437ed02c30ed3eca3cecd0cc00838 Author: Roman Zippel Date: Tue Apr 29 17:02:20 2008 +0200 [PATCH] fix reservation discarding in affs - remove affs_put_inode, so preallocations aren't discared unnecessarily often. - remove affs_drop_inode, it's called with a spinlock held, so it can't use a mutex. - make i_opencnt atomic - avoid direct b_count manipulations - a few allocation failure fixes, so that these are more gracefully handled now. Signed-off-by: Roman Zippel Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit 31d9168d27fac127d449cb9fa252d880de872c7f Merge: 4880d10... 05177f1... Author: Linus Torvalds Date: Tue May 6 09:17:03 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: (27 commits) pata_atiixp: Don't disable sata_inic162x: update intro comment, up the version and drop EXPERIMENTAL sata_inic162x: add cardbus support sata_inic162x: kill now unused SFF related stuff sata_inic162x: use IDMA for ATAPI commands sata_inic162x: use IDMA for non DMA ATA commands sata_inic162x: kill now unused bmdma related stuff sata_inic162x: use IDMA for ATA_PROT_DMA sata_inic162x: update TF read handling sata_inic162x: add / update constants sata_inic162x: misc clean ups sata_mv use hweight16() for bit counting (V2) sata_mv NCQ-EH for FIS-based switching sata_mv delayed eh handling libata: export ata_eh_analyze_ncq_error sata_mv new mv_port_intr function sata_mv fix mv_host_intr bug for hc_irq_cause sata_mv NCQ and SError fixes for mv_err_intr sata_mv rearrange mv_config_fbs sata_mv errata workaround for sata25 part 1 ... commit 05177f178efe1459d2d0ac05430027ba201889a4 Author: Alan Cox Date: Fri May 2 15:13:39 2008 -0700 pata_atiixp: Don't disable A couple of distributions (Fedora, Ubuntu) were having weird problems with the ATI IXP series PATA controllers being reported as simplex. At the heart of the problem is that both distros ignored the recommendations to load pata_acpi and ata_generic *AFTER* specific host drivers. The underlying cause however is that if you D3 and then D0 an ATI IXP it helpfully throws away some configuration and won't let you rewrite it. Add checks to ata_generic and pata_acpi to pin ATIIXP devices. Possibly the real answer here is to quirk them and pin them, but right now we can't do that before they've been pcim_enable()'d by a driver. I'm indebted to David Gero for this. His bug report not only reported the problem but identified the cause correctly and he had tested the right values to prove what was going on [If you backport this for 2.6.24 you will need to pull in the 2.6.25 removal of the bogus WARN_ON() in pcim_enagle] Signed-off-by: Alan Cox Tested-by: David Gero Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit 22bfc6d5e19b72d50535ce32fd6dee2ce2e75775 Author: Tejun Heo Date: Wed Apr 30 16:35:17 2008 +0900 sata_inic162x: update intro comment, up the version and drop EXPERIMENTAL sata_inic162x is now ready for production use. Bump the version, explain what's working and what's not and drop EXPERIMENTAL. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit ba66b242b1c3432b44d893c64124522b3bdce71e Author: Tejun Heo Date: Wed Apr 30 16:35:16 2008 +0900 sata_inic162x: add cardbus support When attached to cardbus, mmio region is at BAR 1. Other than that, everything else is the same. Add support for it. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit f8b0685a8ea8e3974f8953378ede2111f8d49d22 Author: Tejun Heo Date: Wed Apr 30 16:35:15 2008 +0900 sata_inic162x: kill now unused SFF related stuff sata_inic162x now doesn't use any SFF features. Remove all SFF related stuff. * Mask unsolicited ATA interrupts. This removes our primary source of spurious interrupts and spurious interrupt handling can be tightened up. There's no need to clear ATA interrupts by reading status register either. * Don't dance with IDMA_CTL_ATA_NIEN and simplify accesses to IDMA_CTL. * Inherit from sata_port_ops instead of ata_sff_port_ops. * Don't initialize or use ioaddr. There's no need to map BAR0-4 anymore. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit b3f677e501a494aa1582d4ff35fb3ac6f0a59b08 Author: Tejun Heo Date: Wed Apr 30 16:35:14 2008 +0900 sata_inic162x: use IDMA for ATAPI commands Use IDMA for ATAPI commands. Write and some misc commands time out when executed using ATAPI_PROT_DMA but ATAPI_PROT_PIO works fine. As PIO is driven by DMA too, it doesn't make any noticeable difference for native SATA devices. inic_check_atapi_dma() is implemented to force PIO for those ATAPI commands. After this change, sata_inic162x issues all commands using IDMA. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 049e8e04986bde66df9648d88d0960ab4cbd6992 Author: Tejun Heo Date: Wed Apr 30 16:35:13 2008 +0900 sata_inic162x: use IDMA for non DMA ATA commands Use IDMA for PIO and non-data commands. This allows sata_inic162x to safely drive LBA48 devices. Kill inic_dev_config() which contains code to reject LBA48 devices. With this change, status checking in inic_qc_issue() to avoid hard lock up after hotplug can go away too. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit ab5b0235c4e819c9bc45fa62c99f9fe49e73e701 Author: Tejun Heo Date: Wed Apr 30 16:35:12 2008 +0900 sata_inic162x: kill now unused bmdma related stuff sata_inic162x doesn't use BMDMA anymore. Kill bmdma related stuff. * prdctl manipulation * port IRQ mask manipulation * inherit ATA_BASE_SHT instead of ATA_BMDMA_SHT * BMDMA methods Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 3ad400a92e9c7d2f7caa6c6f811dad9b7d3f333c Author: Tejun Heo Date: Wed Apr 30 16:35:11 2008 +0900 sata_inic162x: use IDMA for ATA_PROT_DMA The modified driver on initio site has enough clue on how to use IDMA. Use IDMA for ATA_PROT_DMA. * LBA48 now works as long as it uses DMA (LBA48 devices still aren't allowed as it can destroy data if PIO is used for any reason). * No need to mask IRQs for read DMAs as IDMA_DONE is properly raised after transfer to memory is actually completed. There will be some spurious interrupts but host_intr will handle it correctly and manipulating port IRQ mask interacts badly with the other port for some reason, so command type dependent port IRQ masking is not used anymore. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 364fac0e56b9bd379330ef9e39d3761f0b491e2c Author: Tejun Heo Date: Thu May 1 23:55:58 2008 +0900 sata_inic162x: update TF read handling inic162x can't reliably read back TF or at least we don't know how to do it yet. The only values which seem reliable are status and error. This patch updates access to TF. * implement inic_tf_read() which reads the TF area in mmio area * implement custom inic_qc_fill_rtf() which only returns true if status indicates device error. it'll be returning bogus addresses for device errors but it'll be able to report why it failed at least. * implement custom inic_check_ready() and use ata_wait_after_reset() instead of the SFF version. * use inic_tf_read() for classification. This is not perfect but it fixes hotplug detection failure and at least makes the driver report 0's instead of random garbages while reporting valid status and error for device errors. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit b0dd9b8ef985291a8b40118c5f33b7935e273dcb Author: Tejun Heo Date: Wed Apr 30 16:35:09 2008 +0900 sata_inic162x: add / update constants * add a bunch of constants, most are from the datasheet, a few undocumented ones are from initio's modified driver * HCTL_PWRDWN is bit 12 not 13 This is in preparation of further inic162x updates. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 36f674d9a65264d3826ca7300bed441e22a624b2 Author: Tejun Heo Date: Wed Apr 30 16:35:08 2008 +0900 sata_inic162x: misc clean ups * use larger indents for structure member definitions * kill unused variable @addr in inic_scr_write() * kill unnecessary flushes in inic_freeze/thaw() * kill buggy explicit kfree() on devres managed port private data This is in preparation of further inic162x updates. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit c46938ccfe35a58a0873715ee4c26fc9eb8d87b3 Author: Mark Lord Date: Fri May 2 14:02:28 2008 -0400 sata_mv use hweight16() for bit counting (V2) Some tidying as suggested by Grant Grundler. Nuke local bit-counting function from sata_mv in favour of using hweight16(). Also add a short explanation for the 15msec timeout used when waiting for empty/idle. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 4c299ca3649ccf666819e7d4a27a68c39fa174f1 Author: Mark Lord Date: Fri May 2 02:16:20 2008 -0400 sata_mv NCQ-EH for FIS-based switching Convert sata_mv's EH for FIS-based switching (FBS) over to the sequence recommended by Marvell. This enables us to catch/analyze multiple failed links on a port-multiplier when using NCQ. To do this, we clear the ERR_DEV bit in the EDMA Halt-Conditions register, so that the EDMA engine doesn't self-disable on the first NCQ error. Our EH code sets the MV_PP_FLAG_DELAYED_EH flag to prevent new commands being queued while we await completion of all outstanding NCQ commands on all links of the failed PM. The SATA Test Control register tells us which links have failed, so we must only wait for any other active links to finish up before we stop the EDMA and run the .error_handler afterward. The patch also includes skeleton code for handling of non-NCQ FBS operation. This is more for documentation purposes right now, as that mode is not yet enabled in sata_mv. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 29d187bb1e30682e228ce461c487d78d945c3e4f Author: Mark Lord Date: Fri May 2 02:15:37 2008 -0400 sata_mv delayed eh handling Introduce a new "delayed error handling" mechanism in sata_mv, to enable us to eventually deal with multiple simultaneous NCQ failures on a single host link when a PM is present. This involves a port flag (MV_PP_FLAG_DELAYED_EH) to prevent new commands being queued, and a pmp bitmap to indicate which pmp links had NCQ errors. The new mv_pmp_error_handler() uses those values to invoke ata_eh_analyze_ncq_error() on each failed link, prior to freezing the port and passing control to sata_pmp_error_handler(). This is based upon a strategy suggested by Tejun. For now, we just implement the delayed mechanism. The next patch in this series will add the multiple-NCQ EH code to take advantage of it. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 10acf3b0d3b46c6ef5d6f0722f72ad9b743ea848 Author: Mark Lord Date: Fri May 2 02:14:53 2008 -0400 libata: export ata_eh_analyze_ncq_error Export ata_eh_analyze_ncq_error() for subsequent use by sata_mv, as suggested by Tejun. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit a90103298fd5ccd9a9df6d47bde9a3f371707037 Author: Mark Lord Date: Fri May 2 02:14:02 2008 -0400 sata_mv new mv_port_intr function Separate out the inner loop body of mv_host_intr() into it's own function called mv_port_intr(). This should help maintainabilty. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit eabd5eb1cb59bfb162e7aa23007248f2bb480816 Author: Mark Lord Date: Fri May 2 02:13:27 2008 -0400 sata_mv fix mv_host_intr bug for hc_irq_cause Remove the unwanted reads of hc_irq_cause from mv_host_intr(), thereby removing a bug whereby we were not always reading it when needed.. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 37b9046a3e433a0b0c39ad1e81ec187d5be800ba Author: Mark Lord Date: Fri May 2 02:12:34 2008 -0400 sata_mv NCQ and SError fixes for mv_err_intr Sigh. Undo some earlier changes to mv_port_intr(), so that we now read/clear SError again in all cases. Arrange the top of the function to be as close as possible to what we need for a later update (in this series) for ERR_DEV handling. Fix things so that libata-eh can attempt a READ_LOG_EXT_10H in response to a failed NCQ command, by just doing a local mv_eh_freeze() rather than ata_port_freeze(). This will now fully handle NCQ errors much of the time, but more fixes are needed for FBS/PMP, and for certain chip errata. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 00f42eabb204c68fa64ef72de834e74aca15c81f Author: Mark Lord Date: Fri May 2 02:11:45 2008 -0400 sata_mv rearrange mv_config_fbs Rearrange mv_config_fbs() to more closely follow the (corrected) datasheet recommendations for NCQ and FIS-based switching (FBS). Also, maintain a port flag to let us know when FBS is enabled. We will make more use of that flag later in this patch series. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit dd2890f60f8e15f14c8eb132779b2f15c49d1203 Author: Mark Lord Date: Fri May 2 02:10:56 2008 -0400 sata_mv errata workaround for sata25 part 1 Part 1 of workaround for errata "sata#25" for the 60x1 series (the second half of this errata workaround is still in development. Bit22 of the GPIO port has to be set "on" when in NCQ mode. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 3e4a139107e497a741c26f8a377a10f214d63ec1 Author: Mark Lord Date: Fri May 2 02:10:02 2008 -0400 sata_mv new mv_qc_defer method The EDMA engine cannot tolerate a mix of NCQ/non-NCQ commands, and cannot be used for PIO at all. So we need to prevent libata from trying to feed us such mixtures. Introduce mv_qc_defer() for this purpose, and use it for all chip versions. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 9b2c4e0bae854fb5e88c9cacc0dacf21631c5cb0 Author: Mark Lord Date: Fri May 2 02:09:14 2008 -0400 sata_mv wait for empty+idle When performing EH, it is recommended to wait for the EDMA engine to empty out requests-in-progress before disabling EDMA. Introduce code to poll the EDMA_STATUS register for idle/empty bits before disabling EDMA. For non-EH operation, this will normally exit without delay, other than the register read. A later series of patches may focus on eliminating this and various other register reads (when possible) throughout the driver, but for now we're focussing on solid reliablity. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 616d4a98ad8749ebe17a8fcac67df65c321350ac Author: Mark Lord Date: Fri May 2 02:08:32 2008 -0400 sata_mv pci features Some of the GenIIe EDMA optimizations should not be used for non-PCI (SOC) devices, and nor for certain configurations of conventional PCI (non PCI-X, PCIe) buses. Logic taken/simplified from that in the Marvell proprietary driver. Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 8e7decdb8b132ee970a2636931b7653dec6af472 Author: Mark Lord Date: Fri May 2 02:07:51 2008 -0400 sata_mv more cosmetic changes More cosmetic changes; no code changes. -- try and improve consistency of naming. -- add missing _OFS to tails of register offset definitions. -- rename mv_setup_ifctl() to mv_setup_ifcfg(), since that's what it really does. -- remove/move some dead comments Signed-off-by: Mark Lord Signed-off-by: Jeff Garzik commit 07ab85de4d960b6f39395e51c1853485ad120de5 Author: Alek Du Date: Tue May 6 21:31:41 2008 +0800 libata: Add Intel SCH PATA driver This patch adds Intel SCH chipsets (AF82US15W, AF82US15L, AF82UL11L) PATA controller support. Signed-off-by: Alek Du Signed-off-by: Jeff Garzik commit cb6716c879ecf49e2af344926c6a476821812061 Author: Tejun Heo Date: Thu May 1 10:03:08 2008 +0900 ata_piix: verify SIDPR access before enabling it On certain configurations (certain macbooks), even though all the conditions for SIDPR access described in the datasheet are met, actually reading those registers just returns 0 and have no effect on write. Verify SIDPR is actually working before enabling it. This is reported by Ryan Roth in bz#10512. Signed-off-by: Tejun Heo Cc: Ryan Roth Signed-off-by: Jeff Garzik commit 78ab88f04f44bed566d51dce0c7cbfeff6449a06 Author: Tejun Heo Date: Thu May 1 23:41:41 2008 +0900 libata: improve post-reset device ready test Some controllers (jmb and inic162x) use 0x77 and 0x7f to indicate that the device isn't ready yet. It looks like they use 0xff if device presence is detected but connection isn't established. 0x77 or 0x7f after connection is established and use the value from signature FIS after receiving it. This patch implements ata_check_ready(), which takes TF status value and determines whether the port is ready or not considering the above and other conditions, and use it in @check_ready() functions. This is safe as both 0x77 and 0x7f aren't valid ready status value even though they have BSY bit cleared. This fixes hot plug detection failures which can be triggered with certain drives if they aren't already spun up when the data connector is hot plugged. Tested on sil, sil24, ahci (jmb/ich), piix and inic162x combined with eight drives from all major vendors. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 4880d10927c93d858d40e297361fff375ee98492 Merge: a153063... 9d1045a... Author: Linus Torvalds Date: Tue May 6 07:49:20 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: net_cls_act: act_simple dont ignore realloc code iwlwifi: make IWLWIFI a tristate Revert "atm: Do not free already unregistered net device." dccp: return -EINVAL on invalid feature length irda: fix !PNP support for drivers/net/irda/smsc-ircc2.c irda: fix !PNP support in drivers/net/irda/nsc-ircc.c net_cls_act: Make act_simple use of netlink policy. ip: Use inline function dst_metric() instead of direct access to dst->metric[] ip: Make use of the inline function dst_metric_locked() atm: Bad locking on br2684_devs modifications. atm: Do not free already unregistered net device. mac80211: Do not free net device after it is unregistered. bridge: Consolidate error paths in br_add_bridge(). bridge: Net device leak in br_add_bridge(). niu: Fix probing regression for maramba on-board chips. lapbeth: Release ->ethdev when unregistering device. xfrm: convert empty xfrm_audit_* macros to functions net: Fix useless comment reference loop. sch_htb: remove from event queue in htb_parent_to_leaf() commit 9d1045ad68fcccfaf1393cc463ab6357693e8d1d Author: Jamal Hadi Salim Date: Tue May 6 00:10:24 2008 -0700 net_cls_act: act_simple dont ignore realloc code reallocation of the policy data was being ignored. It could fail. Simplify so that there is no need for reallocating. Signed-off-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit 1da5ea1a8bf4ddb82831528223c853821cb1c9ab Author: Adrian Bunk Date: Tue May 6 00:04:47 2008 -0700 iwlwifi: make IWLWIFI a tristate IWLWIFI should be a tristate so that if IWLCORE and/or IWL3945 are m and none of them is y kbuild doesn't create an empty drivers/net/wireless/built-in.o This patch also removes the pointless "default n". Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 5f6b1ea41b46bc63f667f9b30d939b49734c20b0 Author: David S. Miller Date: Tue May 6 00:00:16 2008 -0700 Revert "atm: Do not free already unregistered net device." This reverts commit 65e4113684e50cee75357ce10dc9026b0929e4e9. Unlike the other cases Pavel fixed, this case did not setup a netdev->destructor of free_netdev, therefore this change was not correct. Signed-off-by: David S. Miller commit a15306365a16380f3bafee9e181ba01231d4acd7 Merge: bb896af... c5057dd... Author: Linus Torvalds Date: Mon May 5 17:31:41 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: mlx4_core: Support creation of FMRs with pages smaller than 4K IB/ehca: Fix function return types RDMA/cxgb3: Bump up the MPA connection setup timeout. RDMA/cxgb3: Silently ignore close reply after abort. RDMA/cxgb3: QP flush fixes IB/ipoib: Fix transmit queue stalling forever IB/mlx4: Fix off-by-one errors in calls to mlx4_ib_free_cq_buf() commit bb896afe2089575ca1bb1fbf3f07b934e1ba999b Merge: 2e83fc4... aac6abc... Author: Linus Torvalds Date: Mon May 5 17:31:14 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-fixes * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-fixes: sched: default to n for GROUP_SCHED and FAIR_GROUP_SCHED sched: add optional support for CONFIG_HAVE_UNSTABLE_SCHED_CLOCK sched, x86: add HAVE_UNSTABLE_SCHED_CLOCK sched: fix cpu clock sched: fair-group: fix a Div0 error of the fair group scheduler sched: fix missing locking in sched_domains code sched: make clock sync tunable by architecture code sched: fix debugging sched: fix sched_info_switch not being called according to documentation sched: fix hrtick_start_fair and CPU-Hotplug sched: fix SCHED_FAIR wake-idle logic error sched: fix RT task-wakeup logic sched: add statics, don't return void expressions sched: add debug checks to idle functions sched: remove old sched doc sched: make rt_sched_class, idle_sched_class static sched: optimize calc_delta_mine() sched: fix normalized sleeper commit c5057ddccbcb4bf363af628d7963a7475f4114a7 Author: Oren Duer Date: Mon May 5 15:56:52 2008 -0700 mlx4_core: Support creation of FMRs with pages smaller than 4K Don't hard code a test against a minimum page shift of 12, since the device may support smaller pages. Test against the actual smallest page size from the device capabilities. Signed-off-by: Oren Duer Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit cf04690885972eaba830ee761de545a6956197e6 Author: Stefan Roscher Date: Mon May 5 15:51:49 2008 -0700 IB/ehca: Fix function return types Also remove duplicate assignment of local_ca_ack_delay and change min_t check for local_ca_ack_delay to u8 instead of int. Signed-off-by: Stefan Roscher Signed-off-by: Roland Dreier commit 2e83fc4df5f27dfc1b53044c4f142b2f9d1db08c Merge: 17aa7e0... 9185ef6... Author: Linus Torvalds Date: Mon May 5 15:48:53 2008 -0700 Merge branch 'powerpc-next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'powerpc-next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: [POWERPC] Assign PDE->data before gluing PDE into /proc tree [POWERPC] devres: Add devm_ioremap_prot() [POWERPC] macintosh: ADB driver: adb_handler_sem semaphore to mutex [POWERPC] macintosh: windfarm_smu_sat: semaphore to mutex [POWERPC] macintosh: therm_pm72: driver_lock semaphore to mutex commit 17aa7e034416e3080bc57a786d09ba0a4a044561 Author: Stephen Rothwell Date: Mon May 5 13:54:19 2008 +1000 dev_name introduction fall out fix Commit 06916639e2fed9ee475efef2747a1b7429f8fe76 ("driver-core: add dev_name() to help transition away from using bus_id") added a static inline dev_name() and used it in dev_printk. Unfortunately, drivers/edac/edac_core.h defines a macro called dev_name(). Rename the latter. Diagnosis by Tony Breeds and Michael Ellerman. Signed-off-by: Stephen Rothwell Acked-by: Doug Thompson Signed-off-by: Linus Torvalds commit aac6abca858386438d9a7233c3471d2ecfa2f704 Author: Parag Warudkar Date: Sat May 3 20:42:34 2008 -0400 sched: default to n for GROUP_SCHED and FAIR_GROUP_SCHED GROUP_SCHED is confirmed to cause unacceptable latencies, see: http://lkml.org/lkml/2008/5/2/370. Mark it EXPERIMENTAL and default to no for now. Signed-off-by: Parag Warudkar Signed-off-by: Ingo Molnar commit 3e51f33fcc7f55e6df25d15b55ed10c8b4da84cd Author: Peter Zijlstra Date: Sat May 3 18:29:28 2008 +0200 sched: add optional support for CONFIG_HAVE_UNSTABLE_SCHED_CLOCK this replaces the rq->clock stuff (and possibly cpu_clock()). - architectures that have an 'imperfect' hardware clock can set CONFIG_HAVE_UNSTABLE_SCHED_CLOCK - the 'jiffie' window might be superfulous when we update tick_gtod before the __update_sched_clock() call in sched_clock_tick() - cpu_clock() might be implemented as: sched_clock_cpu(smp_processor_id()) if the accuracy proves good enough - how far can TSC drift in a single jiffie when considering the filtering and idle hooks? [ mingo@elte.hu: various fixes and cleanups ] Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit a5574cf65b5f03ce9ade3918764fe22e5e2371e3 Author: Ingo Molnar Date: Mon May 5 23:19:50 2008 +0200 sched, x86: add HAVE_UNSTABLE_SCHED_CLOCK add the HAVE_UNSTABLE_SCHED_CLOCK, for architectures to select. the next change utilizes it. Signed-off-by: Ingo Molnar commit dfbf4a1bc319f0f9a31e39b2da1fa5c55e85af89 Author: Ingo Molnar Date: Wed Apr 23 09:24:06 2008 +0200 sched: fix cpu clock David Miller pointed it out that nothing in cpu_clock() sets prev_cpu_time. This caused __sync_cpu_clock() to be called all the time - against the intention of this code. The result was that in practice we hit a global spinlock every time cpu_clock() is called - which - even though cpu_clock() is used for tracing and debugging, is suboptimal. While at it, also: - move the irq disabling to the outest layer, this should make cpu_clock() warp-free when called with irqs enabled. - use long long instead of cycles_t - for platforms where cycles_t is 32-bit. Reported-by: David Miller Signed-off-by: Ingo Molnar commit cb4ad1ffc7c0d8ea7dc8cd8ba303d83551716d46 Author: Miao Xie Date: Mon Apr 28 12:54:56 2008 +0800 sched: fair-group: fix a Div0 error of the fair group scheduler When I echoed 0 into the "cpu.shares" file, a Div0 error occured. We found it is caused by the following calling. sched_group_set_shares(tg, shares) set_se_shares(tg->se[i], shares/nr_cpu_ids) __set_se_shares(se, shares) div64_64((1ULL<<32), shares) When the echoed value was less than the number of processores, the result of the sentence "shares/nr_cpu_ids" was 0, and then the system called div64() to divide the result, the Div0 error occured. It is unnecessary that the shares value is divided by nr_cpu_ids, I think. Because in the function __update_group_shares_cpu() and init_tg_cfs_entry(), the shares value isn't divided by nr_cpu_ids when setting shares of the sched entity. This patch fixes this bug. And echoing ULONG_MAX value into cpu.shares also causes Div0 error, so we set a macro MAX_SHARES to limit the max value of shares. Signed-off-by: Miao Xie Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 712555ee4f873515612f89554ad1a3fda5fa887e Author: Heiko Carstens Date: Mon Apr 28 11:33:07 2008 +0200 sched: fix missing locking in sched_domains code Concurrent calls to detach_destroy_domains and arch_init_sched_domains were prevented by the old scheduler subsystem cpu hotplug mutex. When this got converted to get_online_cpus() the locking got broken. Unlike before now several processes can concurrently enter the critical sections that were protected by the old lock. So use the already present doms_cur_mutex to protect these sections again. Cc: Gautham R Shenoy Cc: Paul Jackson Signed-off-by: Heiko Carstens Signed-off-by: Ingo Molnar commit 690229a0912ca2fef8b542fe4d8b73acfcdc6e24 Author: Ingo Molnar Date: Wed Apr 23 09:31:35 2008 +0200 sched: make clock sync tunable by architecture code make time_sync_thresh tunable to architecture code. Signed-off-by: Ingo Molnar commit d7dcdc11cfa6a8860a29b09f985467b89224699d Author: Mike Galbraith Date: Tue Apr 29 12:23:09 2008 +0200 sched: fix debugging Revert debugging commit 7ba2e74ab5a0518bc953042952dd165724bc70c9. print_cfs_rq_tasks() can induce live-lock if a task is dequeued during list traversal. Signed-off-by: Mike Galbraith Signed-off-by: Ingo Molnar commit 673a90a1e05c8127886f7659d1a457169378371f Author: David Simner Date: Tue Apr 29 10:08:59 2008 +0100 sched: fix sched_info_switch not being called according to documentation http://bugzilla.kernel.org/show_bug.cgi?id=10545 sched_stats.h says that __sched_info_switch is "called when prev != next" in the comment. sched.c should therefore do that. Signed-off-by: Ingo Molnar commit b328ca182f01c2a04b85e0ee8a410720b104fbcc Author: Peter Zijlstra Date: Tue Apr 29 10:02:46 2008 +0200 sched: fix hrtick_start_fair and CPU-Hotplug Gautham R Shenoy reported: > While running the usual CPU-Hotplug stress tests on linux-2.6.25, > I noticed the following in the console logs. > > This is a wee bit difficult to reproduce. In the past 10 runs I hit this > only once. > > ------------[ cut here ]------------ > > WARNING: at kernel/sched.c:962 hrtick+0x2e/0x65() > > Just wondering if we are doing a good job at handling the cancellation > of any per-cpu scheduler timers during CPU-Hotplug. This looks like its indeed not cancelled at all and migrates the it to another cpu. Fix it via a proper hotplug notifier mechanism. Reported-by: Gautham R Shenoy Signed-off-by: Peter Zijlstra Cc: stable@kernel.org Signed-off-by: Ingo Molnar commit 104f64549c961a797ff5f7c59946a7caa335c5b0 Author: Gregory Haskins Date: Mon Apr 28 12:40:01 2008 -0400 sched: fix SCHED_FAIR wake-idle logic error We currently use an optimization to skip the overhead of wake-idle processing if more than one task is assigned to a run-queue. The assumption is that the system must already be load-balanced or we wouldnt be overloaded to begin with. The problem is that we are looking at rq->nr_running, which may include RT tasks in addition to CFS tasks. Since the presence of RT tasks really has no bearing on the balance status of CFS tasks, this throws the calculation off. This patch changes the logic to only consider the number of CFS tasks when making the decision to optimze the wake-idle. Signed-off-by: Gregory Haskins CC: Peter Zijlstra Signed-off-by: Ingo Molnar commit 8ae121ac8666b0421aa20fd80d4597ec66fa54bc Author: Gregory Haskins Date: Wed Apr 23 07:13:29 2008 -0400 sched: fix RT task-wakeup logic Dmitry Adamushko pointed out a logic error in task_wake_up_rt() where we will always evaluate to "true". You can find the thread here: http://lkml.org/lkml/2008/4/22/296 In reality, we only want to try to push tasks away when a wake up request is not going to preempt the current task. So lets fix it. Note: We introduce test_tsk_need_resched() instead of open-coding the flag check so that the merge-conflict with -rt should help remind us that we may need to support NEEDS_RESCHED_DELAYED in the future, too. Signed-off-by: Gregory Haskins CC: Dmitry Adamushko CC: Steven Rostedt Signed-off-by: Ingo Molnar commit 983ed7a66bcec9dc307d89dc7af47cdf209e56af Author: Harvey Harrison Date: Thu Apr 24 18:17:55 2008 -0700 sched: add statics, don't return void expressions Noticed by sparse: kernel/sched.c:760:20: warning: symbol 'sched_feat_names' was not declared. Should it be static? kernel/sched.c:767:5: warning: symbol 'sched_feat_open' was not declared. Should it be static? kernel/sched_fair.c:845:3: warning: returning void-valued expression kernel/sched.c:4386:3: warning: returning void-valued expression Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar commit d478c2cfaa2476f8b6876f9eb4d8fddcfa986479 Author: Andrew Morton Date: Sat Apr 26 11:30:34 2008 -0700 sched: add debug checks to idle functions Cc: Venkatesh Pallipadi Cc: "Justin Mattock" Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar commit 733a0771df46af942b8355cd8bb15780106b4353 Author: Ingo Molnar Date: Mon Apr 28 14:05:18 2008 +0200 sched: remove old sched doc Fabio Checconi noticed that Documentation/scheduler/sched-design.txt was a stale copy of the old scheduler. Remove it. Reported-by: Fabio Checconi Signed-off-by: Ingo Molnar commit 2abdad0a4cd8f9413f778cc998e0ee7d60b28417 Author: Harvey Harrison Date: Fri Apr 25 10:53:13 2008 -0700 sched: make rt_sched_class, idle_sched_class static The C files are included directly in sched.c, so they are effectively static. Signed-off-by: Harvey Harrison Acked-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit e05510d01ad1565e5e086a939261084d67ba2b10 Author: Peter Zijlstra Date: Mon May 5 23:56:17 2008 +0200 sched: optimize calc_delta_mine() Joel noticed that the !lw->inv_weight contition isn't unlikely anymore so remove the unlikely annotation. Also, remove the two div64_u64() inv_weight calculations, which makes them rely on the calc_delta_mine() path as well. Signed-off-by: Peter Zijlstra CC: Joel Schopp Signed-off-by: Ingo Molnar commit a992241de614dd2b7c97a9ba64e28c0e563f19bf Author: Peter Zijlstra Date: Mon May 5 23:56:17 2008 +0200 sched: fix normalized sleeper Normalized sleeper uses calc_delta*() which requires that the rq load is already updated, so move account_entity_enqueue() before place_entity() Tested-by: Frans Pop Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit 19443178fbfbf40db15c86012fc37df1a44ab857 Author: Chris Wright Date: Mon May 5 13:50:24 2008 -0700 dccp: return -EINVAL on invalid feature length dccp_feat_change() validates length and on error is returning 1. This happens to work since call chain is checking for 0 == success, but this is returned to userspace, so make it a real error value. Signed-off-by: Chris Wright Acked-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller commit 108c1961847df2a875047c0fd27b419cb817d213 Merge: 48fc8de... 0df18ff... Author: Linus Torvalds Date: Mon May 5 12:39:10 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: x86 PCI: call dmi_check_pciprobe() x86/pci: add pci=skip_isa_align command lines. x86/pci: remove flag in pci_cfg_space_size_ext x86: fix section mismatch in pci_scan_bus commit abdefbdbd5c683ddcb1dd0d3dd414d02f078a5da Author: Adrian Bunk Date: Mon May 5 12:38:58 2008 -0700 sparc64: remove online_page() The identical online_page() implementations from all architectures got moved to mm/memory_hotplug.c - except for the sparc64 one that even was dead code due to MEMORY_HOTPLUG not being available there. Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller commit 48fc8de9cd093b8c9e2cfa339421862bae3a6cad Author: Geert Uytterhoeven Date: Mon May 5 21:27:21 2008 +0200 CONFIG_SCSI_MAC_ESP needs CONFIG_SCSI_SPI_ATTRS The new mac_esp scsi driver needs CONFIG_SCSI_SPI_ATTRS, just like all other drivers using the new esp_scsi core. Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit b6d9d267f0d68104df910fca89149803aec82426 Author: Finn Thain Date: Mon May 5 21:26:15 2008 +0200 m68k: remove old mac_esp cruft Remove the rest of the old mac_esp driver. Also ditch the rest of the machw mechanism, it needs to be replaced by a fake openfirmware tree. Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 3b17f136bf32984eb0faeb116bcd44ffe3503782 Author: Roman Zippel Date: Mon May 5 21:25:48 2008 +0200 m68k: Handle 68040 bus faults Fix 68040 bus fault handling, so the standard kernel exception handling can be used for i/o probing. Contrary to normal access faults there is nothing to fix, but at least we have to disable writebacks to avoid recursive faults. Signed-off-by: Roman Zippel Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 4933d07531711e399d8d578036aa9fc1be2f9b20 Author: Geert Uytterhoeven Date: Mon May 5 21:16:13 2008 +0200 m68k: drivers/input/serio/hp_sdc.c needs drivers/input/serio/hp_sdc.c: In function 'hp_sdc_take': drivers/input/serio/hp_sdc.c:198: error: implicit declaration of function 'up' Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 63a59fa7a74fccff64dbf7d9230bd9d91bddead4 Author: Geert Uytterhoeven Date: Mon May 5 21:15:48 2008 +0200 m68k: serial167 missing return value in cy_put_char() commit a5b08c66194fba02a865b397579b7204688bcb1e Author: Alan Cox Date: Wed Apr 30 00:54:05 2008 -0700 serial167: switch to int put_char method missed one case when adding return values. Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit ab1a852128d6f0677999eecbf6d04bf9f6fe9a9a Author: Geert Uytterhoeven Date: Mon May 5 21:15:19 2008 +0200 m68k: Fix falconide `data_adr' typo commit 9567b349f7e7dd7e2483db99ee8e4a6fe0caca38 Author: Bartlomiej Zolnierkiewicz Date: Mon Apr 28 23:44:36 2008 +0200 ide: merge ->atapi_*put_bytes and ->ata_*put_data methods introduced a typo (`data_adr' instead of `data_addr'), leading to a compile failure. Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds commit 8376005ea471762e7a5957d5b9e788121c0ba726 Author: David S. Miller Date: Mon May 5 12:32:39 2008 -0700 sparc64: use compat_sys_utimes instead of home-grown local copy. Noticed by Christoph Hellwig. Signed-off-by: David S. Miller commit 5717922a1b8cc477f45a0f4f11fe619392ba7133 Merge: 50f7ad2... e024cbd... Author: Linus Torvalds Date: Mon May 5 10:17:30 2008 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb: kgdb: kconfig fix xconfig/menuconfig element kgdb: fix signedness mixmatches, add statics, add declaration to header kgdb: 1000 loops for the single step test in kgdbts kgdb: trivial sparse fixes in kgdb test-suite kgdb: minor documentation fixes commit 50f7ad2500b27ce5c42be3a6936f143b158f7bc3 Merge: 82af7ac... 2c36eec... Author: Linus Torvalds Date: Mon May 5 10:16:42 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: [ALSA] soc - fix S3C2410 i2s programming error [ALSA] soc - fix s3c2410 PCM breakage [ALSA] ac97 - Add a workaround for broken quirk for VT1617A codec [ALSA] Revert migration to alc_set_pin_output() in alc861_auto_set_output_and_unmute() [ALSA] fm801 - Fix kconfig dependency mess of fm801-tea575x [ALSA] hda - Support IDT 92HD206 codec [ALSA] pcsp: Fix build with CONFIG_PM=n commit 0df18ff366853cdf31e5238764ec5c63e6b5a398 Author: Yinghai Lu Date: Mon Apr 14 15:40:37 2008 -0700 x86 PCI: call dmi_check_pciprobe() 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 with pci_scan_bus_parented... but in pcibios_scan_root we have a DMI check: dmi_check_system(pciprobe_dmi_table); when when have several peer root buses this could be called multiple times (which is bad), so move that call to pci_access_init(). Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner Signed-off-by: Jesse Barnes commit 13a6ddb08e58a1bd344da7898c4e2f13bdf18c2f Author: Yinghai Lu Date: Thu Mar 27 01:31:18 2008 -0700 x86/pci: add pci=skip_isa_align command lines. so we don't align the io port start address for pci cards. also move out dmi check out acpi.c, because it has nothing to do with acpi. it could spare some calling when we have several peer root buses. Signed-off-by: Yinghai Lu Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner Signed-off-by: Jesse Barnes commit 82af7aca56c67061420d618cc5a30f0fd4106b80 Author: Eric Sesterhenn Date: Fri Jan 25 10:40:46 2008 +0100 Removal of FUTEX_FD Since FUTEX_FD was scheduled for removal in June 2007 lets remove it. Google Code search found no users for it and NGPT was abandoned in 2003 according to IBM. futex.h is left untouched to make sure the id does not get reassigned. Since queue_me() has no users left it is commented out to avoid a warning, i didnt remove it completely since it is part of the internal api (matching unqueue_me()) Signed-off-by: Eric Sesterhenn Signed-off-by: Rusty Russell (removed rest) Acked-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit e024cbd257efc2788b7d21b9353e966267485c87 Author: Jan Engelhardt Date: Fri Apr 25 18:35:29 2008 +0200 kgdb: kconfig fix xconfig/menuconfig element Kconfig.kgdb: fix menuconfig element Signed-off-by: Jan Engelhardt Signed-off-by: Jason Wessel commit 688b744d8bc84dc5cc646e97509113dc5e8818ed Author: Harvey Harrison Date: Thu Apr 24 16:57:23 2008 -0500 kgdb: fix signedness mixmatches, add statics, add declaration to header Noticed by sparse: arch/x86/kernel/kgdb.c:556:15: warning: symbol 'kgdb_arch_pc' was not declared. Should it be static? kernel/kgdb.c:149:8: warning: symbol 'kgdb_do_roundup' was not declared. Should it be static? kernel/kgdb.c:193:22: warning: symbol 'kgdb_arch_pc' was not declared. Should it be static? kernel/kgdb.c:712:5: warning: symbol 'remove_all_break' was not declared. Should it be static? Related to kgdb_hex2long: arch/x86/kernel/kgdb.c:371:28: warning: incorrect type in argument 2 (different signedness) arch/x86/kernel/kgdb.c:371:28: expected long *long_val arch/x86/kernel/kgdb.c:371:28: got unsigned long * kernel/kgdb.c:469:27: warning: incorrect type in argument 2 (different signedness) kernel/kgdb.c:469:27: expected long *long_val kernel/kgdb.c:469:27: got unsigned long * kernel/kgdb.c:470:27: warning: incorrect type in argument 2 (different signedness) kernel/kgdb.c:470:27: expected long *long_val kernel/kgdb.c:470:27: got unsigned long * kernel/kgdb.c:894:27: warning: incorrect type in argument 2 (different signedness) kernel/kgdb.c:894:27: expected long *long_val kernel/kgdb.c:894:27: got unsigned long * kernel/kgdb.c:895:27: warning: incorrect type in argument 2 (different signedness) kernel/kgdb.c:895:27: expected long *long_val kernel/kgdb.c:895:27: got unsigned long * kernel/kgdb.c:1127:28: warning: incorrect type in argument 2 (different signedness) kernel/kgdb.c:1127:28: expected long *long_val kernel/kgdb.c:1127:28: got unsigned long * kernel/kgdb.c:1132:25: warning: incorrect type in argument 2 (different signedness) kernel/kgdb.c:1132:25: expected long *long_val kernel/kgdb.c:1132:25: got unsigned long * Signed-off-by: Harvey Harrison Signed-off-by: Jason Wessel commit 7cfcd985d36031459cc64e3843ea36a4d801097d Author: Jason Wessel Date: Thu Apr 24 16:57:23 2008 -0500 kgdb: 1000 loops for the single step test in kgdbts The single step test is not terribly costly and it should be able to pass at 1000 loops successfully in under 1 second. A non-kgdb timing regression was found using this test, but it did not occur frequently because by default the test was only executed a single time. This patch changes the default for the single step test to 1000 iterations and allows for individual configuration of the single step test to further exercise the kgdb subsystem when needed. Signed-off-by: Jason Wessel commit 001fddf5fdcfe2c08ac9c4e5ca80c5e5698363bb Author: Harvey Harrison Date: Thu Apr 24 16:57:23 2008 -0500 kgdb: trivial sparse fixes in kgdb test-suite Shadowed variable and integer as NULL pointer fixes: drivers/misc/kgdbts.c:877:6: warning: symbol 'sys_open_test' shadows an earlier one drivers/misc/kgdbts.c:537:27: originally declared here drivers/misc/kgdbts.c:378:22: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:386:22: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:468:30: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:472:15: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:502:30: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:506:30: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:509:30: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:523:20: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:527:20: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:530:15: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:541:21: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:545:21: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:548:15: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:559:30: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:563:15: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:573:16: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:574:19: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:578:15: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:588:16: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:589:19: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:593:15: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:602:16: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:604:15: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:925:3: warning: Using plain integer as NULL pointer drivers/misc/kgdbts.c:938:3: warning: Using plain integer as NULL pointer Signed-off-by: Harvey Harrison Signed-off-by: Jason Wessel commit f92509371ec06227a7e29778f395776d31b0deab Author: grzegorz.chwesewicz@chilan.com Date: Thu Apr 24 16:57:22 2008 -0500 kgdb: minor documentation fixes Two minor fixes to the kgdb documentation. Signed-off-by: Grzegorz Chwesewicz, Chilan Signed-off-by: Jason Wessel commit 2c36eecfb6471c457994647771d1405502ad5fde Author: Davide Rizzo Date: Mon May 5 14:59:39 2008 +0200 [ALSA] soc - fix S3C2410 i2s programming error S3C2410 i2s driver currently manages only i2s protocol (and not left justified one) and slave mode. With this small patch, other modes are possible. Signed-off-by: Davide Rizzo Acked-by: Liam Girdwood Signed-off-by: Takashi Iwai commit d6426171bab3403cdcd5613d5549f20b0ab0967c Author: Davide Rizzo Date: Mon May 5 14:56:07 2008 +0200 [ALSA] soc - fix s3c2410 PCM breakage S3C2410 pcm doesn't work. s3c2410_dma_request() now returns the channel number and not 0 if OK. Signed-off-by: Davide Rizzo Acked-by: Liam Girdwood Signed-off-by: Takashi Iwai commit 2e75d050e42d1c61e820f9a35078a2f69e02cc3e Author: Takashi Iwai Date: Sat May 3 18:46:56 2008 +0200 [ALSA] ac97 - Add a workaround for broken quirk for VT1617A codec On boards with VT1617A codec, the sound disappears suddenly. This looks like a problem with HPE-bit control that is supposed to be set in patch_vt1617a(). However, on such problematic hardwares, the bit is actually reset mysteriously. The patch adds a workaround for the wrong quirk. Signed-off-by: Takashi Iwai commit 564c5bead424fa798dfbd5fe382b4e0b7ea483fb Author: Jacek Luczak Date: Sat May 3 18:41:23 2008 +0200 [ALSA] Revert migration to alc_set_pin_output() in alc861_auto_set_output_and_unmute() Change done by: commit f6c7e5461e9046445d50c5c7a9a4587824239623 [ALSA] hda-codec - Fix auto-configuration of Realtek codecs broke sound on ALC861 Analog. Signed-off-by: Jacek Luczak Signed-off-by: Takashi Iwai commit 20686c24377246d9eb57782551b25ff19df09873 Author: Takashi Iwai Date: Fri May 2 12:31:51 2008 +0200 [ALSA] fm801 - Fix kconfig dependency mess of fm801-tea575x FM801-tea575x tuner has a reverse selection to V4L1 and this causes nasty dependency problems. The patch simplifies the dependency with a normal "depends on VIDEO_V4L1". This decreases the usability but fixes bugs, yeah. If any better feature like "requires" is introduced to kbuild in future, we'll be able to switch it... Signed-off-by: Takashi Iwai commit 7bd3c0f73c9c5b47fd1ca49757c436e73f4cd55b Author: Takashi Iwai Date: Fri May 2 12:28:02 2008 +0200 [ALSA] hda - Support IDT 92HD206 codec Added the support for IDT 92HD206 codec chip. It's compatible with STAC927x. Signed-off-by: Takashi Iwai commit 983e0972cea450fe5725d1ba11c78adfd5d7ad3a Author: Johann Felix Soden Date: Fri May 2 09:54:31 2008 +0200 [ALSA] pcsp: Fix build with CONFIG_PM=n sound/drivers/pcsp/pcsp.c: In function 'pcsp_suspend': sound/drivers/pcsp/pcsp.c:201: error: implicit declaration of function 'snd_pcm_suspend_all' Signed-off-by: Johann Felix Soden CC: Stas Sergeev Signed-off-by: Takashi Iwai commit 7a1aa309f21ea2f6c31f364341e4027ecf4e79bc Author: Ingo Molnar Date: Mon May 5 01:06:54 2008 -0700 irda: fix !PNP support for drivers/net/irda/smsc-ircc2.c x86.git testing found this build bug on v2.6.26-rc1: ERROR: "pnp_get_resource" [drivers/net/irda/smsc-ircc2.ko] undefined! make[1]: *** [__modpost] Error 1 make: *** [modules] Error 2 the driver did not anticipate the case of !CONFIG_PNP which is rare but still possible. Instead of restricting the driver to PNP-only in the Kconfig space, add the (trivial) dummy struct pnp_driver - this is that other drivers use in the !PNP case too. The driver itself can in theory be initialized on !PNP too in certain cases, via smsc_ircc_legacy_probe(). Patch only minimally build tested, i dont have this hardware. Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit c17f888f8fc2e47e2b4a51424f8ccf564ae87576 Author: Ingo Molnar Date: Mon May 5 01:04:06 2008 -0700 irda: fix !PNP support in drivers/net/irda/nsc-ircc.c x86.git testing found the following build failure in latest -git: drivers/built-in.o: In function `nsc_ircc_pnp_probe': nsc-ircc.c:(.text+0xdf1b6): undefined reference to `pnp_get_resource' nsc-ircc.c:(.text+0xdf1d4): undefined reference to `pnp_get_resource' nsc-ircc.c:(.text+0xdf1ee): undefined reference to `pnp_get_resource' nsc-ircc.c:(.text+0xdf237): undefined reference to `pnp_get_resource' nsc-ircc.c:(.text+0xdf24c): undefined reference to `pnp_get_resource' drivers/built-in.o:nsc-ircc.c:(.text+0xdf266): more undefined references to `pnp_get_resource' follow make: *** [.tmp_vmlinux1] Error 1 triggered via this config: http://redhat.com/~mingo/misc/config-Sat_May__3_20_53_13_CEST_2008.bad while generally most users will have PNP enabled, drivers can support non-PNP build mode too - and most drivers implement it. That is typically done by providing a dummy pnp_driver structure that will not probe anything. The fallback routines in the driver will handle this dumber mode of operation too. This patch implements that. I have not tested whether this actually works on real hardware so take care. It does resolve the build bug. [ Another solution that is used by a few drivers is to exclude the driver in the Kconfig if PNP is disabled, via "depends on PNP", but this would limit the availability of the driver needlessly. ] Signed-off-by: Ingo Molnar Signed-off-by: David S. Miller commit 0a6db7dc49b91875ff015934df3e85b8785f2294 Author: David S. Miller Date: Mon May 5 00:33:58 2008 -0700 sbus: Fix bpp driver build. Using the variable name 'dev_name' in the top-level namespace is a bad idea. This conflicts with linux/device.h's inline function of the same name. Signed-off-by: David S. Miller commit fa1b1cff3d06550d23ef540c4f97ca83c021b473 Author: Jamal Hadi Salim Date: Mon May 5 00:22:35 2008 -0700 net_cls_act: Make act_simple use of netlink policy. Convert to netlink helpers by using netlink policy validation. As a side effect fixes a leak. Signed-off-by: Jamal Hadi Salim Signed-off-by: David S. Miller commit 9185ef6787f1c8f1c06aa0cb3c7746fb4f101f50 Author: Denis V. Lunev Date: Sat May 3 06:34:05 2008 +1000 [POWERPC] Assign PDE->data before gluing PDE into /proc tree Simply replace proc_create and further data assigned with proc_create_data. No need to check for data!=NULL after that. Signed-off-by: Denis V. Lunev Cc: Alexey Dobriyan Cc: Eric W. Biederman Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Paul Mackerras commit b41e5fffe8b81fc939067d8c1c195cc79115d5a3 Author: Emil Medve Date: Sat May 3 06:34:04 2008 +1000 [POWERPC] devres: Add devm_ioremap_prot() We provide an ioremap_flags, so this provides a corresponding devm_ioremap_prot. The slight name difference is at Ben Herrenschmidt's request as he plans on changing ioremap_flags to ioremap_prot in the future. Signed-off-by: Emil Medve Signed-off-by: Kumar Gala Acked-by: Tejun Heo Cc: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Paul Mackerras commit af3ce514ade2fd0e18c5d078d138a6c1137a33df Author: Daniel Walker Date: Sat May 3 06:34:03 2008 +1000 [POWERPC] macintosh: ADB driver: adb_handler_sem semaphore to mutex Signed-off-by: Daniel Walker Signed-off-by: Andrew Morton Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 56783c5e4dd32ca370ad0bdf3a9c6c1aaee94726 Author: Daniel Walker Date: Sat May 3 06:34:02 2008 +1000 [POWERPC] macintosh: windfarm_smu_sat: semaphore to mutex Signed-off-by: Daniel Walker Signed-off-by: Andrew Morton Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 0885cb5653ff82c8d322df1b8a95843dc5f5486b Author: Daniel Walker Date: Sat May 3 06:34:01 2008 +1000 [POWERPC] macintosh: therm_pm72: driver_lock semaphore to mutex Signed-off-by: Daniel Walker Signed-off-by: Andrew Morton Acked-by: Benjamin Herrenschmidt Signed-off-by: Paul Mackerras commit 5ffc02a158997b1eb91ade8d02bcf521ff79a218 Author: Satoru SATOH Date: Sun May 4 22:14:42 2008 -0700 ip: Use inline function dst_metric() instead of direct access to dst->metric[] There are functions to refer to the value of dst->metric[THE_METRIC-1] directly without use of a inline function "dst_metric" defined in net/dst.h. The following patch changes them to use the inline function consistently. Signed-off-by: Satoru SATOH Signed-off-by: David S. Miller commit 0bbeafd0118fc3ae54990064760c889d41dc21d6 Author: Satoru SATOH Date: Sun May 4 22:12:43 2008 -0700 ip: Make use of the inline function dst_metric_locked() Signed-off-by: Satoru SATOH Signed-off-by: David S. Miller commit 1e0ba0060ffcee2e766ec3159196235b1a2a0ff3 Author: Pavel Emelyanov Date: Sun May 4 18:00:36 2008 -0700 atm: Bad locking on br2684_devs modifications. The list_del happens under read-locked devs_lock. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 65e4113684e50cee75357ce10dc9026b0929e4e9 Author: Pavel Emelyanov Date: Sun May 4 18:00:05 2008 -0700 atm: Do not free already unregistered net device. Both br2684_push and br2684_exit do so, but unregister_netdev() releases the device itself. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 339a7c41c913035bf58579f6e47b4ba29da83795 Author: Pavel Emelyanov Date: Sun May 4 17:59:30 2008 -0700 mac80211: Do not free net device after it is unregistered. The error path in ieee80211_register_hw() may call the unregister_netdev() and right after it - the free_netdev(), which is wrong, since the unregister releases the device itself. So the proposed fix is to NULL the local->mdev after unregister is done and check this before calling free_netdev(). I checked - no code uses the local->mdev after unregister in this error path (but even if some did this would be a BUG). Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit e340a90e6e07bba6e6b3fc39dd5fa76f95579d7c Author: Pavel Emelyanov Date: Sun May 4 17:58:07 2008 -0700 bridge: Consolidate error paths in br_add_bridge(). This actually had to be merged with the patch #1, but I decided not to mix two changes in one patch. There are already two calls to free_netdev() in there, so merge them into one. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit c37aa90b0458d87342e0bb083f6bf7d113220d09 Author: Pavel Emelyanov Date: Sun May 4 17:57:29 2008 -0700 bridge: Net device leak in br_add_bridge(). In case the register_netdevice() call fails the device is leaked, since the out: label is just rtnl_unlock()+return. Free the device. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit f74d505b58d36ceeef10e459094f0eb760681165 Merge: 45ea210... 2961b42... Author: Linus Torvalds Date: Sun May 4 17:12:10 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-inttypes * git://git.kernel.org/pub/scm/linux/kernel/git/hpa/linux-2.6-inttypes: fix asm-mips/types.h syntax error fix asm-alpha/types.h breakage commit 45ea2103d8856454503b30464cc1dba378748d00 Merge: 10ea18f... 6217984... Author: Linus Torvalds Date: Sun May 4 17:11:43 2008 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-fixes * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-fixes: x86: fix setup printk format warning x86: olpc build fix x86: video/fbdev.c: add MODULE_LICENSE x86: fix up bootparam.h for userspace inclusion x86: relocs ELF handling - use SELFMAG instead of numeric constant x86: vdso ELF handling - use SELFMAG instead of numeric constant x86: remove dell reboot dmi quirk board name match x86: es7000 build fix x86: make additional_cpus static x86: make start_secondary() static kbuild, suspend, x86: fix rebuild of wakeup.bin uml: fix gcc problem x86: undo visws/numaq build changes commit 10ea18f0deb2372417c8e5be4d2ec79de1f65c4b Merge: eb28062... 2cb1e12... Author: Linus Torvalds Date: Sun May 4 17:11:24 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes: kconfig-language.txt: remove bogus hint kconfig: fix MAC OS X warnings in menuconfig modpost: i2c aliases need no trailing wildcard commit eb28062f131b0a1da32b2554fd819af5221040de Author: Bryan Wu Date: Sun May 4 23:12:55 2008 +0800 task_nommu: fix compile failing bug because of spilt file.h CC fs/proc/task_nommu.o fs/proc/task_nommu.c: In function ‘task_mem’: fs/proc/task_nommu.c:55: error: dereferencing pointer to incomplete type make[2]: *** [fs/proc/task_nommu.o] Error 1 make[1]: *** [fs/proc] Error 2 make: *** [fs] Error 2 Signed-off-by: Bryan Wu Signed-off-by: Linus Torvalds commit d0dcd41d7b463de955b7ae7a55f76ff4216ed665 Merge: 8dcf578... 1024c5f... Author: Linus Torvalds Date: Sun May 4 17:08:21 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: IDE_HFLAG_SERIALIZE_DMA bugfix commit 8dcf5782848600ecfd0df3a45c521b5ad0fcb42e Merge: e73b65f... b8ba5f1... Author: Linus Torvalds Date: Sun May 4 17:07:28 2008 -0700 Merge branch 'kvm-updates-2.6.26' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm * 'kvm-updates-2.6.26' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm: x86: KVM geust: make setup_secondary_clock definition dependent on local apic KVM: MMU: Allow more than PAGES_PER_HPAGE write protections per large page KVM: avoid fx_init() schedule in atomic KVM: Avoid spurious execeptions after setting registers KVM: PIT: support mode 4 KVM: x86 emulator: disable writeback on lmsw KVM: ppc: deliver INTERRUPT_FP_UNAVAIL to the guest KVM: ppc: Handle guest idle by emulating MSR[WE] writes KVM: x86: task switch: fix wrong bit setting for the busy flag KVM: VMX: Enable EPT feature for KVM KVM: VMX: Prepare an identity page table for EPT in real mode KVM: Export necessary function for EPT KVM: MMU: Remove #ifdef CONFIG_X86_64 to support 4 level EPT KVM: MMU: Add EPT support KVM: Add kvm_x86_ops get_tdp_level() KVM: MMU: Move some definitions to a header file KVM: VMX: EPT Feature Detection commit e73b65f1db7e3baa3db43951476b7d2d2381ba35 Author: Ingo Molnar Date: Sun May 4 09:29:43 2008 +0200 sysfs: build fix x86.git testing found the following build failure on v2.6.26-rc1: In file included from include/linux/kobject.h:22, from include/linux/module.h:17, from include/linux/crypto.h:22, from arch/x86/kernel/asm-offsets_32.c:8, from arch/x86/kernel/asm-offsets.c:3: include/linux/sysfs.h:201: error: redefinition of 'sysfs_update_group' include/linux/sysfs.h:195: error: previous definition of 'sysfs_update_group' was here make[1]: *** [arch/x86/kernel/asm-offsets.s] Error 1 make: *** [prepare0] Error 2 with the following config: http://redhat.com/~mingo/misc/config-Sun_May__4_07_09_30_CEST_2008.bad the reason for the build failure is the duplicate definition of the sysfs_update_group() inline function in include/linux/sysfs.h. The duplication was a merge error: it was added via -mm by commit v2.6.25-7262-g2850699, "sysfs: sysfs_update_group stub for CONFIG_SYSFS=n" a day before v2.6.26-rc1, but a day before that the same commit was already merged upstream via the sysfs tree, with commit v2.6.25-7211-g1cbfb7a. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 826e4506a0acb6487910a5ebafe839f708a00e1c Author: Linus Torvalds Date: Sun May 4 17:04:16 2008 -0700 Make forced module loading optional The kernel module loader used to be much too happy to allow loading of modules for the wrong kernel version by default. For example, if you had MODVERSIONS enabled, but tried to load a module with no version info, it would happily load it and taint the kernel - whether it was likely to actually work or not! Generally, such forced module loading should be considered a really really bad idea, so make it conditional on a new config option (MODULE_FORCE_LOAD), and make it default to off. If somebody really wants to force module loads, that's their problem, but we should not encourage it. Especially as it happened to me by mistake (ie regular unversioned Fedora modules getting loaded) causing lots of strange behavior. Signed-off-by: Linus Torvalds commit 2961b423037da60a8cb230963ee0d8c04473d73b Author: Adrian Bunk Date: Sat May 3 22:26:17 2008 +0300 fix asm-mips/types.h syntax error This patch fixes the following compile error caused by commit 23cf11ddb5099f8c7f7cb3eb154bff0faf31cae9 (mips: types: use for the mips architecture): <-- snip --> ... CC kernel/bounds.s In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/types.h:12, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/page-flags.h:8, from /home/bunk/linux/kernel-2.6/git/linux-2.6/kernel/bounds.c:9: include2/asm/types.h:56:2: error: #endif without #if make[2]: *** [kernel/bounds.s] Error 1 <-- snip --> Signed-off-by: Adrian Bunk Cc: Ralf Baechle Signed-off-by: H. Peter Anvin commit 36bbfe2f097d5e09e8e9c83f55264bd538a0ebe1 Author: Adrian Bunk Date: Sat May 3 23:51:03 2008 +0300 fix asm-alpha/types.h breakage This patch fixes the following compile error on alpha caused by commit 3726c23df8e4d95b6f2b335dfa90e3f4850a8a00 (alpha: types: use for the alpha architecture): <-- snip --> ... CC arch/alpha/kernel/asm-offsets.s In file included from include2/asm/topology.h:6, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/topology.h:34, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/mmzone.h:683, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/gfp.h:4, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/slab.h:12, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/percpu.h:5, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/rcupdate.h:39, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/pid.h:4, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/sched.h:74, from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/alpha/kernel/asm-offsets.c:9: include2/asm/machvec.h:44: error: expected declaration specifiers or '...' before 'dma_addr_t' include2/asm/machvec.h:44: error: expected declaration specifiers or '...' before 'dma_addr_t' In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/alpha/kernel/asm-offsets.c:12: include2/asm/io.h:94: warning: type defaults to 'int' in declaration of 'dma_addr_t' include2/asm/io.h:94: warning: variable 'dma_addr_t' declared 'inline' include2/asm/io.h:94: error: expected ',' or ';' before 'isa_page_to_bus' make[2]: *** [arch/alpha/kernel/asm-offsets.s] Error 1 <-- snip --> Cc: Richard Henderson Cc: Ivan Kokshaysky Signed-off-by: H. Peter Anvin commit 2cb1e1257fb4d4d52c97e763ab262c2295aea4a8 Author: Adrian Bunk Date: Sun May 4 02:15:35 2008 +0300 kconfig-language.txt: remove bogus hint For the use case the hint describe a simple dependency is enough. Signed-off-by: Adrian Bunk Acked-by: Randy Dunlap commit c4143a83031aef7ba87a62cf654d6d8fb4d8e76e Author: Sam Ravnborg Date: Sun May 4 21:03:20 2008 +0200 kconfig: fix MAC OS X warnings in menuconfig Signed-off-by: Sam Ravnborg Acked-by: Timur Tabi commit 62179849b40aded9e727cca5006627a1c4d6446e Author: Randy Dunlap Date: Fri May 2 13:32:35 2008 -0700 x86: fix setup printk format warning Fix x86 setup printk format warming: next-20080430/arch/x86/kernel/setup.c:172: warning: format '%lu' expects type 'long unsigned int', but argument 2 has type 'ssize_t' Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Cc: mingo@elte.hu Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit e26a28d190304d910ee49b81cbfe6d9241f56e86 Author: Thomas Gleixner Date: Sat May 3 23:49:59 2008 +0200 x86: olpc build fix CONFIG_OLPC needs to depend on MGEODE_LX Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 7b04fa014c11e6415da8b5a7999dbd201abad53c Author: Adrian Bunk Date: Fri May 2 13:32:32 2008 -0700 x86: video/fbdev.c: add MODULE_LICENSE Add the missing MODULE_LICENSE("GPL"). Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit afaafe50ee15c59010f19273ebfb6c44f0962d7c Author: Rusty Russell Date: Fri May 2 21:14:20 2008 +1000 x86: fix up bootparam.h for userspace inclusion commit 8b664aa66e824a0ddf4ec56d41fa0cf7bb374de6 (x86, boot: add linked list of struct setup_data) put a new struct in bootparam.h, but didn't use the userspace-safe types. Signed-off-by: Rusty Russell Cc: Huang Ying Acked-by: H. Peter Anvin Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 8bd1796dedd50abd7553afbe6113bd97cc88390f Author: Cyrill Gorcunov Date: Sat May 3 14:18:03 2008 +0400 x86: relocs ELF handling - use SELFMAG instead of numeric constant Signed-off-by: Cyrill Gorcunov Cc: akpm@linux-foundation.org Cc: hpa@zytor.com Cc: mingo@elte.hu Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit ecb783eae1372d69a53d406e1bdba8284e4bafcc Author: Cyrill Gorcunov Date: Sat May 3 14:18:01 2008 +0400 x86: vdso ELF handling - use SELFMAG instead of numeric constant Signed-off-by: Cyrill Gorcunov Cc: akpm@linux-foundation.org Cc: hpa@zytor.com Cc: mingo@elte.hu Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 163ea310b68bdde89b1ac633fbf8c0db290d3f86 Author: Ben Date: Sat May 3 22:39:42 2008 +0200 x86: remove dell reboot dmi quirk board name match http://bugzilla.kernel.org/show_bug.cgi?id=10547 Newer Dell OptiPlex 745s hang before rebooting after 'sudo reboot'. A patch for some versions of the OptiPlex was proposed here -- http://lkml.org/lkml/2007/6/5/59 -- and is included in 2.6.23 and later kernels, according to http://lxr.linux.no/linux+v2.6.23/arch/i386/kernel/reboot.c . However, the DMI_BOARD_NAME ("0WF810") is too restrictive. Newer OptiPlex machines have a DMI_BOARD_NAME of "0RF703". I therefore suggest adding another clause to reboot.c, similar to the one in the original patch, but matching a DMI_BOARD_NAME of "0RF703". On further inspection, it seems that there are other DMI_BOARD_NAMEs for this same machine. They seem to change from time to time, which means that the current code is fragile. Moreover, using bios reboot should not break non-SFF OptiPlex 745s, and so a reasonable fix is to simply drop the match on DMI_BOARD_NAME. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit e37ee42caadab46cec277546099fa2a6207fff0b Author: Ingo Molnar Date: Sat May 3 22:01:31 2008 +0200 x86: es7000 build fix Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit c5562faeaacf19e81a78ee37cc6b96ab1f3e68e4 Author: Adrian Bunk Date: Tue Apr 22 00:31:37 2008 +0300 x86: make additional_cpus static This patch makes the needlessly global additional_cpus static. Signed-off-by: Adrian Bunk Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit dbe55f4797712f86691a0ee0b5f508693c7310fe Author: Adrian Bunk Date: Tue Apr 22 01:50:26 2008 +0300 x86: make start_secondary() static start_secondary() needlessly became global. Signed-off-by: Adrian Bunk Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 4c6214c75a5aca5417156a47cd890b128c5f0637 Author: Sam Ravnborg Date: Thu May 1 11:31:07 2008 +0200 kbuild, suspend, x86: fix rebuild of wakeup.bin In kernel/acpi/realmode/Makefile use the 'always' variable to say that wakeup.bin should always be made. In acpi/Makefile we then do not need to specify the requested target and we avoid the message from make: `arch/x86/kernel/acpi/realmode/wakeup.bin' is up to date. Add wakeup.lds to list af targets to avoid rebuilding wakeup.bin - from Roland McGrath. Signed-off-by: Sam Ravnborg Cc: Rafael J. Wysocki Cc: Pavel Machek Cc: H. Peter Anvin Cc: Roland McGrath Signed-off-by: Ingo Molnar commit 22eecde2f9034764a3fd095eecfa3adfb8ec9a98 Author: Ingo Molnar Date: Thu May 1 12:06:54 2008 +0200 uml: fix gcc problem this is what caused gcc 4.3 to throw an internal error when OPTIMIZE_INLINING was enabled ... Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 48b83d2425d7781bb625b1c37b5f2a8963b6e23b Author: Thomas Gleixner Date: Fri May 2 21:24:30 2008 +0200 x86: undo visws/numaq build changes arch/x86/pci/Makefile_32 has a nasty detail. VISWS and NUMAQ build override the generic pci-y rules. This needs a proper cleanup, but that needs more thoughts. Undo commit 895d30935ebe05f192e844792668bf8d19deaae7 x86: numaq fix do not override the existing pci-y rule when adding visws or numaq rules. There is also a stupid init function ordering problem vs. acpi.o Add comments to the Makefile to avoid tripping over this again. Remove the srat stub code in discontig_32.c to allow a proper NUMAQ build. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 1024c5f4be4fc5b00337464fb8a442bebf15df68 Author: Bartlomiej Zolnierkiewicz Date: Sun May 4 17:03:41 2008 +0200 ide: IDE_HFLAG_SERIALIZE_DMA bugfix Patch re-ordering could be harmful: commit 1fd1890594bd355a4217f5658a34763e77decee3 Author: Bartlomiej Zolnierkiewicz Date: Sat Apr 26 22:25:24 2008 +0200 ide: add IDE_HFLAG_SERIALIZE_DMA host flag ... is buggy because ->init_dma method / ide_hwif_setup_dma() is called before IDE_HFLAG_SERIALIZE_DMA host flag is checked. Fix it by checking IDE_HFLAG_SERIALIZE[_DMA] after DMA initialization. Signed-off-by: Bartlomiej Zolnierkiewicz commit b8ba5f10c5956d2b297766fda8f4f5ab8ad1e2cc Author: Glauber Costa Date: Wed Apr 30 12:39:05 2008 -0300 x86: KVM geust: make setup_secondary_clock definition dependent on local apic Since the pv_apic_ops are only present if CONFIG_X86_LOCAL_APIC is compiled in, kvmclock failed to build without this option. This patch fixes this. Signed-off-by: Glauber Costa Signed-off-by: Avi Kivity commit 93df766322ba1db2801e4b826985a4932dd75866 Author: Avi Kivity Date: Fri May 2 13:23:10 2008 +0300 KVM: MMU: Allow more than PAGES_PER_HPAGE write protections per large page nonpae guests can call rmap_write_protect twice per page (for page tables) or four times per page (for page directories), triggering a bogus warning. Remove the warning. Signed-off-by: Avi Kivity commit bc1a34f1bf354fabc03e3f465620c80e510d0e8f Author: Andrea Arcangeli Date: Thu May 1 18:43:33 2008 +0200 KVM: avoid fx_init() schedule in atomic This make sure not to schedule in atomic during fx_init. I also changed the name of fpu_init to fx_finit to avoid duplicating the name with fpu_init that is already used in the kernel, this makes grep simpler if nothing else. Signed-off-by: Andrea Arcangeli Signed-off-by: Avi Kivity commit b4f14abd95cd8d42f08438f1c4ec3eafe41054ee Author: Jan Kiszka Date: Wed Apr 30 17:59:04 2008 +0200 KVM: Avoid spurious execeptions after setting registers Clear pending exceptions when setting new register values. This avoids spurious exceptions after restoring a vcpu state or after reset-on-triple-fault. Signed-off-by: Jan Kiszka Signed-off-by: Avi Kivity commit ece15babfa514e06118f62f4df2c757d6209f4f0 Author: Marcelo Tosatti Date: Wed Apr 30 13:23:54 2008 -0300 KVM: PIT: support mode 4 The in-kernel PIT emulation ignores pending timers if operating under mode 4, which for example DragonFlyBSD uses (and Plan9 too, apparently). Mode 4 seems to be similar to one-shot mode, other than the fact that it starts counting after the next CLK pulse once programmed, while mode 1 starts counting immediately, so add a FIXME to enhance precision. Fixes sourceforge bug 1952988. Signed-off-by: Marcelo Tosatti Acked-by: Sheng Yang Signed-off-by: Avi Kivity commit dc7457ea52f88539dc72925360e6068d5c938a0f Author: Avi Kivity Date: Wed Apr 30 16:13:36 2008 +0300 KVM: x86 emulator: disable writeback on lmsw The recent changes allowing memory operands with lmsw and smsw left lmsw with writeback enabled. Since lmsw has no oridinary destination operand, the dst pointer was not initialized, resulting in an oops. Close the hole by disabling writeback for lmsw. Signed-off-by: Avi Kivity commit de368dceb33c3c068dbde1407aff75cd8e126f04 Author: Christian Ehrhardt Date: Tue Apr 29 18:18:23 2008 +0200 KVM: ppc: deliver INTERRUPT_FP_UNAVAIL to the guest This patch adds the delivery of INTERRUPT_FP_UNAVAIL exceptions to the guest. It's needed if a guest uses ppc binaries using the Floating point instructions. Signed-off-by: Christian Ehrhardt Acked-by: Hollis Blanchard Signed-off-by: Avi Kivity commit 45c5eb67da5a668abe79c23a7e64dbc87a600f90 Author: Hollis Blanchard Date: Fri Apr 25 17:55:49 2008 -0500 KVM: ppc: Handle guest idle by emulating MSR[WE] writes This reduces host CPU usage when the guest is idle. However, the guest must set MSR[WE] in its idle loop, which Linux did not do until 2.6.26. Signed-off-by: Hollis Blanchard Signed-off-by: Jerone Young Signed-off-by: Avi Kivity commit 3fe913e7c550a869e250d04c34410f7a6e263f7c Author: Izik Eidus Date: Mon Apr 28 18:23:52 2008 +0300 KVM: x86: task switch: fix wrong bit setting for the busy flag The busy bit is bit 1 of the type field, not bit 8. Signed-off-by: Izik Eidus Signed-off-by: Avi Kivity commit 1439442c7b257b47a83aea4daed8fbf4a32cdff9 Author: Sheng Yang Date: Mon Apr 28 12:24:45 2008 +0800 KVM: VMX: Enable EPT feature for KVM Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit b7ebfb0509692cd923e31650f81ed4d79c9a3e59 Author: Sheng Yang Date: Fri Apr 25 21:44:52 2008 +0800 KVM: VMX: Prepare an identity page table for EPT in real mode [aliguory: plug leak] Signed-off-by: Sheng Yang Signed-off-by: Anthony Liguori Signed-off-by: Avi Kivity commit 0d15029895051904e31925ec63525cc3a637f7de Author: Sheng Yang Date: Fri Apr 25 21:44:50 2008 +0800 KVM: Export necessary function for EPT Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit 1ac593c97eb229da44819f66fea47975537c1177 Author: Sheng Yang Date: Fri Apr 25 21:44:42 2008 +0800 KVM: MMU: Remove #ifdef CONFIG_X86_64 to support 4 level EPT Currently EPT level is 4 for both pae and x86_64. The patch remove the #ifdef for alloc root_hpa and free root_hpa to support EPT. Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit 7b52345e2c4c7333bf7eba8034ffc4683fa63c91 Author: Sheng Yang Date: Fri Apr 25 21:13:50 2008 +0800 KVM: MMU: Add EPT support Enable kvm_set_spte() to generate EPT entries. Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit 67253af52e9133fb4cfbf7a2448a2d3524d1fa6c Author: Sheng Yang Date: Fri Apr 25 10:20:22 2008 +0800 KVM: Add kvm_x86_ops get_tdp_level() The function get_tdp_level() provided the number of tdp level for EPT and NPT rather than the NPT specific macro. Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit 8c6d6adc6b87daa364ee9deb2e966021d37a7622 Author: Sheng Yang Date: Fri Apr 25 10:17:08 2008 +0800 KVM: MMU: Move some definitions to a header file Move some definitions to mmu.h in order to allow building common table entries between EPT and non-EPT. Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit d56f546db97795dca5aa575b00b0e9886895ac87 Author: Sheng Yang Date: Fri Apr 25 10:13:16 2008 +0800 KVM: VMX: EPT Feature Detection Signed-off-by: Sheng Yang Signed-off-by: Avi Kivity commit be0c007ac64f880a946995d6d1fc654acc81484d Author: David S. Miller Date: Sun May 4 01:34:31 2008 -0700 niu: Fix probing regression for maramba on-board chips. Changeset 7f7c4072ea552f97a0898331322f71986a97299c ("niu: Determine the # of ports from the card's VPD data") caused maramba on-board NIU ports to stop probing properly. The old code had a fallback that would use a num_ports value of 4 if all the probing methods failed, but that was removed. This restores the fallback of 4 ports, to get things working again. Bump driver version and release date. Signed-off-by: David S. Miller commit ac551828993eecb8499ef9cc3c828fceb49bcf7a Author: Jean Delvare Date: Fri May 2 20:37:21 2008 +0200 modpost: i2c aliases need no trailing wildcard Not all device types need a wildcard at the end of their module aliases. In particular, for i2c module aliases, the trailing wildcard is not only unneeded, it could also cause the wrong driver to be loaded. As I2C devices have no IDs, i2c module aliases are simple, arbitrary device names. For example: $ /sbin/modinfo lm90 filename: /lib/modules/2.6.25-git18/kernel/drivers/hwmon/lm90.ko author: Jean Delvare description: LM90/ADM1032 driver license: GPL vermagic: 2.6.25-git18 mod_unload depends: hwmon alias: i2c:lm90* alias: i2c:adm1032* alias: i2c:lm99* alias: i2c:lm86* alias: i2c:max6657* alias: i2c:adt7461* alias: i2c:max6680* $ This would cause trouble if one I2C chip name matches the beginning of another I2C chip name and both chips are supported by different drivers. For example, an i2c device named lm9042 would cause the lm90 driver to be loaded, while it doesn't support that device. This case has yet to be seen in practice, but still, I'd like to fix it now. The cleanest fix is to remove the trailing wildcard from i2c module aliases. Here's a patch doing this. Not all device type aliases need a trailing wildcard, in particular the i2c aliases don't. Don't add a wildcard by default in do_table(), instead let each device type handler add it if needed. I have tested types acpi, dmi, eisa, i2c, ide, ieee1394, input, pci, pcmcia, platform, pnp, scsi, serio, ssb and usb. Other types (ccw, of, vio, parisc, sdio and virtio) are untested. Signed-off-by: Jean Delvare Acked-by: Jochen Friedrich Signed-off-by: Sam Ravnborg commit 59f7137a1369c25308672def38f3b126d0c7575a Author: Robert Reif Date: Sat May 3 21:12:00 2008 -0700 sparc video: make blank use proper constant Make blank functions use proper constant for unblanking. Signed-off-by: Robert Reif Signed-off-by: David S. Miller commit e544ff00da4b53069dbca3debbfb02d455f72467 Author: David S. Miller Date: Sat May 3 21:10:58 2008 -0700 lapbeth: Release ->ethdev when unregistering device. Otherwise it leaks forever. Based upon a report by Roland Signed-off-by: David S. Miller commit 41fef0ee7b8f3fe3f3dd2ddc9b170f3d88bce595 Author: Marcin Slusarz Date: Sat May 3 21:03:01 2008 -0700 xfrm: convert empty xfrm_audit_* macros to functions it removes these warnings when CONFIG_AUDITSYSCALL is unset: net/xfrm/xfrm_user.c: In function 'xfrm_add_sa': net/xfrm/xfrm_user.c:412: warning: unused variable 'sid' net/xfrm/xfrm_user.c:411: warning: unused variable 'sessionid' net/xfrm/xfrm_user.c:410: warning: unused variable 'loginuid' net/xfrm/xfrm_user.c: In function 'xfrm_del_sa': net/xfrm/xfrm_user.c:485: warning: unused variable 'sid' net/xfrm/xfrm_user.c:484: warning: unused variable 'sessionid' net/xfrm/xfrm_user.c:483: warning: unused variable 'loginuid' net/xfrm/xfrm_user.c: In function 'xfrm_add_policy': net/xfrm/xfrm_user.c:1132: warning: unused variable 'sid' net/xfrm/xfrm_user.c:1131: warning: unused variable 'sessionid' net/xfrm/xfrm_user.c:1130: warning: unused variable 'loginuid' net/xfrm/xfrm_user.c: In function 'xfrm_get_policy': net/xfrm/xfrm_user.c:1382: warning: unused variable 'sid' net/xfrm/xfrm_user.c:1381: warning: unused variable 'sessionid' net/xfrm/xfrm_user.c:1380: warning: unused variable 'loginuid' net/xfrm/xfrm_user.c: In function 'xfrm_add_pol_expire': net/xfrm/xfrm_user.c:1620: warning: unused variable 'sid' net/xfrm/xfrm_user.c:1619: warning: unused variable 'sessionid' net/xfrm/xfrm_user.c:1618: warning: unused variable 'loginuid' net/xfrm/xfrm_user.c: In function 'xfrm_add_sa_expire': net/xfrm/xfrm_user.c:1658: warning: unused variable 'sid' net/xfrm/xfrm_user.c:1657: warning: unused variable 'sessionid' net/xfrm/xfrm_user.c:1656: warning: unused variable 'loginuid' Signed-off-by: Marcin Slusarz Signed-off-by: David S. Miller commit 81d6ec6b36bdf30e283ab98e7646571484401dbb Author: David S. Miller Date: Sat May 3 21:00:55 2008 -0700 Revert "[SPARC64]: Wrap SMP IPIs with irq_enter()/irq_exit()." This reverts commit 2664ef44cf5053d2b7dff01cecac70bc601a5f68. Ingo moved around where the softlockup dependency sits so this change is no longer necessary. Signed-off-by: David S. Miller commit c8005785102e5b67ecf213f06a3d6c001f6f8cb4 Author: Johannes Berg Date: Sat May 3 20:56:42 2008 -0700 net: Fix useless comment reference loop. include/linux/skbuff.h says: /* These elements must be at the end, see alloc_skb() for details. */ net/core/skbuff.c says: * See comment in sk_buff definition, just before the 'tail' member This patch contains my guess as to the actual reason rather than a dead comment reference loop. Signed-off-by: Johannes Berg Signed-off-by: David S. Miller commit 5b81d689e57a85b1ff60edfb65e5b8a12d28ecee Author: Robert Reif Date: Sat May 3 20:55:27 2008 -0700 sparc: tcx.c remove unnecessary function From: Robert Reif Replaced tcx_init_one with tcx_probe. Fixed some checkpatch problems. Signed-off-by: David S. Miller commit 3ba08b00e0d8413d79be9cab8ec085ceb6ae6fd6 Author: Jarek Poplawski Date: Sat May 3 20:46:29 2008 -0700 sch_htb: remove from event queue in htb_parent_to_leaf() There is lack of removing a class from the event queue while changing from parent to leaf which can cause corruption of this rb tree. This patch fixes a bug introduced by my patch: "sch_htb: turn intermediate classes into leaves" commit: 160d5e10f87b1dc88fd9b84b31b1718e0fd76398. Many thanks to Jan 'yanek' Bortl for finding a way to reproduce this rare bug and narrowing the test case, which made possible proper diagnosing. This patch is recommended for all kernels starting from 2.6.20. Reported-and-tested-by: Jan 'yanek' Bortl Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit afa26be86b65a7183ceac29bdf1f51d6fc6932f0 Merge: 269f213... 4f95f81... Author: Linus Torvalds Date: Sat May 3 13:51:10 2008 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt * git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt: clocksource: allow read access to available/current_clocksource clocksource: Fix permissions for available_clocksource hrtimer: remove duplicate helper function commit 269f21344b23e552c21c9e2d7ca258479dcd7a0a Author: Ulrich Drepper Date: Sat May 3 15:28:45 2008 -0400 tiny mq_open optimization A very small cleanup for mq_open. We do not have to call set_close_on_exit if we create the file descriptor right away with the flag set. We have a function for this now. The resulting code is smaller and a tiny bit faster. Signed-off-by: Ulrich Drepper Signed-off-by: Linus Torvalds commit d35c7b0e54a596c5a8134d75999b7f391a9c6550 Author: Ulrich Drepper Date: Sat May 3 15:10:37 2008 -0400 unified (weak) sys_pipe implementation This replaces the duplicated arch-specific versions of "sys_pipe()" with one unified implementation. This removes almost 250 lines of duplicated code. It's marked __weak, so that *if* an architecture wants to override the default implementation it can do so by simply having its own replacement version, since many architectures use alternate calling conventions for the 'pipe()' system call for legacy reasons (ie traditional UNIX implementations often return the two file descriptors in registers) I still haven't changed the cris version even though Linus says the BKL isn't needed. The arch maintainer can easily do it if there are really no obstacles. Signed-off-by: Ulrich Drepper Signed-off-by: Linus Torvalds commit 4f95f81a48623982879f4fa80c641933444afd18 Author: Heiko Carstens Date: Sat May 3 14:23:14 2008 +0200 clocksource: allow read access to available/current_clocksource There is no harm, when users can read the info and we ask often enough during debugging for this kind of information. Signed-off-by: Heiko Carstens Cc: Andrew Morton Cc: John Stultz Signed-off-by: Thomas Gleixner commit 4359a023a8c3b247b348c310bf510b23f3c1ab64 Author: Heiko Carstens Date: Fri May 2 12:49:40 2008 +0200 clocksource: Fix permissions for available_clocksource File permissions for /sys/devices/system/clocksource/clocksource0/available_clocksource are 600 which allows write access. But this is in fact a read only file. So change permissions to 400. Signed-off-by: Heiko Carstens Cc: John Stultz Cc: Andrew Morton Signed-off-by: Thomas Gleixner commit 4346f65426cbceb64794b468e4af6f5632d58c5e Author: Oliver Hartkopp Date: Wed Apr 30 23:04:37 2008 +0200 hrtimer: remove duplicate helper function The helper function hrtimer_callback_running() is used in kernel/hrtimer.c as well as in the updated net/can/bcm.c which now supports hrtimers. Moving the helper function to hrtimer.h removes the duplicate definition in the C-files. Signed-off-by: Oliver Hartkopp Cc: David Miller Signed-off-by: Thomas Gleixner commit 77a8d5741f3ee2c79554382179cca7b5893d6ae9 Author: Steve Wise Date: Fri May 2 10:57:09 2008 -0700 RDMA/cxgb3: Bump up the MPA connection setup timeout. Testing on large clusters shows its way too short at 10 secs. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit c4d49776e8f5bf2d900d2b6d4855c1670a535ac5 Author: Steve Wise Date: Fri May 2 10:57:09 2008 -0700 RDMA/cxgb3: Silently ignore close reply after abort. Remove bad BUG_ON() that can trigger in correct operation from close_con_rpl(). It is possible to get a close_rpl message on a dead connection. The sequence is: - host refs ep for close exchange - host posts close_req - hw posts PEER_ABORT from incoming RST - host marks ep DEAD - host posts ABORT_RPL and releases ep resources - hw posts CLOSE_RPL - host derefs ep and ep freed. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit c8286944b802c5ce4063ec3c334b38c6757a9434 Author: Steve Wise Date: Fri May 2 11:17:41 2008 -0500 RDMA/cxgb3: QP flush fixes - Flush the QP only after the HW disables the connection. Currently we flush the QP when transitioning to CLOSING. This exposes a race condition where the HW can complete a RECV WR, for instance, -and- the SW can flush that same WR. - Only call CQ event handlers on flush IFF we actually flushed something. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 57ce41d1d18279cc90223f3deadca70c7de1cfca Author: Eli Cohen Date: Wed Apr 30 20:02:45 2008 -0700 IB/ipoib: Fix transmit queue stalling forever Commit f56bcd80 ("IPoIB: Use separate CQ for UD send completions") introduced a bug where the transmit queue could get stopped and never woken up. The problem is that send completions are only polled at the end of the xmit function, so if the send queue fills up and the xmit path stops the queue, then there is no way for send completions to ever get polled, and so the transmit queue stays stopped forever. Fix this by arming the send CQ just before posting the last send request that fills the send queue. Then, when the completion event handler is called, drain the send CQ. Since it is possible that not enough send completions are in the CQ, verify that the the net queue has been woken up after draining the send CQ, and if not arm a timer and drain again at the timer function. Signed-off-by: Roland Dreier commit 3ae15e1623b9d32eb410c2a23d90e47b16e6acd0 Author: Roland Dreier Date: Wed Apr 30 19:52:55 2008 -0700 IB/mlx4: Fix off-by-one errors in calls to mlx4_ib_free_cq_buf() When I merged bbf8eed1 ("IB/mlx4: Add support for resizing CQs") I changed things around so that mlx4_ib_alloc_cq_buf() and mlx4_ib_free_cq_buf() were used everywhere they could be. However, I screwed up the number of entries passed into mlx4_ib_alloc_cq_buf() in a couple places -- the function bumps the number of entries internally, so the caller shouldn't add 1 as well. Passing a too-big value for the number of entries to mlx4_ib_free_cq_buf() can cause the cleanup to go off the end of an array and corrupt allocator state in interesting ways. Signed-off-by: Roland Dreier commit 70b9f7dc1435412ca2b89b13a8353bd9915a7189 Author: Yinghai Lu Date: Mon Apr 28 16:27:23 2008 -0700 x86/pci: remove flag in pci_cfg_space_size_ext so let pci_cfg_space_size call it directly without flag. Signed-off-by: Yinghai Lu Signed-off-by: Jesse Barnes commit 98db6f193c93e9b4729215af2c9101210e11d26c Author: Sam Ravnborg Date: Tue Apr 29 22:38:48 2008 +0200 x86: fix section mismatch in pci_scan_bus Fix following section mismatch warning: WARNING: vmlinux.o(.text+0x275616): Section mismatch in reference from the function pci_scan_bus() to the function .devinit.text:pci_scan_bus_parented() The warning was seen with a CONFIG_DEBUG_SECTION_MISMATCH=y build. The inline function pci_scan_bus refer to functions annotated __devinit - so annotate it __devinit too. This revealed a few x86 specific functions that were only used from __init or __devinit context. So annotate these __devinit and the warning was killed. The added include in pci.h was not strictly required but added to avoid being dependent on indirect includes. Signed-off-by: Sam Ravnborg Signed-off-by: Jesse Barnes