commit 90e53aa05726d125600b863b0f2754699ae514db Author: Greg Kroah-Hartman Date: Tue Aug 10 11:01:59 2010 -0700 Linux 2.6.34.3 commit 6873ebd2fb776ecef3649d5a0bd85382d8684b8f Author: Ming Lei Date: Wed May 12 23:38:12 2010 +0800 USB: add missing "{}" in map_urb_for_dma commit f537da685c35a81a75f6067751bddb902c8adb68 upstream. Obviously, {} is needed in the branch of "else if (hcd->driver->flags & HCD_LOCAL_MEM)" for handling of setup packet mapping. Signed-off-by: Ming Lei Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 8235ddc2cd7a3367b688e0ed52ab377eac6cfad4 Author: Larry Finger Date: Fri May 14 22:08:58 2010 -0500 ssb: Handle alternate SSPROM location commit 9d1ac34ec3a67713308ae0883c3359c557f14d17 upstream. In kernel Bugzilla #15825 (2 users), in a wireless mailing list thread (http://lists.infradead.org/pipermail/b43-dev/2010-May/000124.html), and on a netbook owned by John Linville (http://marc.info/?l=linux-wireless&m=127230751408818&w=4), there are reports of ssb failing to detect an SPROM at the normal location. After studying the MMIO trace dump for the Broadcom wl driver, it was determined that the affected boxes had a relocated SPROM. This patch fixes all systems that have reported this problem. Signed-off-by: Larry Finger Signed-off-by: John W. Linville Cc: Ben Hutchings Signed-off-by: Greg Kroah-Hartman commit a8515c84db1a9c9be19d8d873b059473474b6dab Author: Christoph Fritz Date: Fri May 28 10:45:59 2010 +0200 ssb: fix NULL ptr deref when pcihost_wrapper is used commit da1fdb02d9200ff28b6f3a380d21930335fe5429 upstream. Ethernet driver b44 does register ssb by it's pcihost_wrapper and doesn't set ssb_chipcommon. A check on this value introduced with commit d53cdbb94a52a920d5420ed64d986c3523a56743 and ea2db495f92ad2cf3301623e60cb95b4062bc484 triggers: BUG: unable to handle kernel NULL pointer dereference at 00000010 IP: [] ssb_is_sprom_available+0x16/0x30 Signed-off-by: Christoph Fritz Signed-off-by: John W. Linville Cc: Larry Finger Cc: Ben Hutchings Signed-off-by: Greg Kroah-Hartman commit 3ca696ca403b2715018bd5c693ab105c3a3ea888 Author: Rafał Miłecki Date: Wed Mar 31 21:59:21 2010 +0200 ssb: Look for SPROM at different offset on higher rev CC commit ea2db495f92ad2cf3301623e60cb95b4062bc484 upstream. Our offset handling becomes even a little more hackish now. For some reason I do not understand all offsets as inrelative. It assumes base offset is 0x1000 but it will work for now as we make offsets relative anyway by removing base 0x1000. Should be cleaner however. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville Cc: Larry Finger Cc: Ben Hutchings Signed-off-by: Greg Kroah-Hartman commit 19bfed793ee38ce027326a3c518ff6201f673a8d Author: John W. Linville Date: Wed Mar 31 21:39:35 2010 +0200 ssb: do not read SPROM if it does not exist commit d53cdbb94a52a920d5420ed64d986c3523a56743 upstream. Attempting to read registers that don't exist on the SSB bus can cause hangs on some boxes. At least some b43 devices are 'in the wild' that don't have SPROMs at all. When the SSB bus support loads, it attempts to read these (non-existant) SPROMs and causes hard hangs on the box -- no console output, etc. This patch adds some intelligence to determine whether or not the SPROM is present before attempting to read it. This avoids those hard hangs on those devices with no SPROM attached to their SSB bus. The SSB-attached devices (e.g. b43, et al.) won't work, but at least the box will survive to test further patches. :-) Signed-off-by: John W. Linville Signed-off-by: Rafał Miłecki Cc: Larry Finger Cc: Michael Buesch Cc: Ben Hutchings Signed-off-by: Greg Kroah-Hartman commit 4f824cdefb327963c511434087fc3a8312f0f685 Author: Greg Kroah-Hartman Date: Fri Aug 6 10:22:56 2010 -0700 Revert "ssb: Handle Netbook devices where the SPROM address is changed" Turns out this isn't the best way to resolve this issue. The individual patches will be applied instead. Cc: Larry Finger Cc: Ben Hutchings Signed-off-by: Greg Kroah-Hartman commit 0f6b65e300c5237fa981e2d2265d87505ca34bc8 Author: Chris Wilson Date: Mon Jul 12 19:35:38 2010 +0100 drm/i915: Check overlay stride errata for i830 and i845 commit a1efd14a99483a4fb9308902397ed86b69454c99 upstream. Apparently i830 and i845 cannot handle any stride that is not a multiple of 256, unlike their brethren which do support 64 byte aligned strides. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt Signed-off-by: Greg Kroah-Hartman commit 14ccd3c0e994d6648b0ad5b9ba7256afb7c1d96c Author: Alex Deucher Date: Mon Jul 26 18:51:53 2010 -0400 drm/radeon/kms/r7xx: add workaround for hw issue with HDP flush commit 812d046915f48236657f02c06d7dc47140e9ceda upstream. Use of HDP_*_COHERENCY_FLUSH_CNTL can cause a hang in certain situations. Add workaround. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie Signed-off-by: Greg Kroah-Hartman commit 41673b54bd93691b28c15a12f708672bd650f8e4 Author: Alex Deucher Date: Wed Aug 4 11:40:00 2010 -0400 drm/radeon: add new pci ids commit 1297c05a8dfb568c689f057d51a65eebe5ddc86f upstream. New evergreen and r7xx ids. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie Signed-off-by: Greg Kroah-Hartman commit 0818c640e05b9df688832c82ee1bebea0cb863a8 Author: Alex Deucher Date: Mon Aug 2 19:39:15 2010 -0400 drm/radeon/kms/igp: sideport is AMD only commit 4c70b2eae371ebe83019ac47de6088b78124ab36 upstream. Intel variants don't support it. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie Signed-off-by: Greg Kroah-Hartman commit 9967f081f3086b6556d79f7a6f317fdcf7a313d6 Author: Jeremy Fitzhardinge Date: Mon Jul 12 11:49:59 2010 -0700 xen: drop xen_sched_clock in favour of using plain wallclock time commit 8a22b9996b001c88f2bfb54c6de6a05fc39e177a upstream. xen_sched_clock only counts unstolen time. In principle this should be useful to the Linux scheduler so that it knows how much time a process actually consumed. But in practice this doesn't work very well as the scheduler expects the sched_clock time to be synchronized between cpus. It also uses sched_clock to measure the time a task spends sleeping, in which case "unstolen time" isn't meaningful. So just use plain xen_clocksource_read to return wallclock nanoseconds for sched_clock. Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Greg Kroah-Hartman commit e11e4f058c98a984fd23e0f04c27a74e684b754b Author: Xiao Guangrong Date: Wed Jun 30 16:04:06 2010 +0800 KVM: MMU: flush remote tlbs when overwriting spte with different pfn (cherry picked from commit 91546356d0e550fa23abf7f4b04a903c2855761f) After remove a rmap, we should flush all vcpu's tlb Signed-off-by: Xiao Guangrong Signed-off-by: Marcelo Tosatti Signed-off-by: Greg Kroah-Hartman commit c2ef74cb9b66b740e0499404d736273a7fe2c64c Author: Bob Peterson Date: Wed Jul 14 18:12:26 2010 -0400 GFS2: rename causes kernel Oops commit 728a756b8fcd22d80e2dbba8117a8a3aafd3f203 upstream. This patch fixes a kernel Oops in the GFS2 rename code. The problem was in the way the gfs2 directory code was trying to re-use sentinel directory entries. In the failing case, gfs2's rename function was renaming a file to another name that had the same non-trivial length. The file being renamed happened to be the first directory entry on the leaf block. First, the rename code (gfs2_rename in ops_inode.c) found the original directory entry and decided it could do its job by simply replacing the directory entry with another. Therefore it determined correctly that no block allocations were needed. Next, the rename code deleted the old directory entry prior to replacing it with the new name. Therefore, the soon-to-be replaced directory entry was temporarily made into a directory entry "sentinel" or a place holder at the start of a leaf block. Lastly, it went to re-add the replacement directory entry in that leaf block. However, when gfs2_dirent_find_space was looking for space in the leaf block, it used the wrong value for the sentinel. That threw off its calculations so later it decides it can't really re-use the sentinel and therefore must allocate a new leaf block. But because it previously decided to re-use the directory entry, it didn't waste the time to grab a new block allocation for the inode. Therefore, the inode's i_alloc pointer was still NULL and it crashes trying to reference it. In the case of sentinel directory entries, the entire dirent is reused, not just the "free space" portion of it, and therefore the function gfs2_dirent_find_space should use the value 0 rather than GFS2_DIRENT_SIZE(0) for the actual dirent size. Fixing this calculation enables the reproducer programs to work properly. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse Signed-off-by: Greg Kroah-Hartman commit 439dd83ace847a78e374bca22418bd9e8ffc06cb Author: James Bottomley Date: Fri Mar 12 16:14:42 2010 -0600 SCSI: enclosure: fix error path - actually return ERR_PTR() on error commit a91c1be21704113b023919826c6d531da46656ef upstream. we also need to clean up and free the cdev. Reported-by: Jani Nikula Signed-off-by: James Bottomley Signed-off-by: Greg Kroah-Hartman commit 6f3748cccb3c3a02265deb4cd66948d4ce2755d3 Author: John W. Linville Date: Mon Jun 21 17:14:07 2010 -0400 mac80211: avoid scheduling while atomic in mesh_rx_plink_frame commit c937019761a758f2749b1f3a032b7a91fb044753 upstream. While mesh_rx_plink_frame holds sta->lock... mesh_rx_plink_frame -> mesh_plink_inc_estab_count -> ieee80211_bss_info_change_notify ...but ieee80211_bss_info_change_notify is allowed to sleep. A driver taking advantage of that allowance can cause a scheduling while atomic bug. Similar paths exist for mesh_plink_dec_estab_count, so work around those as well. http://bugzilla.kernel.org/show_bug.cgi?id=16099 Also, correct a minor kerneldoc comment error (mismatched function names). Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman commit d3ae12acd666aadac7834b0389e4a15046aa4132 Author: Johannes Berg Date: Tue Jul 13 10:55:38 2010 +0200 cfg80211: don't get expired BSSes commit ccb6c1360f8dd43303c659db718e7e0b24175db5 upstream. When kernel-internal users use cfg80211_get_bss() to get a reference to a BSS struct, they may end up getting one that would have been removed from the list if there had been any userspace access to the list. This leads to inconsistencies and problems. Fix it by making cfg80211_get_bss() ignore BSSes that cfg80211_bss_expire() would remove. Fixes http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2180 Reported-by: Jiajia Zheng Tested-by: Jiajia Zheng Signed-off-by: Johannes Berg Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman commit 512a9dbfd62bea0a8b9ec5654288e2f0336c7416 Author: Johannes Berg Date: Mon Jul 12 14:46:43 2010 +0200 cfg80211: ignore spurious deauth commit 643f82e32f14faf0d0944c804203a6681b6b0a1e upstream. Ever since mac80211/drivers are no longer fully in charge of keeping track of the auth status, trying to make them do so will fail. Instead of warning and reporting the deauthentication to userspace, cfg80211 must simply ignore it so that spurious deauthentications, e.g. before starting authentication, aren't seen by userspace as actual deauthentications. Reported-by: Paul Stewart Signed-off-by: Johannes Berg Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman commit 9c9dc3c4df0c3cd899f2871dc4f5cea0b386f5fe Author: Stanislaw Gruszka Date: Thu Jul 29 11:37:41 2010 +0200 iwlwifi: fix scan abort commit d28232b461b8d54b09e59325dbac8b0913ce2049 upstream. Fix possible double priv->mutex lock introduced by commit a69b03e941abae00380fc6bc1877fb797a1b31e6 "iwlwifi: cancel scan watchdog in iwl_bg_abort_scan" . We can not call cancel_delayed_work_sync(&priv->scan_check) with priv->mutex locked because workqueue function iwl_bg_scan_check() take that lock internally. We do not need to synchronize when canceling priv->scan_check work. We can avoid races (sending double abort command or send no command at all) using STATUS_SCAN_ABORT bit. Moreover current iwl_bg_scan_check() code seems to be broken, as we should not send abort commands when currently aborting. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman commit 2fb49ae6528c294776d8b6a90401c9567d5a670a Author: Felix Fietkau Date: Fri Jul 23 03:53:16 2010 +0200 ath9k: fix yet another buffer leak in the tx aggregation code commit 4cee78614cfa046a26c4fbf313d5bbacb3ad8efc upstream. When an aggregation session is being cleaned up, while the tx status for some frames is being processed, the TID is flushed and its buffers are sent out. Unfortunately that left the pending un-acked frames unprocessed, thus leaking buffers. Fix this by reordering the code so that those frames are processed first, before the TID is flushed. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman commit a1972d6d42c0c1763c0b95093fae805636125b47 Author: Felix Fietkau Date: Wed Jun 30 02:07:48 2010 +0200 ath9k: fix TSF after reset on AR913x commit f860d526eb2939a1c37128900b5af2b6f3ff7f20 upstream. When issuing a reset, the TSF value is lost in the hardware because of the 913x specific cold reset. As with some AR9280 cards, the TSF needs to be preserved in software here. Additionally, there's an issue that frequently prevents a successful TSF write directly after the chip reset. In this case, repeating the TSF write after the initval-writes usually works. This patch detects failed TSF writes and recovers from them, taking into account the delay caused by the initval writes. Signed-off-by: Felix Fietkau Reported-by: Björn Smedman Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman commit 8e0e0465a8bb89e31cc5c3b8e68b65639ba84221 Author: Felix Fietkau Date: Sun Jul 11 12:48:41 2010 +0200 ath9k_hw: fix an off-by-one error in the PDADC boundaries calculation commit 03b4776c408d2f4bf3a5d204e223724d154716d1 upstream. PDADC values were only generated for values surrounding the target index, however not for the target index itself, leading to a minor error in the generated curve. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman commit dd6f960af291ac95a788afa13a4b919f0b8151b9 Author: Felix Fietkau Date: Wed Jul 7 19:42:08 2010 +0200 ath9k: fix a potential buffer leak in the STA teardown path commit 2b40994cabd2f545d5c11d3a65dcee6f6f9155f8 upstream. It looks like it might be possible for a TID to be paused, while still holding some queued buffers, however ath_tx_node_cleanup currently only iterates over active TIDs. Fix this by always checking every allocated TID for the STA that is being cleaned up. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville Signed-off-by: Greg Kroah-Hartman commit b8122172766f1aa2d1c3d2db951a66b91f2ec8c5 Author: John W. Linville Date: Wed Jul 28 10:06:35 2010 -0400 ath9k: enable serialize_regmode for non-PCIE AR9160 commit 4c85ab11ca56da1aa59b58c80cc6a356515cc645 upstream. https://bugzilla.kernel.org/show_bug.cgi?id=16476 Signed-off-by: John W. Linville Acked-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 838f066e81678aa034c21796a79fa42ed7f940c6 Author: Greg Rose Date: Thu Jul 1 13:38:16 2010 +0000 igb: Use only a single Tx queue in SR-IOV mode commit 5fa8517f038d51d571981fb495206cc30ed91b06 upstream. The 82576 expects the second rx queue in any pool to receive L2 switch loop back packets sent from the second tx queue in another pool. The 82576 VF driver does not enable the second rx queue so if the PF driver sends packets destined to a VF from its second tx queue then the VF driver will never see them. In SR-IOV mode limit the number of tx queues used by the PF driver to one. This patch fixes a bug reported in which the PF cannot communciate with the VF and should be considered for 2.6.34 stable. Signed-off-by: Greg Rose Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman commit 7ac2eb70d871029d6e7d3e6e5745d519de0b5a08 Author: Dan Carpenter Date: Fri Jul 9 23:51:54 2010 +0000 9p: strlen() doesn't count the terminator commit 5c4bfa17f3ec46becec4b23d12323f7605ebd696 upstream. This is an off by one bug because strlen() doesn't count the NULL terminator. We strcpy() addr into a fixed length array of size UNIX_PATH_MAX later on. The addr variable is the name of the device being mounted. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman commit 8d7738fa12d2601da3998e504b50f639fdd2398e Author: Bruce Allan Date: Tue Jul 27 12:28:46 2010 +0000 e1000e: 82577/82578 PHY register access issues commit ff847ac2d3e90edd94674c28bade25ae1e6a2e49 upstream. The MAC-PHY interconnect on 82577/82578 uses a power management feature (called K1) which must be disabled when in 1Gbps due to a hardware issue on these parts. The #define bit setting used to enable/disable K1 is incorrect and can cause PHY register accesses to stop working altogether until the next device reset. This patch sets the register correctly. This issue is present in kernels since 2.6.32. Signed-off-by: Bruce Allan Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman commit 309acb848684f09066b09e82d894ef9151e92bc0 Author: Dean Nelson Date: Tue Jun 29 18:12:05 2010 +0000 e1000e: don't inadvertently re-set INTX_DISABLE commit 36f2407fe52c55566221f8c68c8fb808abffd2f5 upstream. Should e1000_test_msi() fail to see an msi interrupt, it attempts to fallback to legacy INTx interrupts. But an error in the code may prevent this from happening correctly. Before calling e1000_test_msi_interrupt(), e1000_test_msi() disables SERR by clearing the SERR bit from the just read PCI_COMMAND bits as it writes them back out. Upon return from calling e1000_test_msi_interrupt(), it re-enables SERR by writing out the version of PCI_COMMAND it had previously read. The problem with this is that e1000_test_msi_interrupt() calls pci_disable_msi(), which eventually ends up in pci_intx(). And because pci_intx() was called with enable set to 1, the INTX_DISABLE bit gets cleared from PCI_COMMAND, which is what we want. But when we get back to e1000_test_msi(), the INTX_DISABLE bit gets inadvertently re-set because of the attempt by e1000_test_msi() to re-enable SERR. The solution is to have e1000_test_msi() re-read the PCI_COMMAND bits as part of its attempt to re-enable SERR. During debugging/testing of this issue I found that not all the systems I ran on had the SERR bit set to begin with. And on some of the systems the same could be said for the INTX_DISABLE bit. Needless to say these latter systems didn't have a problem falling back to legacy INTx interrupts with the code as is. Signed-off-by: Dean Nelson Tested-by: Emil Tantilov Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman commit 36e6db0257b564d08585bc1c59f2d43da7868da2 Author: Borislav Petkov Date: Tue Aug 3 16:51:28 2010 +0200 amd64_edac: Fix operator precendence error commit 962b70a1eb22c467b95756a290c694e73da17f41 upstream. The bitwise AND is of higher precedence, make that explicit. Signed-off-by: Borislav Petkov Signed-off-by: Greg Kroah-Hartman commit 4895eb4cac7a98474d329e25c7b86bb150c98b15 Author: Borislav Petkov Date: Fri May 21 21:25:03 2010 +0200 amd64_edac: Correct scrub rate setting commit bc57117856cf1e581135810b37d3b75f9d1749f5 upstream. Exit early when setting scrub rate on unknown/unsupported families. Signed-off-by: Borislav Petkov Acked-by: Doug Thompson Signed-off-by: Greg Kroah-Hartman commit b506d2886123002a81b9f421d4d6c65166b1c60f Author: Borislav Petkov Date: Mon Mar 8 18:29:35 2010 +0100 amd64_edac: Fix DCT base address selector commit 9975a5f22a4fcc8d08035c65439900a983f891ad upstream. The correct check is to verify whether in high range we're below 4GB and not to extract the DctSelBaseAddr again. See "2.8.5 Routing DRAM Requests" in the F10h BKDG. Signed-off-by: Borislav Petkov Acked-by: Doug Thompson Signed-off-by: Greg Kroah-Hartman commit b2a9b4fad3a3798dd405adbfa1efc85ac8eeed6a Author: Kyle McMartin Date: Tue Aug 3 20:38:08 2010 -0400 parisc: pass through '\t' to early (iodc) console commit d9b68e5e88248bb24fd4e455588bea1d56108fd6 upstream. The firmware handles '\t' internally, so stop trying to emulate it (which, incidentally, had a bug in it.) Fixes a really weird hang at bootup in rcu_bootup_announce, which, as far as I can tell, is the first printk in the core kernel to use a tab as the first character. Signed-off-by: Kyle McMartin Signed-off-by: Linus Torvalds Signed-off-by: Greg Kroah-Hartman commit 472d843193788d526b147fe547b7ec76780ea727 Author: Baruch Siach Date: Tue Jul 6 14:03:22 2010 +0300 arm/imx/gpio: add spinlock protection commit 14cb0deb66fcfca8fdbef75da8c84b5405a8c767 upstream. The GPIO registers need protection from concurrent access for operations that are not atomic. Cc: Juergen Beisert Cc: Daniel Mack Reported-by: rpkamiak@rockwellcollins.com Signed-off-by: Baruch Siach Signed-off-by: Sascha Hauer Signed-off-by: Greg Kroah-Hartman commit 3c9cb324ac093a02923963e9f1322349c2525799 Author: Helge Deller Date: Mon Aug 2 22:46:41 2010 +0200 PARISC: led.c - fix potential stack overflow in led_proc_write() commit 4b4fd27c0b5ec638a1f06ced9226fd95229dbbf0 upstream. avoid potential stack overflow by correctly checking count parameter Reported-by: Ilja Signed-off-by: Helge Deller Acked-by: Kyle McMartin Cc: James E.J. Bottomley Signed-off-by: Linus Torvalds Signed-off-by: Greg Kroah-Hartman commit 753abba1edcaa41355411be693c39b9caac8c1d6 Author: Ian Abbott Date: Fri Jul 30 14:42:28 2010 +0100 comedi: Uncripple 8255-based DIO subdevices (Note: upstream comedi configuration has been overhauled, so this patch does not apply there.) Several comedi drivers call subdev_8255_init() (declared in "drivers/staging/comedi/drivers/8255.h") to set up one or more DIO subdevices. This should be provided by the 8255.ko module, but unless the CONFIG_COMEDI_8255 or CONFIG_COMEDI_8255_MODULE macro is defined, the 8255.h header uses a dummy inline version of the function instead. This means the comedi devices end up with an "unused" subdevice with 0 channels instead of a "DIO" subdevice with 24 channels! This patch provides a non-interactive COMEDI_8255 option and selects it whenever the COMEDI_PCI_DRIVERS or COMEDI_PCMCIA_DRIVERS options are selected. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit f6023962619f6a11e2921ba1d2e0cb9f829b1e72 Author: Trond Myklebust Date: Sun Aug 1 13:40:40 2010 -0400 NFS: Fix a typo in include/linux/nfs_fs.h commit 77a63f3d1e0a3e7ede8d10f569e8481b13ff47c5 upstream. nfs_commit_inode() needs to be defined irrespectively of whether or not we are supporting NFSv3 and NFSv4. Allow the compiler to optimise away code in the NFSv2-only case by converting it into an inlined stub function. Reported-and-tested-by: Ingo Molnar Signed-off-by: Trond Myklebust Signed-off-by: Linus Torvalds Signed-off-by: Greg Kroah-Hartman commit 2feba60ecd830b7865e14ffda86d99cdbb265add Author: Trond Myklebust Date: Fri Jul 30 15:31:54 2010 -0400 NFS: kswapd must not block in nfs_release_page commit b608b283a962caaa280756bc8563016a71712acf upstream. See https://bugzilla.kernel.org/show_bug.cgi?id=16056 If other processes are blocked waiting for kswapd to free up some memory so that they can make progress, then we cannot allow kswapd to block on those processes. Signed-off-by: Trond Myklebust Signed-off-by: Greg Kroah-Hartman commit 0755c191083b5bc37734da39cf3ba5edcadb90e3 Author: Hugh Dickins Date: Fri Jul 30 10:58:26 2010 -0700 mm: fix ia64 crash when gcore reads gate area commit de51257aa301652876ab6e8f13ea4eadbe4a3846 upstream. Debian's ia64 autobuilders have been seeing kernel freeze or reboot when running the gdb testsuite (Debian bug 588574): dannf bisected to 2.6.32 62eede62dafb4a6633eae7ffbeb34c60dba5e7b1 "mm: ZERO_PAGE without PTE_SPECIAL"; and reproduced it with gdb's gcore on a simple target. I'd missed updating the gate_vma handling in __get_user_pages(): that happens to use vm_normal_page() (nowadays failing on the zero page), yet reported success even when it failed to get a page - boom when access_process_vm() tried to copy that to its intermediate buffer. Fix this, resisting cleanups: in particular, leave it for now reporting success when not asked to get any pages - very probably safe to change, but let's not risk it without testing exposure. Why did ia64 crash with 16kB pages, but succeed with 64kB pages? Because setup_gate() pads each 64kB of its gate area with zero pages. Reported-by: Andreas Barth Bisected-by: dann frazier Signed-off-by: Hugh Dickins Tested-by: dann frazier Signed-off-by: Linus Torvalds Signed-off-by: Greg Kroah-Hartman commit fdd4583decf338362e9e81388172b7073170e18c Author: Jan III Sobieski Date: Sun Mar 28 15:38:31 2010 +0200 add random binaries to .gitignore commit 7926c09dea682be6f3b2e42f16c50d8554c6bbdc upstream. Signed-off-by: Jan III Sobieski Signed-off-by: Michal Marek Signed-off-by: Greg Kroah-Hartman