1. 01 7月, 2012 3 次提交
  2. 30 6月, 2012 14 次提交
  3. 21 6月, 2012 1 次提交
  4. 20 6月, 2012 14 次提交
  5. 17 6月, 2012 5 次提交
  6. 16 6月, 2012 3 次提交
    • H
      swap: fix shmem swapping when more than 8 areas · 9b15b817
      Hugh Dickins 提交于
      Minchan Kim reports that when a system has many swap areas, and tmpfs
      swaps out to the ninth or more, shmem_getpage_gfp()'s attempts to read
      back the page cannot locate it, and the read fails with -ENOMEM.
      
      Whoops.  Yes, I blindly followed read_swap_header()'s pte_to_swp_entry(
      swp_entry_to_pte()) technique for determining maximum usable swap
      offset, without stopping to realize that that actually depends upon the
      pte swap encoding shifting swap offset to the higher bits and truncating
      it there.  Whereas our radix_tree swap encoding leaves offset in the
      lower bits: it's swap "type" (that is, index of swap area) that was
      truncated.
      
      Fix it by reducing the SWP_TYPE_SHIFT() in swapops.h, and removing the
      broken radix_to_swp_entry(swp_to_radix_entry()) from read_swap_header().
      
      This does not reduce the usable size of a swap area any further, it
      leaves it as claimed when making the original commit: no change from 3.0
      on x86_64, nor on i386 without PAE; but 3.0's 512GB is reduced to 128GB
      per swapfile on i386 with PAE.  It's not a change I would have risked
      five years ago, but with x86_64 supported for ten years, I believe it's
      appropriate now.
      
      Hmm, and what if some architecture implements its swap pte with offset
      encoded below type? That would equally break the maximum usable swap
      offset check.  Happily, they all follow the same tradition of encoding
      offset above type, but I'll prepare a check on that for next.
      Reported-and-Reviewed-and-Tested-by: NMinchan Kim <minchan@kernel.org>
      Signed-off-by: NHugh Dickins <hughd@google.com>
      Cc: stable@vger.kernel.org [3.1, 3.2, 3.3, 3.4]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9b15b817
    • L
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · a2c2df86
      Linus Torvalds 提交于
      Pull SCSI fixes from James Bottomley:
       "This is a couple of minor fixes, one for a preempt warning in the
        mpt2sas driver and one is a config failure with the new sd async
        domain."
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        [SCSI] Fix sd_probe_domain config problem
        [SCSI] mpt2sas: Fix unsafe using smp_processor_id() in preemptible
      a2c2df86
    • L
      Merge tag 'nfs-for-3.5-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 873b779d
      Linus Torvalds 提交于
      Pull NFS client bugfixes from Trond Myklebust:
       "Highlights include:
      
         - Fix a couple of mount regressions due to the recent cleanups.
         - Fix an Oops in the open recovery code
         - Fix an rpc_pipefs upcall hang that results from some of the net
           namespace work from 3.4.x (stable kernel candidate).
         - Fix a couple of write and o_direct regressions that were found at
           last weeks Bakeathon testing event in Ann Arbor."
      
      * tag 'nfs-for-3.5-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        NFS: add an endian notation for sparse
        NFSv4.1: integer overflow in decode_cb_sequence_args()
        rpc_pipefs: allow rpc_purge_list to take a NULL waitq pointer
        NFSv4 do not send an empty SETATTR compound
        NFSv2: EOF incorrectly set on short read
        NFS: Use the NFS_DEFAULT_VERSION for v2 and v3 mounts
        NFS: fix directio refcount bug on commit
        NFSv4: Fix unnecessary delegation returns in nfs4_do_open
        NFSv4.1: Convert another trivial printk into a dprintk
        NFS4: Fix open bug when pnfs module blacklisted
        NFS: Remove incorrect BUG_ON in nfs_found_client
        NFS: Map minor mismatch error to protocol not support error.
        NFS: Fix a commit bug
        NFS4: Set parsed mount data version to 4
        NFSv4.1: Ensure we clear session state flags after a session creation
        NFSv4.1: Convert a trivial printk into a dprintk
        NFSv4: Fix up decode_attr_mdsthreshold
        NFSv4: Fix an Oops in the open recovery code
        NFSv4.1: Fix a request leak on the back channel
      873b779d