1. 10 Jun, 2014 23 commits
    • Sasha Levin's avatar
      decode_stacktrace: make stack dump output useful again · dbd1abb2
      Sasha Levin authored
      Right now when people try to report issues in the kernel they send stack
      dumps to eachother, which looks something like this:
      
        [    6.906437]  [<ffffffff811f0e90>] ? backtrace_test_irq_callback+0x20/0x20
        [    6.907121]  [<ffffffff84388ce8>] dump_stack+0x52/0x7f
        [    6.907640]  [<ffffffff811f0ec8>] backtrace_regression_test+0x38/0x110
        [    6.908281]  [<ffffffff813596a0>] ? proc_create_data+0xa0/0xd0
        [    6.908870]  [<ffffffff870a8040>] ? proc_modules_init+0x22/0x22
        [    6.909480]  [<ffffffff810020c2>] do_one_initcall+0xc2/0x1e0
        [...]
      
      However, most of the text you get is pure garbage.
      
      The only useful thing above is the function name.  Due to the amount of
      different kernel code versions and various configurations being used,
      the kernel address and the offset into the function are not really
      helpful in determining where the problem actually occured.
      
      Too often the result of someone looking at a stack dump is asking the
      person who sent it for a translation for one or more 'addr2line'
      translations.  Which slows down the entire process of debugging the
      issue (and really annoying).
      
      The decode_stacktrace script is an attempt to make the output more
      useful and easy to work with by translating all kernel addresses in the
      stack dump into line numbers.  Which means that the stack dump would
      look like this:
      
        [  635.148361]  dump_stack (lib/dump_stack.c:52)
        [  635.149127]  warn_slowpath_common (kernel/panic.c:418)
        [  635.150214]  warn_slowpath_null (kernel/panic.c:453)
        [  635.151031]  _oalloc_pages_slowpath+0x6a/0x7d0
        [  635.152171]  ? zone_watermark_ok (mm/page_alloc.c:1728)
        [  635.152988]  ? get_page_from_freelist (mm/page_alloc.c:1939)
        [  635.154766]  __alloc_pages_nodemask (mm/page_alloc.c:2766)
      
      It's pretty obvious why this is better than the previous stack dump
      before.
      
      Usage is pretty simple:
      
              ./decode_stacktrace.sh [vmlinux] [base path]
      
      Where vmlinux is the vmlinux to extract line numbers from and base path
      is the path that points to the root of the build tree, for example:
      
              ./decode_stacktrace.sh vmlinux /home/sasha/linux/ < input.log > output.log
      
      The stack trace should be piped through it (I, for example, just pipe
      the output of the serial console of my KVM test box through it).
      Signed-off-by: default avatarSasha Levin <sasha.levin@oracle.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      dbd1abb2
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-3.16-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · d1e1cda8
      Linus Torvalds authored
      Pull NFS client updates from Trond Myklebust:
       "Highlights include:
      
         - massive cleanup of the NFS read/write code by Anna and Dros
         - support multiple NFS read/write requests per page in order to deal
           with non-page aligned pNFS striping.  Also cleans up the r/wsize <
           page size code nicely.
         - stable fix for ensuring inode is declared uptodate only after all
           the attributes have been checked.
         - stable fix for a kernel Oops when remounting
         - NFS over RDMA client fixes
         - move the pNFS files layout driver into its own subdirectory"
      
      * tag 'nfs-for-3.16-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (79 commits)
        NFS: populate ->net in mount data when remounting
        pnfs: fix lockup caused by pnfs_generic_pg_test
        NFSv4.1: Fix typo in dprintk
        NFSv4.1: Comment is now wrong and redundant to code
        NFS: Use raw_write_seqcount_begin/end int nfs4_reclaim_open_state
        xprtrdma: Disconnect on registration failure
        xprtrdma: Remove BUG_ON() call sites
        xprtrdma: Avoid deadlock when credit window is reset
        SUNRPC: Move congestion window constants to header file
        xprtrdma: Reset connection timeout after successful reconnect
        xprtrdma: Use macros for reconnection timeout constants
        xprtrdma: Allocate missing pagelist
        xprtrdma: Remove Tavor MTU setting
        xprtrdma: Ensure ia->ri_id->qp is not NULL when reconnecting
        xprtrdma: Reduce the number of hardway buffer allocations
        xprtrdma: Limit work done by completion handler
        xprtrmda: Reduce calls to ib_poll_cq() in completion handlers
        xprtrmda: Reduce lock contention in completion handlers
        xprtrdma: Split the completion queue
        xprtrdma: Make rpcrdma_ep_destroy() return void
        ...
      d1e1cda8
    • Linus Torvalds's avatar
      Merge tag 'mmc-updates-for-3.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc · 07888238
      Linus Torvalds authored
      Pull MMC update from Chris Ball:
       "MMC highlights for 3.16:
      
        Core:
         - support HS400 mode of eMMC 5.0, via DT bindings mmc-hs400-1_{2,8}v
         - if card init at 3.3v doesn't work, try 1.8v and 1.2v too
      
        Drivers:
         - moxart: New driver for MOXA ART SoCs
         - rtsx_usb_sdmmc: New driver for Realtek USB card readers
         - sdhci: Large rework around IRQ/regulator handling, remove card_tasklet
         - sdhci-pci-o2micro: Add SeaBird SeaEagle SD3 support
         - sunxi: New driver for Allwinner sunxi SoCs
         - usdhi6rol0: New driver for Renesas SD/SDIO controller"
      
      * tag 'mmc-updates-for-3.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (95 commits)
        mmc: sdhci-s3c: use mmc_of_parse and remove the card_tasklet
        mmc: add a driver for the Renesas usdhi6rol0 SD/SDIO host controller
        mmc: sdhci-of-esdhc: Fixup compile error
        mmc: tegra: fix reporting of base clock frequency
        mmc: tegra: disable UHS modes
        mmc: sdhci-dove: use mmc_of_parse() and remove card_tasklet CD handler
        MAINTAINERS: mmc: Add path to git tree
        mmc: dove: fix missing MACH_DOVE dependency
        mmc: sdhci: SD tuning is broken for some controllers
        mmc: sdhci-esdhc-imx: fix mmc ddr mode regression issue
        mmc: sdhci-pci-o2micro: Add SeaBird SeaEagle SD3 support
        mmc: omap_hsmmc: split omap-dma header file
        mmc: omap_hsmmc: fix cmd23 multiblock read/write
        mmc: omap_hsmmc: use devm_ioremap_resource
        mmc: omap_hsmmc: use devm_request_threaded_irq
        mmc: omap_hsmmc: use devm_request_irq
        mmc: omap_hsmmc: use devm_clk_get
        mmc: sunxi: Add driver for SD/MMC hosts found on Allwinner sunxi SoCs
        mmc: wmt-sdmmc: Use GFP_KERNEL instead of hard-coded value
        mmc: omap: Use DIV_ROUND_UP instead of open coded
        ...
      07888238
    • Andy Lutomirski's avatar
      fs,userns: Change inode_capable to capable_wrt_inode_uidgid · 23adbe12
      Andy Lutomirski authored
      The kernel has no concept of capabilities with respect to inodes; inodes
      exist independently of namespaces.  For example, inode_capable(inode,
      CAP_LINUX_IMMUTABLE) would be nonsense.
      
      This patch changes inode_capable to check for uid and gid mappings and
      renames it to capable_wrt_inode_uidgid, which should make it more
      obvious what it does.
      
      Fixes CVE-2014-4014.
      
      Cc: Theodore Ts'o <tytso@mit.edu>
      Cc: Serge Hallyn <serge.hallyn@ubuntu.com>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Cc: Dave Chinner <david@fromorbit.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarAndy Lutomirski <luto@amacapital.net>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      23adbe12
    • Linus Torvalds's avatar
      Merge branch 'for-3.16' of git://linux-nfs.org/~bfields/linux · 5b174fd6
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       "The largest piece is a long-overdue rewrite of the xdr code to remove
        some annoying limitations: for example, there was no way to return
        ACLs larger than 4K, and readdir results were returned only in 4k
        chunks, limiting performance on large directories.
      
        Also:
              - part of Neil Brown's work to make NFS work reliably over the
                loopback interface (so client and server can run on the same
                machine without deadlocks).  The rest of it is coming through
                other trees.
              - cleanup and bugfixes for some of the server RDMA code, from
                Steve Wise.
              - Various cleanup of NFSv4 state code in preparation for an
                overhaul of the locking, from Jeff, Trond, and Benny.
              - smaller bugfixes and cleanup from Christoph Hellwig and
                Kinglong Mee.
      
        Thanks to everyone!
      
        This summer looks likely to be busier than usual for knfsd.  Hopefully
        we won't break it too badly; testing definitely welcomed"
      
      * 'for-3.16' of git://linux-nfs.org/~bfields/linux: (100 commits)
        nfsd4: fix FREE_STATEID lockowner leak
        svcrdma: Fence LOCAL_INV work requests
        svcrdma: refactor marshalling logic
        nfsd: don't halt scanning the DRC LRU list when there's an RC_INPROG entry
        nfs4: remove unused CHANGE_SECURITY_LABEL
        nfsd4: kill READ64
        nfsd4: kill READ32
        nfsd4: simplify server xdr->next_page use
        nfsd4: hash deleg stateid only on successful nfs4_set_delegation
        nfsd4: rename recall_lock to state_lock
        nfsd: remove unneeded zeroing of fields in nfsd4_proc_compound
        nfsd: fix setting of NFS4_OO_CONFIRMED in nfsd4_open
        nfsd4: use recall_lock for delegation hashing
        nfsd: fix laundromat next-run-time calculation
        nfsd: make nfsd4_encode_fattr static
        SUNRPC/NFSD: Remove using of dprintk with KERN_WARNING
        nfsd: remove unused function nfsd_read_file
        nfsd: getattr for FATTR4_WORD0_FILES_AVAIL needs the statfs buffer
        NFSD: Error out when getting more than one fsloc/secinfo/uuid
        NFSD: Using type of uint32_t for ex_nflavors instead of int
        ...
      5b174fd6
    • Linus Torvalds's avatar
      Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · 1d21b1bf
      Linus Torvalds authored
      Pull main InfiniBand/RDMA updates from Roland Dreier:
      
       - add iWARP port mapper to avoid conflicts between RDMA and normal
         stack TCP connections.
      
       - fixes for i386 / x86-64 structure padding differences (ABI
         compatibility for 32-on-64) from Yann Droneaud.
      
       - a pile of SRP initiator fixes from Bart Van Assche.
      
       - fixes for a writeback / memory allocation deadlock with NFS over
         IPoIB connected mode from Jiri Kosina.
      
       - the usual fixes and cleanups to mlx4, mlx5, cxgb4 and other low-level
         drivers.
      
      * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (61 commits)
        RDMA/cxgb4: Add support for iWARP Port Mapper user space service
        RDMA/nes: Add support for iWARP Port Mapper user space service
        RDMA/core: Add support for iWARP Port Mapper user space service
        IB/mlx4: Fix gfp passing in create_qp_common()
        IB/umad: Fix use-after-free on close
        IB/core: Fix kobject leak on device register error flow
        RDMA/cxgb4: add missing padding at end of struct c4iw_alloc_ucontext_resp
        mlx4_core: Fix GFP flags parameters to be gfp_t
        IB/core: Fix port kobject deletion during error flow
        IB/core: Remove unneeded kobject_get/put calls
        IB/core: Fix sparse warnings about redeclared functions
        IB/mad: Fix sparse warning about gfp_t use
        IB/mlx4: Implement IB_QP_CREATE_USE_GFP_NOIO
        IB: Add a QP creation flag to use GFP_NOIO allocations
        IB: Return error for unsupported QP creation flags
        IB: Allow build of hw/ and ulp/ subdirectories independently
        mlx4_core: Move handling of MLX4_QP_ST_MLX to proper switch statement
        RDMA/cxgb4: Add missing padding at end of struct c4iw_create_cq_resp
        IB/srp: Avoid problems if a header uses pr_fmt
        IB/umad: Fix error handling
        ...
      1d21b1bf
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma · 77c32bbb
      Linus Torvalds authored
      Pull slave-dmaengine updates from Vinod Koul:
       - new Xilixn VDMA driver from Srikanth
       - bunch of updates for edma driver by Thomas, Joel and Peter
       - fixes and updates on dw, ste_dma, freescale, mpc512x, sudmac etc
      
      * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (45 commits)
        dmaengine: sh: don't use dynamic static allocation
        dmaengine: sh: fix print specifier warnings
        dmaengine: sh: make shdma_prep_dma_cyclic static
        dmaengine: Kconfig: Update MXS_DMA help text to include MX6Q/MX6DL
        of: dma: Grammar s/requests/request/, s/used required/required/
        dmaengine: shdma: Enable driver compilation with COMPILE_TEST
        dmaengine: rcar-hpbdma: Include linux/err.h
        dmaengine: sudmac: Include linux/err.h
        dmaengine: sudmac: Keep #include sorted alphabetically
        dmaengine: shdmac: Include linux/err.h
        dmaengine: shdmac: Keep #include sorted alphabetically
        dmaengine: s3c24xx-dma: Add cyclic transfer support
        dmaengine: s3c24xx-dma: Process whole SG chain
        dmaengine: imx: correct sdmac->status for cyclic dma tx
        dmaengine: pch: fix compilation for alpha target
        dmaengine: dw: check return code of dma_async_device_register()
        dmaengine: dw: fix regression in dw_probe() function
        dmaengine: dw: enable clock before access
        dma: pch_dma: Fix Kconfig dependencies
        dmaengine: mpc512x: add support for peripheral transfers
        ...
      77c32bbb
    • Roland Dreier's avatar
      Merge branches 'core', 'cxgb3', 'cxgb4', 'iser', 'iwpm', 'misc', 'mlx4',... · eeaddf36
      Roland Dreier authored
      Merge branches 'core', 'cxgb3', 'cxgb4', 'iser', 'iwpm', 'misc', 'mlx4', 'mlx5', 'noio', 'ocrdma', 'qib', 'srp' and 'usnic' into for-next
      eeaddf36
    • Steve Wise's avatar
      RDMA/cxgb4: Add support for iWARP Port Mapper user space service · 9eccfe10
      Steve Wise authored
      Based on original work by Vipul Pandya.
      Signed-off-by: default avatarSteve Wise <swise@opengridcomputing.com>
      
      [ Fix htons -> ntohs to make sparse happy.  - Roland ]
      Signed-off-by: default avatarRoland Dreier <roland@purestorage.com>
      9eccfe10
    • Tatyana Nikolova's avatar
    • Tatyana Nikolova's avatar
      RDMA/core: Add support for iWARP Port Mapper user space service · 30dc5e63
      Tatyana Nikolova authored
      This patch adds iWARP Port Mapper (IWPM) Version 2 support.  The iWARP
      Port Mapper implementation is based on the port mapper specification
      section in the Sockets Direct Protocol paper -
      http://www.rdmaconsortium.org/home/draft-pinkerton-iwarp-sdp-v1.0.pdf
      
      Existing iWARP RDMA providers use the same IP address as the native
      TCP/IP stack when creating RDMA connections.  They need a mechanism to
      claim the TCP ports used for RDMA connections to prevent TCP port
      collisions when other host applications use TCP ports.  The iWARP Port
      Mapper provides a standard mechanism to accomplish this.  Without this
      service it is possible for RDMA application to bind/listen on the same
      port which is already being used by native TCP host application.  If
      that happens the incoming TCP connection data can be passed to the
      RDMA stack with error.
      
      The iWARP Port Mapper solution doesn't contain any changes to the
      existing network stack in the kernel space.  All the changes are
      contained with the infiniband tree and also in user space.
      
      The iWARP Port Mapper service is implemented as a user space daemon
      process.  Source for the IWPM service is located at
      http://git.openfabrics.org/git?p=~tnikolova/libiwpm-1.0.0/.git;a=summary
      
      The iWARP driver (port mapper client) sends to the IWPM service the
      local IP address and TCP port it has received from the RDMA
      application, when starting a connection.  The IWPM service performs a
      socket bind from user space to get an available TCP port, called a
      mapped port, and communicates it back to the client.  In that sense,
      the IWPM service is used to map the TCP port, which the RDMA
      application uses to any port available from the host TCP port
      space. The mapped ports are used in iWARP RDMA connections to avoid
      collisions with native TCP stack which is aware that these ports are
      taken. When an RDMA connection using a mapped port is terminated, the
      client notifies the IWPM service, which then releases the TCP port.
      
      The message exchange between the IWPM service and the iWARP drivers
      (between user space and kernel space) is implemented using netlink
      sockets.
      
      1) Netlink interface functions are added: ibnl_unicast() and
         ibnl_mulitcast() for sending netlink messages to user space
      
      2) The signature of the existing ibnl_put_msg() is changed to be more
         generic
      
      3) Two netlink clients are added: RDMA_NL_NES, RDMA_NL_C4IW
         corresponding to the two iWarp drivers - nes and cxgb4 which use
         the IWPM service
      
      4) Enums are added to enumerate the attributes in the netlink
         messages, which are exchanged between the user space IWPM service
         and the iWARP drivers
      Signed-off-by: default avatarTatyana Nikolova <tatyana.e.nikolova@intel.com>
      Signed-off-by: default avatarSteve Wise <swise@opengridcomputing.com>
      Reviewed-by: default avatarPJ Waskiewicz <pj.waskiewicz@solidfire.com>
      
      [ Fold in range checking fixes and nlh_next removal as suggested by Dan
        Carpenter and Steve Wise.  Fix sparse endianness in hash.  - Roland ]
      Signed-off-by: default avatarRoland Dreier <roland@purestorage.com>
      30dc5e63
    • Linus Torvalds's avatar
      Merge branch 'serge-next-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sergeh/linux-security · fad0701e
      Linus Torvalds authored
      Pull security layer updates from Serge Hallyn:
       "This is a merge of James Morris' security-next tree from 3.14 to
        yesterday's master, plus four patches from Paul Moore which are in
        linux-next, plus one patch from Mimi"
      
      * 'serge-next-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sergeh/linux-security:
        ima: audit log files opened with O_DIRECT flag
        selinux: conditionally reschedule in hashtab_insert while loading selinux policy
        selinux: conditionally reschedule in mls_convert_context while loading selinux policy
        selinux: reject setexeccon() on MNT_NOSUID applications with -EACCES
        selinux:  Report permissive mode in avc: denied messages.
        Warning in scanf string typing
        Smack: Label cgroup files for systemd
        Smack: Verify read access on file open - v3
        security: Convert use of typedef ctl_table to struct ctl_table
        Smack: bidirectional UDS connect check
        Smack: Correctly remove SMACK64TRANSMUTE attribute
        SMACK: Fix handling value==NULL in post setxattr
        bugfix patch for SMACK
        Smack: adds smackfs/ptrace interface
        Smack: unify all ptrace accesses in the smack
        Smack: fix the subject/object order in smack_ptrace_traceme()
        Minor improvement of 'smack_sb_kern_mount'
        smack: fix key permission verification
        KEYS: Move the flags representing required permission to linux/key.h
      fad0701e
    • Linus Torvalds's avatar
      Merge tag 'upstream-3.16-rc1-v2' of git://git.infradead.org/linux-ubifs · d53b47c0
      Linus Torvalds authored
      Pull UBIFS updates from Artem Bityutskiy:
       "This contains several UBIFS fixes.  One of them fixes a race condition
        between the mmap page fault path and fsync.  Another just removes a
        bogus assertion from the UBIFS memory shrinker.
      
        UBIFS also started honoring the MS_SILENT mount flag, so now it won't
        print many I/O errors when user-space just tries to probe for the FS.
      
        Rest of the changes are rather minor UBI/UBIFS fixes, improvements,
        and clean-ups"
      
      * tag 'upstream-3.16-rc1-v2' of git://git.infradead.org/linux-ubifs:
        UBIFS: Add an assertion for clean_zn_cnt
        UBIFS: respect MS_SILENT mount flag
        UBIFS: Remove incorrect assertion in shrink_tnc()
        UBIFS: fix debugging check
        UBIFS: add missing ui pointer in debugging code
        UBI: block: Fix error path on alloc_workqueue failure
        UBIFS: Fix dump messages in ubifs_dump_lprops
        UBI: fix rb_tree node comparison in add_map
        UBIFS: Remove unused variables in ubifs_budget_space
        UBI: weaken the 'exclusive' constraint when opening volumes to rename
        UBIFS: fix an mmap and fsync race condition
      d53b47c0
    • Andy Lutomirski's avatar
      auditsc: audit_krule mask accesses need bounds checking · a3c54931
      Andy Lutomirski authored
      Fixes an easy DoS and possible information disclosure.
      
      This does nothing about the broken state of x32 auditing.
      
      eparis: If the admin has enabled auditd and has specifically loaded
      audit rules.  This bug has been around since before git.  Wow...
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarAndy Lutomirski <luto@amacapital.net>
      Signed-off-by: default avatarEric Paris <eparis@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a3c54931
    • Mateusz Guzik's avatar
      NFS: populate ->net in mount data when remounting · a914722f
      Mateusz Guzik authored
      Otherwise the kernel oopses when remounting with IPv6 server because
      net is dereferenced in dev_get_by_name.
      
      Use net ns of current thread so that dev_get_by_name does not operate on
      foreign ns. Changing the address is prohibited anyway so this should not
      affect anything.
      Signed-off-by: default avatarMateusz Guzik <mguzik@redhat.com>
      Cc: linux-nfs@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: stable@vger.kernel.org # 3.4+
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      a914722f
    • Weston Andros Adamson's avatar
      pnfs: fix lockup caused by pnfs_generic_pg_test · c5e20cb7
      Weston Andros Adamson authored
      end_offset and req_offset both return u64 - avoid casting to u32
      until it's needed, when it's less than the (u32) size returned by
      nfs_generic_pg_test.
      
      Also, fix the comments in pnfs_generic_pg_test.
      
      Running the cthon04 special tests caused this lockup in the
      "write/read at 2GB, 4GB edges" test when running against a file layout server:
      
      BUG: soft lockup - CPU#0 stuck for 22s! [bigfile2:823]
      Modules linked in: nfs_layout_nfsv41_files rpcsec_gss_krb5 nfsv4 nfs fscache ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_mangle ip6table_filter ip6_tables iptable_nat nf_nat_ipv4 nf_nat iptable_mangle ppdev crc32c_intel aesni_intel aes_x86_64 glue_helper lrw gf128mul ablk_helper cryptd serio_raw e1000 shpchp i2c_piix4 i2c_core parport_pc parport nfsd auth_rpcgss oid_registry exportfs nfs_acl lockd sunrpc btrfs xor zlib_deflate raid6_pq mptspi scsi_transport_spi mptscsih mptbase ata_generic floppy autofs4
      irq event stamp: 205958
      hardirqs last  enabled at (205957): [<ffffffff814a62dc>] restore_args+0x0/0x30
      hardirqs last disabled at (205958): [<ffffffff814ad96a>] apic_timer_interrupt+0x6a/0x80
      softirqs last  enabled at (205956): [<ffffffff8103ffb2>] __do_softirq+0x1ea/0x2ab
      softirqs last disabled at (205951): [<ffffffff8104026d>] irq_exit+0x44/0x9a
      CPU: 0 PID: 823 Comm: bigfile2 Not tainted 3.15.0-rc1-branch-pgio_plus+ #3
      Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/31/2013
      task: ffff8800792ec480 ti: ffff880078c4e000 task.ti: ffff880078c4e000
      RIP: 0010:[<ffffffffa02ce51f>]  [<ffffffffa02ce51f>] nfs_page_group_unlock+0x3e/0x4b [nfs]
      RSP: 0018:ffff880078c4fab0  EFLAGS: 00000202
      RAX: 0000000000000fff RBX: ffff88006bf83300 RCX: 0000000000000000
      RDX: 0000000000000001 RSI: 0000000000000000 RDI: ffff88006bf83300
      RBP: ffff880078c4fab8 R08: 0000000000000001 R09: 0000000000000000
      R10: ffffffff8249840c R11: 0000000000000000 R12: 0000000000000035
      R13: ffff88007ffc72d8 R14: 0000000000000001 R15: 0000000000000000
      FS:  00007f45f11b7740(0000) GS:ffff88007f200000(0000) knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 00007f3a8cb632d0 CR3: 000000007931c000 CR4: 00000000001407f0
      Stack:
       ffff88006bf832c0 ffff880078c4fb00 ffffffffa02cec22 ffff880078c4fad8
       00000fff810f9d99 ffff880078c4fca0 ffff88006bf832c0 ffff88006bf832c0
       ffff880078c4fca0 ffff880078c4fd60 ffff880078c4fb28 ffffffffa02cee34
      Call Trace:
       [<ffffffffa02cec22>] __nfs_pageio_add_request+0x298/0x34f [nfs]
       [<ffffffffa02cee34>] nfs_pageio_add_request+0x1f/0x42 [nfs]
       [<ffffffffa02d1722>] nfs_do_writepage+0x1b5/0x1e4 [nfs]
       [<ffffffffa02d1764>] nfs_writepages_callback+0x13/0x25 [nfs]
       [<ffffffffa02d1751>] ? nfs_do_writepage+0x1e4/0x1e4 [nfs]
       [<ffffffff810eb32d>] write_cache_pages+0x254/0x37f
       [<ffffffffa02d1751>] ? nfs_do_writepage+0x1e4/0x1e4 [nfs]
       [<ffffffff8149cf9e>] ? printk+0x54/0x56
       [<ffffffff810eacca>] ? __set_page_dirty_nobuffers+0x22/0xe9
       [<ffffffffa016d864>] ? put_rpccred+0x38/0x101 [sunrpc]
       [<ffffffffa02d1ae1>] nfs_writepages+0xb4/0xf8 [nfs]
       [<ffffffff810ec59c>] do_writepages+0x21/0x2f
       [<ffffffff810e36e8>] __filemap_fdatawrite_range+0x55/0x57
       [<ffffffff810e374a>] filemap_write_and_wait_range+0x2d/0x5b
       [<ffffffffa030ba0a>] nfs4_file_fsync+0x3a/0x98 [nfsv4]
       [<ffffffff8114ee3c>] vfs_fsync_range+0x18/0x20
       [<ffffffff810e40c2>] generic_file_aio_write+0xa7/0xbd
       [<ffffffffa02c5c6b>] nfs_file_write+0xf0/0x170 [nfs]
       [<ffffffff81129215>] do_sync_write+0x59/0x78
       [<ffffffff8112956c>] vfs_write+0xab/0x107
       [<ffffffff81129c8b>] SyS_write+0x49/0x7f
       [<ffffffff814acd12>] system_call_fastpath+0x16/0x1b
      Reported-by: default avatarAnna Schumaker <Anna.Schumaker@netapp.com>
      Signed-off-by: default avatarWeston Andros Adamson <dros@primarydata.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      c5e20cb7
    • Linus Torvalds's avatar
      Merge tag 'for-f2fs-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 64b2d1fb
      Linus Torvalds authored
      Pull f2fs updates from Jaegeuk Kim:
       "In this round, there is no special interesting feature, but we've
        investigated a couple of tuning points with respect to the I/O flow.
        Several major bug fixes and a bunch of clean-ups also have been made.
      
        This patch-set includes the following major enhancement patches:
         - enhance wait_on_page_writeback
         - support SEEK_DATA and SEEK_HOLE
         - enhance readahead flows
         - enhance IO flushes
         - support fiemap
         - add some tracepoints
      
        The other bug fixes are as follows:
         - fix to support a large volume > 2TB correctly
         - recovery bug fix wrt fallocated space
         - fix recursive lock on xattr operations
         - fix some cases on the remount flow
      
        And, there are a bunch of cleanups"
      
      * tag 'for-f2fs-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (52 commits)
        f2fs: support f2fs_fiemap
        f2fs: avoid not to call remove_dirty_inode
        f2fs: recover fallocated space
        f2fs: fix to recover data written by dio
        f2fs: large volume support
        f2fs: avoid crash when trace f2fs_submit_page_mbio event in ra_sum_pages
        f2fs: avoid overflow when large directory feathure is enabled
        f2fs: fix recursive lock by f2fs_setxattr
        MAINTAINERS: add a co-maintainer from samsung for F2FS
        MAINTAINERS: change the email address for f2fs
        f2fs: use inode_init_owner() to simplify codes
        f2fs: avoid to use slab memory in f2fs_issue_flush for efficiency
        f2fs: add a tracepoint for f2fs_read_data_page
        f2fs: add a tracepoint for f2fs_write_{meta,node,data}_pages
        f2fs: add a tracepoint for f2fs_write_{meta,node,data}_page
        f2fs: add a tracepoint for f2fs_write_end
        f2fs: add a tracepoint for f2fs_write_begin
        f2fs: fix checkpatch warning
        f2fs: deactivate inode page if the inode is evicted
        f2fs: decrease the lock granularity during write_begin
        ...
      64b2d1fb
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · b1cce803
      Linus Torvalds authored
      Pull CIFS fixes from Steve French.
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        CIFS: Fix memory leaks in SMB2_open
        cifs: ensure that vol->username is not NULL before running strlen on it
        Clarify SMB2/SMB3 create context and add missing ones
        Do not send ClientGUID on SMB2.02 dialect
        cifs: Set client guid on per connection basis
        fs/cifs/netmisc.c: convert printk to pr_foo()
        fs/cifs/cifs.c: replace seq_printf by seq_puts
        Update cifs version number to 2.03
        fs: cifs: new helper: file_inode(file)
        cifs: fix potential races in cifs_revalidate_mapping
        cifs: new helper function: cifs_revalidate_mapping
        cifs: convert booleans in cifsInodeInfo to a flags field
        cifs: fix cifs_uniqueid_to_ino_t not to ever return 0
      b1cce803
    • Linus Torvalds's avatar
      Merge tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 1c54fc1e
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This patch consists of the usual driver updates (qla2xxx, qla4xxx,
        lpfc, be2iscsi, fnic, ufs, NCR5380) The NCR5380 is the addition to
        maintained status of a long neglected driver for older hardware.  In
        addition there are a lot of minor fixes and cleanups and some more
        updates to make scsi mq ready"
      
      * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (130 commits)
        include/scsi/osd_protocol.h: remove unnecessary __constant
        mvsas: Recognise device/subsystem 9485/9485 as 88SE9485
        Revert "be2iscsi: Fix processing cqe for cxn whose endpoint is freed"
        mptfusion: fix msgContext in mptctl_hp_hostinfo
        acornscsi: remove linked command support
        scsi/NCR5380: dprintk macro
        fusion: Remove use of DEF_SCSI_QCMD
        fusion: Add free msg frames to the head, not tail of list
        mpt2sas: Add free smids to the head, not tail of list
        mpt2sas: Remove use of DEF_SCSI_QCMD
        mpt2sas: Remove uses of serial_number
        mpt3sas: Remove use of DEF_SCSI_QCMD
        mpt3sas: Remove uses of serial_number
        qla2xxx: Use kmemdup instead of kmalloc + memcpy
        qla4xxx: Use kmemdup instead of kmalloc + memcpy
        qla2xxx: fix incorrect debug printk
        be2iscsi: Bump the driver version
        be2iscsi: Fix processing cqe for cxn whose endpoint is freed
        be2iscsi: Fix destroy MCC-CQ before MCC-EQ is destroyed
        be2iscsi: Fix memory corruption in MBX path
        ...
      1c54fc1e
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · f4f9b8fc
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
       "A big update to the Atmel touchscreen driver, devm support for polled
        input devices, several drivers have been converted to using managed
        resources, and assorted driver fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (87 commits)
        Input: synaptics - fix resolution for manually provided min/max
        Input: atmel_mxt_ts - fix invalid return from mxt_get_bootloader_version
        Input: max8997_haptic - add error handling for regulator and pwm
        Input: elantech - don't set bit 1 of reg_10 when the no_hw_res quirk is set
        Input: elantech - deal with clickpads reporting right button events
        Input: edt-ft5x06 - fix an i2c write for M09 support
        Input: omap-keypad - remove platform data support
        ARM: OMAP2+: remove unused omap4-keypad file and code
        Input: ab8500-ponkey - switch to using managed resources
        Input: max8925_onkey - switch to using managed resources
        Input: 88pm860x-ts - switch to using managed resources
        Input: 88pm860x_onkey - switch to using managed resources
        Input: intel-mid-touch - switch to using managed resources
        Input: wacom - process outbound for newer Cintiqs
        Input: wacom - set stylus_in_proximity when pen is in range
        DTS: ARM: OMAP3-N900: Add tsc2005 support
        Input: tsc2005 - add DT support
        Input: add common DT binding for touchscreens
        Input: jornada680_kbd - switch top using managed resources
        Input: adp5520-keys - switch to using managed resources
        ...
      f4f9b8fc
    • Linus Torvalds's avatar
      Merge tag 'fbdev-omap-dt-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · 9894e6d9
      Linus Torvalds authored
      Pull OMAP DT fbdev updates from Tomi Valkeinen:
       "Here are display related device tree data changes for OMAP.  They are
        based on an already merged branch to satisfy the dependencies for the
        dts file changes.
      
        Add OMAP DT data:
         - omap5 display subsystem
         - display data for omap5 uEVM board
         - am43xx display subsystem
         - display data for am43xx ePOS and GP boards (LCD only)
         - display data for GTA04 board
         - display data for overo board
         - display data for duovero-parlor board
         - display data for omap3 evm and ldp boards"
      
      * tag 'fbdev-omap-dt-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
        ARM: omap5.dtsi: Add audio related parameters to hdmi node
        ARM: omap4.dtsi: Add audio related parametes to hdmi node
        ARM: dts: duovero-parlor: Add HDMI output
        ARM: dts: overo: Add support for 3.5'' LCD output
        ARM: dts: overo: Add support for 4.3'' LCD output
        ARM: dts: overo: Add support for DVI output
        ARM: dts: Add LCD panel sharp ls037v7dw01 support for omap3-evm and ldp
        ARM: dts: omap3-gta04: Add display support
        ARM: dts: omap5-uevm.dts: add display nodes
        ARM: dts: omap5-uevm.dts: add tca6424a
        ARM: dts: omap5.dtsi: add DSS nodes
        ARM: dts: am43x-epos-evm: add LCD data
        ARM: dts: am437x-gp-evm: add LCD data
        ARM: dts: am4372.dtsi: add DSS information
      9894e6d9
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 82abb273
      Linus Torvalds authored
      Pull MIPS updates from Ralf Baechle:
       - three fixes for 3.15 that didn't make it in time
       - limited Octeon 3 support.
       - paravirtualization support
       - improvment to platform support for Netlogix SOCs.
       - add support for powering down the Malta eval board in software
       - add many instructions to the in-kernel microassembler.
       - add support for the BPF JIT.
       - minor cleanups of the BCM47xx code.
       - large cleanup of math emu code resulting in significant code size
         reduction, better readability of the code and more accurate
         emulation.
       - improvments to the MIPS CPS code.
       - support C3 power status for the R4k count/compare clock device.
       - improvments to the GIO support for older SGI workstations.
       - increase number of supported CPUs to 256; this can be reached on
         certain embedded multithreaded ccNUMA configurations.
       - various small cleanups, updates and fixes
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (173 commits)
        MIPS: IP22/IP28: Improve GIO support
        MIPS: Octeon: Add twsi interrupt initialization for OCTEON 3XXX, 5XXX, 63XX
        DEC: Document the R4k MB ASIC mini interrupt controller
        DEC: Add self as the maintainer
        MIPS: Add microMIPS MSA support.
        MIPS: Replace calls to obsolete strict_strto call with kstrto* equivalents.
        MIPS: Replace obsolete strict_strto call with kstrto
        MIPS: BFP: Simplify code slightly.
        MIPS: Call find_vma with the mmap_sem held
        MIPS: Fix 'write_msa_##' inline macro.
        MIPS: Fix MSA toolchain support detection.
        mips: Update the email address of Geert Uytterhoeven
        MIPS: Add minimal defconfig for mips_paravirt
        MIPS: Enable build for new system 'paravirt'
        MIPS: paravirt: Add pci controller for virtio
        MIPS: Add code for new system 'paravirt'
        MIPS: Add functions for hypervisor call
        MIPS: OCTEON: Add OCTEON3 to __get_cpu_type
        MIPS: Add function get_ebase_cpunum
        MIPS: Add minimal support for OCTEON3 to c-r4k.c
        ...
      82abb273
    • Linus Torvalds's avatar
      Merge tag 'arc-v3.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 9b651cc2
      Linus Torvalds authored
      Pull ARC updates from Vineet Gupta:
       "Nothing too exciting here, just minor fixes/cleanup.  Only noteworthy
        ones are:
      
         - Moving cache disabling to early boot
         - ARC UART enabled only if earlyprintk setup in cmdline"
      
      * tag 'arc-v3.16-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: Disable caches in early boot if so configured
        ARC: [arcfpga] Early ARC UART to be only activated by cmdline
        ARC: [arcfpga] Get rid of legacy BVCI latency unit support
        ARC: remove duplicate header exports
        ARC: arc_local_timer_setup() need not pass own cpu id
        ARC: Fixed spelling errors within comments
        ARC: make start_thread() out-of-line
        ARC: fix mmuv2 warning
        ARC: [SMP] ISS SMP extension bitrot
      9b651cc2
  2. 09 Jun, 2014 12 commits
    • Linus Torvalds's avatar
      Merge tag 'trace-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 214b9313
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "Lots of tweaks, small fixes, optimizations, and some helper functions
        to help out the rest of the kernel to ease their use of trace events.
      
        The big change for this release is the allowing of other tracers, such
        as the latency tracers, to be used in the trace instances and allow
        for function or function graph tracing to be in the top level
        simultaneously"
      
      * tag 'trace-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (44 commits)
        tracing: Fix memory leak on instance deletion
        tracing: Fix leak of ring buffer data when new instances creation fails
        tracing/kprobes: Avoid self tests if tracing is disabled on boot up
        tracing: Return error if ftrace_trace_arrays list is empty
        tracing: Only calculate stats of tracepoint benchmarks for 2^32 times
        tracing: Convert stddev into u64 in tracepoint benchmark
        tracing: Introduce saved_cmdlines_size file
        tracing: Add __get_dynamic_array_len() macro for trace events
        tracing: Remove unused variable in trace_benchmark
        tracing: Eliminate double free on failure of allocation on boot up
        ftrace/x86: Call text_ip_addr() instead of the duplicated code
        tracing: Print max callstack on stacktrace bug
        tracing: Move locking of trace_cmdline_lock into start/stop seq calls
        tracing: Try again for saved cmdline if failed due to locking
        tracing: Have saved_cmdlines use the seq_read infrastructure
        tracing: Add tracepoint benchmark tracepoint
        tracing: Print nasty banner when trace_printk() is in use
        tracing: Add funcgraph_tail option to print function name after closing braces
        tracing: Eliminate duplicate TRACE_GRAPH_PRINT_xx defines
        tracing: Add __bitmask() macro to trace events to cpumasks and other bitmasks
        ...
      214b9313
    • Linus Torvalds's avatar
      Merge branch 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 14208b0e
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
       "A lot of activities on cgroup side.  Heavy restructuring including
        locking simplification took place to improve the code base and enable
        implementation of the unified hierarchy, which currently exists behind
        a __DEVEL__ mount option.  The core support is mostly complete but
        individual controllers need further work.  To explain the design and
        rationales of the the unified hierarchy
      
              Documentation/cgroups/unified-hierarchy.txt
      
        is added.
      
        Another notable change is css (cgroup_subsys_state - what each
        controller uses to identify and interact with a cgroup) iteration
        update.  This is part of continuing updates on css object lifetime and
        visibility.  cgroup started with reference count draining on removal
        way back and is now reaching a point where csses behave and are
        iterated like normal refcnted objects albeit with some complexities to
        allow distinguishing the state where they're being deleted.  The css
        iteration update isn't taken advantage of yet but is planned to be
        used to simplify memcg significantly"
      
      * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (77 commits)
        cgroup: disallow disabled controllers on the default hierarchy
        cgroup: don't destroy the default root
        cgroup: disallow debug controller on the default hierarchy
        cgroup: clean up MAINTAINERS entries
        cgroup: implement css_tryget()
        device_cgroup: use css_has_online_children() instead of has_children()
        cgroup: convert cgroup_has_live_children() into css_has_online_children()
        cgroup: use CSS_ONLINE instead of CGRP_DEAD
        cgroup: iterate cgroup_subsys_states directly
        cgroup: introduce CSS_RELEASED and reduce css iteration fallback window
        cgroup: move cgroup->serial_nr into cgroup_subsys_state
        cgroup: link all cgroup_subsys_states in their sibling lists
        cgroup: move cgroup->sibling and ->children into cgroup_subsys_state
        cgroup: remove cgroup->parent
        device_cgroup: remove direct access to cgroup->children
        memcg: update memcg_has_children() to use css_next_child()
        memcg: remove tasks/children test from mem_cgroup_force_empty()
        cgroup: remove css_parent()
        cgroup: skip refcnting on normal root csses and cgrp_dfl_root self css
        cgroup: use cgroup->self.refcnt for cgroup refcnting
        ...
      14208b0e
    • Linus Torvalds's avatar
      Merge branch 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 6ea4fa70
      Linus Torvalds authored
      Pull libata updates from Tejun Heo:
       "Nothing too interesting - another ahci platform driver variant,
        additional controller support, minor fixes and cleanups"
      
      * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        ahci: Add Device ID for HighPoint RocketRaid 642L
        ata: ep93xx: use dmaengine_prep_slave_sg api instead of internal callback
        ahci: add PCI ID for Marvell 88SE91A0 SATA Controller
        sata_fsl: remove check for CONFIG_MPC8315_DS
        ahci: add support for Hisilicon sata
        libahci_platform: add host_flags parameter in ahci_platform_init_host()
        ata: ahci: append new hflag AHCI_HFLAG_NO_FBS
        ata: use CONFIG_PM_SLEEP instead of CONFIG_PM where applicable in host drivers
        ata: ahci_mvebu: new driver for Marvell Armada 380 AHCI interfaces
        Documentation: dt-bindings: reformat and order list of ahci-platform compatibles
        libata-sff: remove dead code
        ata: SATL compliance for Inquiry Product Revision
        pata_octeon_cf: use devm_kzalloc() to allocate cf_port
      6ea4fa70
    • Linus Torvalds's avatar
      Merge branch 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · da85d191
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
       "Lai simplified worker destruction path and internal workqueue locking
        and there are some other minor changes.
      
        Except for the removal of some long-deprecated interfaces which
        haven't had any in-kernel user for quite a while, there shouldn't be
        any difference to workqueue users"
      
      * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        kernel/workqueue.c: pr_warning/pr_warn & printk/pr_info
        workqueue: remove the confusing POOL_FREEZING
        workqueue: rename first_worker() to first_idle_worker()
        workqueue: remove unused work_clear_pending()
        workqueue: remove unused WORK_CPU_END
        workqueue: declare system_highpri_wq
        workqueue: use generic attach/detach routine for rescuers
        workqueue: separate pool-attaching code out from create_worker()
        workqueue: rename manager_mutex to attach_mutex
        workqueue: narrow the protection range of manager_mutex
        workqueue: convert worker_idr to worker_ida
        workqueue: separate iteration role from worker_idr
        workqueue: destroy worker directly in the idle timeout handler
        workqueue: async worker destruction
        workqueue: destroy_worker() should destroy idle workers only
        workqueue: use manager lock only to protect worker_idr
        workqueue: Remove deprecated system_nrt[_freezable]_wq
        workqueue: Remove deprecated flush[_delayed]_work_sync()
        kernel/workqueue.c: pr_warning/pr_warn & printk/pr_info
        workqueue: simplify wq_update_unbound_numa() by jumping to use_dfl_pwq if the target cpumask equals wq's
      da85d191
    • Linus Torvalds's avatar
      Merge branch 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · 68a29ef2
      Linus Torvalds authored
      Pull percpu updates from Tejun Heo:
       "Nothing too exciting.  percpu_ref is going through some interface
        changes and getting new features with more changes in the pipeline but
        given its young age and few users, it's very low impact"
      
      * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu-refcount: implement percpu_ref_tryget()
        percpu-refcount: rename percpu_ref_tryget() to percpu_ref_tryget_live()
        percpu: Replace __get_cpu_var with this_cpu_ptr
      68a29ef2
    • J. Bruce Fields's avatar
      nfsd4: fix FREE_STATEID lockowner leak · 48385408
      J. Bruce Fields authored
      27b11428 ("nfsd4: remove lockowner when removing lock stateid")
      introduced a memory leak.
      
      Cc: stable@vger.kernel.org
      Reported-by: default avatarJeff Layton <jeff.layton@primarydata.com>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      48385408
    • Jiri Kosina's avatar
      IB/mlx4: Fix gfp passing in create_qp_common() · 6fcd8d0d
      Jiri Kosina authored
      There are two kzalloc() calls which were not converted to use value of
      gfp passed to create_qp_common() instead of using hardcoded GFP_KERNEL
      in 40f2287b ("IB/mlx4: Implement IB_QP_CREATE_USE_GFP_NOIO").  Fix
      this by passing gfp value down properly.
      Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      Signed-off-by: default avatarRoland Dreier <roland@purestorage.com>
      6fcd8d0d
    • Vinod Koul's avatar
      Merge branch 'topic/xilinx' into for-linus · 06822788
      Vinod Koul authored
      06822788
    • Vinod Koul's avatar
      Merge branch 'topic/dw' into for-linus · 3c814be9
      Vinod Koul authored
      3c814be9
    • James Bottomley's avatar
    • Tom Haynes's avatar
      f383b7e8
    • Tom Haynes's avatar
      NFSv4.1: Comment is now wrong and redundant to code · bf96bc0b
      Tom Haynes authored
      The save of the write offset was removed some time ago, so that
      part of the comment is bogus.
      
      The remainder is pretty self-evident.
      
      So off with it!
      Signed-off-by: default avatarTom Haynes <Thomas.Haynes@primarydata.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      bf96bc0b
  3. 08 Jun, 2014 5 commits
    • Linus Torvalds's avatar
      Merge tag 'for-linus-3.16-merge-window' of... · 963649d7
      Linus Torvalds authored
      Merge tag 'for-linus-3.16-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs
      
      Pull 9p fixes from Eric Van Hensbergen:
       "Two bug fixes, one in xattr error path and the other in parsing
        major/minor numbers from devices"
      
      * tag 'for-linus-3.16-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
        9P: fix return value in v9fs_fid_xattr_set
        fs/9p: adjust sscanf parameters accordingly to the variable types
      963649d7
    • Rik van Riel's avatar
      numa,sched: fix load_to_imbalanced logic inversion · 1662867a
      Rik van Riel authored
      This function is supposed to return true if the new load imbalance is
      worse than the old one.  It didn't.  I can only hope brown paper bags
      are in style.
      
      Now things converge much better on both the 4 node and 8 node systems.
      
      I am not sure why this did not seem to impact specjbb performance on the
      4 node system, which is the system I have full-time access to.
      
      This bug was introduced recently, with commit e63da036 ("sched/numa:
      Allow task switch if load imbalance improves")
      Signed-off-by: default avatarRik van Riel <riel@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      1662867a
    • Linus Torvalds's avatar
      Don't trigger congestion wait on dirty-but-not-writeout pages · b738d764
      Linus Torvalds authored
      shrink_inactive_list() used to wait 0.1s to avoid congestion when all
      the pages that were isolated from the inactive list were dirty but not
      under active writeback.  That makes no real sense, and apparently causes
      major interactivity issues under some loads since 3.11.
      
      The ostensible reason for it was to wait for kswapd to start writing
      pages, but that seems questionable as well, since the congestion wait
      code seems to trigger for kswapd itself as well.  Also, the logic behind
      delaying anything when we haven't actually started writeback is not
      clear - it only delays actually starting that writeback.
      
      We'll still trigger the congestion waiting if
      
       (a) the process is kswapd, and we hit pages flagged for immediate
           reclaim
      
       (b) the process is not kswapd, and the zone backing dev writeback is
           actually congested.
      
      This probably needs to be revisited, but as it is this fixes a reported
      regression.
      Reported-by: default avatarFelipe Contreras <felipe.contreras@gmail.com>
      Pinpointed-by: default avatarHillf Danton <dhillf@gmail.com>
      Cc: Michal Hocko <mhocko@suse.cz>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Mel Gorman <mgorman@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b738d764
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · f8409abd
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
       "Clean ups and miscellaneous bug fixes, in particular for the new
        collapse_range and zero_range fallocate functions.  In addition,
        improve the scalability of adding and remove inodes from the orphan
        list"
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (25 commits)
        ext4: handle symlink properly with inline_data
        ext4: fix wrong assert in ext4_mb_normalize_request()
        ext4: fix zeroing of page during writeback
        ext4: remove unused local variable "stored" from ext4_readdir(...)
        ext4: fix ZERO_RANGE test failure in data journalling
        ext4: reduce contention on s_orphan_lock
        ext4: use sbi in ext4_orphan_{add|del}()
        ext4: use EXT_MAX_BLOCKS in ext4_es_can_be_merged()
        ext4: add missing BUFFER_TRACE before ext4_journal_get_write_access
        ext4: remove unnecessary double parentheses
        ext4: do not destroy ext4_groupinfo_caches if ext4_mb_init() fails
        ext4: make local functions static
        ext4: fix block bitmap validation when bigalloc, ^flex_bg
        ext4: fix block bitmap initialization under sparse_super2
        ext4: find the group descriptors on a 1k-block bigalloc,meta_bg filesystem
        ext4: avoid unneeded lookup when xattr name is invalid
        ext4: fix data integrity sync in ordered mode
        ext4: remove obsoleted check
        ext4: add a new spinlock i_raw_lock to protect the ext4's raw inode
        ext4: fix locking for O_APPEND writes
        ...
      f8409abd
    • Linus Torvalds's avatar
      Merge tag 'llvmlinux-for-v3.16' of git://git.linuxfoundation.org/llvmlinux/kernel · b20dcab9
      Linus Torvalds authored
      Pull LLVM patches from Behan Webster:
       "Next set of patches to support compiling the kernel with clang.
        They've been soaking in linux-next since the last merge window.
      
        More still in the works for the next merge window..."
      
      * tag 'llvmlinux-for-v3.16' of git://git.linuxfoundation.org/llvmlinux/kernel:
        arm, unwind, LLVMLinux: Enable clang to be used for unwinding the stack
        ARM: LLVMLinux: Change "extern inline" to "static inline" in glue-cache.h
        all: LLVMLinux: Change DWARF flag to support gcc and clang
        net: netfilter: LLVMLinux: vlais-netfilter
        crypto: LLVMLinux: aligned-attribute.patch
      b20dcab9