1. 09 Jul, 2015 4 commits
    • Kirill A. Shutemov's avatar
      mm: avoid setting up anonymous pages into file mapping · 6b7339f4
      Kirill A. Shutemov authored
      Reading page fault handler code I've noticed that under right
      circumstances kernel would map anonymous pages into file mappings: if
      the VMA doesn't have vm_ops->fault() and the VMA wasn't fully populated
      on ->mmap(), kernel would handle page fault to not populated pte with
      do_anonymous_page().
      
      Let's change page fault handler to use do_anonymous_page() only on
      anonymous VMA (->vm_ops == NULL) and make sure that the VMA is not
      shared.
      
      For file mappings without vm_ops->fault() or shred VMA without vm_ops,
      page fault on pte_none() entry would lead to SIGBUS.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Acked-by: default avatarOleg Nesterov <oleg@redhat.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Willy Tarreau <w@1wt.eu>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      6b7339f4
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-4.2-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 883a2dfd
      Linus Torvalds authored
      Pull power management and ACPI updates from Rafael Wysocki:
       "These are fixes on top of the previous PM+ACPI pull requests
        (including one fix for a 4.1 regression) and two commits adding
        _CLS-based device enumeration support to the ACPI core and the ATA
        subsystem that waited for the latest ACPICA changes to be merged.
      
        Specifics:
      
         - Fix for an ACPI resources management regression introduced during
           the 4.1 cycle (that unfortunately went into -stable) effectively
           reverting the bad commit along with the recent fixups on top of it
           and using an alternative approach to address the underlying issue
           (Rafael J Wysocki).
      
         - Fix for a memory leak and an incorrect return value in an error
           code path in the ACPI LPSS (Low-Power Subsystem) driver (Rafael J
           Wysocki).
      
         - Fix for a leftover dangling pointer in an error code path in the
           new wakeup IRQ support code (Rafael J Wysocki).
      
         - Fix to prevent infinite loops (due to errors in other places) from
           happening in the core generic PM domains support code (Geert
           Uytterhoeven).
      
         - Hibernation documentation update/clarification (Uwe Geuder).
      
         - Support for _CLS-based device enumeration in the ACPI core and in
           the ATA subsystem (Suravee Suthikulpanit)"
      
      * tag 'pm+acpi-4.2-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PM / wakeirq: Avoid setting power.wakeirq too hastily
        ata: ahci_platform: Add ACPI _CLS matching
        ACPI / scan: Add support for ACPI _CLS device matching
        PM / hibernate: clarify resume documentation
        PM / Domains: Avoid infinite loops in attach/detach code
        ACPI / LPSS: Fix up acpi_lpss_create_device()
        ACPI / PNP: Reserve ACPI resources at the fs_initcall_sync stage
      883a2dfd
    • Linus Torvalds's avatar
      Merge branch 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile · 331c5841
      Linus Torvalds authored
      Pull arch/tile fix from Chris Metcalf:
       "This fix eliminates a "section mismatch" warning caused by the new
        __ex_table checking code in modpost"
      
      * 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        modpost: work correctly with tile coldtext sections
      331c5841
    • Linus Torvalds's avatar
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 9d993ccb
      Linus Torvalds authored
      Pull module fix from Rusty Russell:
       "Single fix: missing rbtree removal in the module load failure path.
        Easy to trigger with bad params.
      
        Thanks to Peter Zijlstra and Arthur Marsh for going around on this
        one"
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
        module: Fix load_module() error path
      9d993ccb
  2. 08 Jul, 2015 3 commits
  3. 07 Jul, 2015 8 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm · d6ac4ffc
      Linus Torvalds authored
      Pull ARM updates from Russell King:
       "These are late by a week; they should have been merged during the
        merge window, but unfortunately, the ARM kernel build/boot farms were
        indicating random failures, and it wasn't clear whether the cause was
        something in these changes or something during the merge window.
      
        This is a set of merge window fixes with some documentation additions"
      
      * 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: avoid unwanted GCC memset()/memcpy() optimisations for IO variants
        ARM: pgtable: document mapping types
        ARM: io: convert ioremap*() to functions
        ARM: io: fix ioremap_wt() implementation
        ARM: io: document ARM specific behaviour of ioremap*() implementations
        ARM: fix lockdep unannotated irqs-off warning
        ARM: 8397/1: fix vdsomunge not to depend on glibc specific error.h
        ARM: add helpful message when truncating physical memory
        ARM: add help text for HIGHPTE configuration entry
        ARM: fix DEBUG_SET_MODULE_RONX build dependencies
        ARM: 8396/1: use phys_addr_t in pfn_to_kaddr()
        ARM: 8394/1: update memblock limit after mapping lowmem
        ARM: 8393/1: smp: Fix suspicious RCU usage with ipi tracepoints
      d6ac4ffc
    • Tomas Winkler's avatar
      mei: nfc: fix deadlock on shutdown/suspend path · 4f273959
      Tomas Winkler authored
      In function mei_nfc_host_exit mei_cl_remove_device cannot be called
      under the device mutex as device removing flow invokes the device driver
      remove handler that calls in turn to mei_cl_disable_device which
      naturally acquires the device mutex.
      
      Also remove mei_cl_bus_remove_devices which has the same issue, but is
      never executed as currently the only device on the mei client bus is NFC
      and a new device cannot be easily added till the bus revamp is
      completed.
      
      This fixes regression caused by commit be9b720a ("mei_phy: move all
      nfc logic from mei driver to nfc")
      
      Prior to this change the nfc driver remove handler called to no-op
      disable function while actual nfc device was disabled directly from the
      mei driver.
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Acked-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Samuel Ortiz <sameo@linux.intel.com>
      Signed-off-by: default avatarTomas Winkler <tomas.winkler@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4f273959
    • Rafael J. Wysocki's avatar
      Merge branch 'acpi-scan' · 8076ca48
      Rafael J. Wysocki authored
      * acpi-scan:
        ata: ahci_platform: Add ACPI _CLS matching
        ACPI / scan: Add support for ACPI _CLS device matching
      8076ca48
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-pnp', 'acpi-soc', 'pm-domains' and 'pm-sleep' · d0aee67f
      Rafael J. Wysocki authored
      * acpi-pnp:
        ACPI / PNP: Reserve ACPI resources at the fs_initcall_sync stage
      
      * acpi-soc:
        ACPI / LPSS: Fix up acpi_lpss_create_device()
      
      * pm-domains:
        PM / Domains: Avoid infinite loops in attach/detach code
      
      * pm-sleep:
        PM / hibernate: clarify resume documentation
      d0aee67f
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-wakeirq' · 3fc7aeeb
      Rafael J. Wysocki authored
      * pm-wakeirq:
        PM / wakeirq: Avoid setting power.wakeirq too hastily
      3fc7aeeb
    • Russell King's avatar
      06be5eef
    • Rafael J. Wysocki's avatar
      PM / wakeirq: Avoid setting power.wakeirq too hastily · 6d3dab7d
      Rafael J. Wysocki authored
      If dev_pm_attach_wake_irq() fails, the device's power.wakeirq field
      should not be set to point to the struct wake_irq passed to that
      function, as that object will be freed going forward.
      
      For this reason, make dev_pm_attach_wake_irq() first call
      device_wakeup_attach_irq() and only set the device's power.wakeirq
      field if that's successful.
      
      That requires device_wakeup_attach_irq() to be called under the
      device's power.lock lock, but since dev_pm_attach_wake_irq() is
      the only caller of it, the requisite changes are easy to make.
      
      Fixes: 4990d4fe (PM / Wakeirq: Add automated device wake IRQ handling)
      Reported-by: default avatarFelipe Balbi <balbi@ti.com>
      Tested-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      6d3dab7d
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c7e9ad7d
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
      
       - fix the perf build, by fixing the rbtree.c sharing bug between kernel
         and tools/perf by creating a local copy of rbtree.c (more will be
         done for v4.3)
      
       - fix an AUX buffer (Intel-PT support) refcounting bug
      
       - fix copy_from_user_nmi() return value"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86: Fix copy_from_user_nmi() return if range is not ok
        perf: Fix AUX buffer refcounting
        tools: Copy rbtree_augmented.h from the kernel
        tools: Move rbtree.h from tools/perf/
        tools: Copy lib/rbtree.c to tools/lib/
        perf tools: Copy rbtree.h from the kernel
        tools: Adopt {READ,WRITE_ONCE} from the kernel
      c7e9ad7d
  4. 06 Jul, 2015 12 commits
  5. 05 Jul, 2015 8 commits
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 1c4c7159
      Linus Torvalds authored
      Pull ext4 bugfixes from Ted Ts'o:
       "Bug fixes (all for stable kernels) for ext4:
      
         - address corner cases for indirect blocks->extent migration
      
         - fix reserved block accounting invalidate_page when
           page_size != block_size (i.e., ppc or 1k block size file systems)
      
         - fix deadlocks when a memcg is under heavy memory pressure
      
         - fix fencepost error in lazytime optimization"
      
      * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
        ext4: replace open coded nofail allocation in ext4_free_blocks()
        ext4: correctly migrate a file with a hole at the beginning
        ext4: be more strict when migrating to non-extent based file
        ext4: fix reservation release on invalidatepage for delalloc fs
        ext4: avoid deadlocks in the writeback path by using sb_getblk_gfp
        bufferhead: Add _gfp version for sb_getblk()
        ext4: fix fencepost error in lazytime optimization
      1c4c7159
    • Arnaldo Carvalho de Melo's avatar
      perf tools: Copy rbtree.h from the kernel · 4407f967
      Arnaldo Carvalho de Melo authored
      We were using the include/linux/rbtree.h directly from the kernel,
      which broke the build as soon as it started using rcupdate.h, to
      avoid dragging the rcu header files into tools/, for which there is
      no use so far, grab a copy of rbtree.h.
      
      This is the minimal fix, later patches will copy as well lib/rbtree.c
      and move rbtree.h into tools/include/, etc.
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-dfmuj0j63w4by7vhlh4hhn74@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      4407f967
    • Arnaldo Carvalho de Melo's avatar
      tools: Adopt {READ,WRITE_ONCE} from the kernel · 728abda6
      Arnaldo Carvalho de Melo authored
      We need it to build rbtree.c after this cset:
      
        commit d72da4a4
        Author: Peter Zijlstra <peterz@infradead.org>
        Date:   Wed May 27 11:09:36 2015 +0930
      
          rbtree: Make lockless searches non-fatal
      
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Borislav Petkov <bp@suse.de>
      Cc: David Ahern <dsahern@gmail.com>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Cc: Jiri Olsa <jolsa@redhat.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Stephane Eranian <eranian@google.com>
      Link: http://lkml.kernel.org/n/tip-qlnzhezv5ddwst0w9fydju0y@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      728abda6
    • Linus Torvalds's avatar
      Linux 4.2-rc1 · d770e558
      Linus Torvalds authored
      d770e558
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v4.2-2' of... · a585d2b7
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v4.2-2' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86
      
      Pull late x86 platform driver updates from Darren Hart:
       "The following came in a bit later and I wanted them to bake in next a
        few more days before submitting, thus the second pull.
      
        A new intel_pmc_ipc driver, a symmetrical allocation and free fix in
        dell-laptop, a couple minor fixes, and some updated documentation in
        the dell-laptop comments.
      
        intel_pmc_ipc:
         - Add Intel Apollo Lake PMC IPC driver
      
        tc1100-wmi:
         - Delete an unnecessary check before the function call "kfree"
      
        dell-laptop:
         - Fix allocating & freeing SMI buffer page
         - Show info about WiGig and UWB in debugfs
         - Update information about wireless control"
      
      * tag 'platform-drivers-x86-v4.2-2' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86:
        intel_pmc_ipc: Add Intel Apollo Lake PMC IPC driver
        tc1100-wmi: Delete an unnecessary check before the function call "kfree"
        dell-laptop: Fix allocating & freeing SMI buffer page
        dell-laptop: Show info about WiGig and UWB in debugfs
        dell-laptop: Update information about wireless control
      a585d2b7
    • Michal Hocko's avatar
      ext4: replace open coded nofail allocation in ext4_free_blocks() · 7444a072
      Michal Hocko authored
      ext4_free_blocks is looping around the allocation request and mimics
      __GFP_NOFAIL behavior without any allocation fallback strategy. Let's
      remove the open coded loop and replace it with __GFP_NOFAIL. Without the
      flag the allocator has no way to find out never-fail requirement and
      cannot help in any way.
      Signed-off-by: default avatarMichal Hocko <mhocko@suse.cz>
      Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
      Cc: stable@vger.kernel.org
      7444a072
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 1dc51b82
      Linus Torvalds authored
      Pull more vfs updates from Al Viro:
       "Assorted VFS fixes and related cleanups (IMO the most interesting in
        that part are f_path-related things and Eric's descriptor-related
        stuff).  UFS regression fixes (it got broken last cycle).  9P fixes.
        fs-cache series, DAX patches, Jan's file_remove_suid() work"
      
      [ I'd say this is much more than "fixes and related cleanups".  The
        file_table locking rule change by Eric Dumazet is a rather big and
        fundamental update even if the patch isn't huge.   - Linus ]
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (49 commits)
        9p: cope with bogus responses from server in p9_client_{read,write}
        p9_client_write(): avoid double p9_free_req()
        9p: forgetting to cancel request on interrupted zero-copy RPC
        dax: bdev_direct_access() may sleep
        block: Add support for DAX reads/writes to block devices
        dax: Use copy_from_iter_nocache
        dax: Add block size note to documentation
        fs/file.c: __fget() and dup2() atomicity rules
        fs/file.c: don't acquire files->file_lock in fd_install()
        fs:super:get_anon_bdev: fix race condition could cause dev exceed its upper limitation
        vfs: avoid creation of inode number 0 in get_next_ino
        namei: make set_root_rcu() return void
        make simple_positive() public
        ufs: use dir_pages instead of ufs_dir_pages()
        pagemap.h: move dir_pages() over there
        remove the pointless include of lglock.h
        fs: cleanup slight list_entry abuse
        xfs: Correctly lock inode when removing suid and file capabilities
        fs: Call security_ops->inode_killpriv on truncate
        fs: Provide function telling whether file_remove_privs() will do anything
        ...
      1dc51b82
    • Linus Torvalds's avatar
      bluetooth: fix list handling · 9b284cbd
      Linus Torvalds authored
      Commit 835a6a2f ("Bluetooth: Stop sabotaging list poisoning")
      thought that the code was sabotaging the list poisoning when NULL'ing
      out the list pointers and removed it.
      
      But what was going on was that the bluetooth code was using NULL
      pointers for the list as a way to mark it empty, and that commit just
      broke it (and replaced the test with NULL with a "list_empty()" test on
      a uninitialized list instead, breaking things even further).
      
      So fix it all up to use the regular and real list_empty() handling
      (which does not use NULL, but a pointer to itself), also making sure to
      initialize the list properly (the previous NULL case was initialized
      implicitly by the session being allocated with kzalloc())
      
      This is a combination of patches by Marcel Holtmann and Tedd Ho-Jeong
      An.
      
      [ I would normally expect to get this through the bt tree, but I'm going
        to release -rc1, so I'm just committing this directly   - Linus ]
      Reported-and-tested-by: default avatarJörg Otte <jrg.otte@gmail.com>
      Cc: Alexey Dobriyan <adobriyan@gmail.com>
      Original-by: default avatarTedd Ho-Jeong An <tedd.an@intel.com>
      Original-by: Marcel Holtmann <marcel@holtmann.org>:
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      9b284cbd
  6. 04 Jul, 2015 5 commits
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 5c755fe1
      Linus Torvalds authored
      Pull SCSI target updates from Nicholas Bellinger:
       "It's been a busy development cycle for target-core in a number of
        different areas.
      
        The fabric API usage for se_node_acl allocation is now within
        target-core code, dropping the external API callers for all fabric
        drivers tree-wide.
      
        There is a new conversion to RCU hlists for se_node_acl and
        se_portal_group LUN mappings, that turns fast-past LUN lookup into a
        completely lockless code-path.  It also removes the original
        hard-coded limitation of 256 LUNs per fabric endpoint.
      
        The configfs attributes for backends can now be shared between core
        and driver code, allowing existing drivers to use common code while
        still allowing flexibility for new backend provided attributes.
      
        The highlights include:
      
         - Merge sbc_verify_dif_* into common code (sagi)
         - Remove iscsi-target support for obsolete IFMarker/OFMarker
           (Christophe Vu-Brugier)
         - Add bidi support in target/user backend (ilias + vangelis + agover)
         - Move se_node_acl allocation into target-core code (hch)
         - Add crc_t10dif_update common helper (akinobu + mkp)
         - Handle target-core odd SGL mapping for data transfer memory
           (akinobu)
         - Move transport ID handling into target-core (hch)
         - Move task tag into struct se_cmd + support 64-bit tags (bart)
         - Convert se_node_acl->device_list[] to RCU hlist (nab + hch +
           paulmck)
         - Convert se_portal_group->tpg_lun_list[] to RCU hlist (nab + hch +
           paulmck)
         - Simplify target backend driver registration (hch)
         - Consolidate + simplify target backend attribute implementations
           (hch + nab)
         - Subsume se_port + t10_alua_tg_pt_gp_member into se_lun (hch)
         - Drop lun_sep_lock for se_lun->lun_se_dev RCU usage (hch + nab)
         - Drop unnecessary core_tpg_register TFO parameter (nab)
         - Use 64-bit LUNs tree-wide (hannes)
         - Drop left-over TARGET_MAX_LUNS_PER_TRANSPORT limit (hannes)"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (76 commits)
        target: Bump core version to v5.0
        target: remove target_core_configfs.h
        target: remove unused TARGET_CORE_CONFIG_ROOT define
        target: consolidate version defines
        target: implement WRITE_SAME with UNMAP bit using ->execute_unmap
        target: simplify UNMAP handling
        target: replace se_cmd->execute_rw with a protocol_data field
        target/user: Fix inconsistent kmap_atomic/kunmap_atomic
        target: Send UA when changing LUN inventory
        target: Send UA upon LUN RESET tmr completion
        target: Send UA on ALUA target port group change
        target: Convert se_lun->lun_deve_lock to normal spinlock
        target: use 'se_dev_entry' when allocating UAs
        target: Remove 'ua_nacl' pointer from se_ua structure
        target_core_alua: Correct UA handling when switching states
        xen-scsiback: Fix compile warning for 64-bit LUN
        target: Remove TARGET_MAX_LUNS_PER_TRANSPORT
        target: use 64-bit LUNs
        target: Drop duplicate + unused se_dev_check_wce
        target: Drop unnecessary core_tpg_register TFO parameter
        ...
      5c755fe1
    • Linus Torvalds's avatar
      Merge tag 'ntb-4.2' of git://github.com/jonmason/ntb · 6d7c8e1b
      Linus Torvalds authored
      Pull NTB updates from Jon Mason:
       "This includes a pretty significant reworking of the NTB core code, but
        has already produced some significant performance improvements.
      
        An abstraction layer was added to allow the hardware and clients to be
        easily added.  This required rewriting the NTB transport layer for
        this abstraction layer.  This modification will allow future "high
        performance" NTB clients.
      
        In addition to this change, a number of performance modifications were
        added.  These changes include NUMA enablement, using CPU memcpy
        instead of asyncdma, and modification of NTB layer MTU size"
      
      * tag 'ntb-4.2' of git://github.com/jonmason/ntb: (22 commits)
        NTB: Add split BAR output for debugfs stats
        NTB: Change WARN_ON_ONCE to pr_warn_once on unsafe
        NTB: Print driver name and version in module init
        NTB: Increase transport MTU to 64k from 16k
        NTB: Rename Intel code names to platform names
        NTB: Default to CPU memcpy for performance
        NTB: Improve performance with write combining
        NTB: Use NUMA memory in Intel driver
        NTB: Use NUMA memory and DMA chan in transport
        NTB: Rate limit ntb_qp_link_work
        NTB: Add tool test client
        NTB: Add ping pong test client
        NTB: Add parameters for Intel SNB B2B addresses
        NTB: Reset transport QP link stats on down
        NTB: Do not advance transport RX on link down
        NTB: Differentiate transport link down messages
        NTB: Check the device ID to set errata flags
        NTB: Enable link for Intel root port mode in probe
        NTB: Read peer info from local SPAD in transport
        NTB: Split ntb_hw_intel and ntb_transport drivers
        ...
      6d7c8e1b
    • Al Viro's avatar
      9p: cope with bogus responses from server in p9_client_{read,write} · 0f1db7de
      Al Viro authored
      if server claims to have written/read more than we'd told it to,
      warn and cap the claimed byte count to avoid advancing more than
      we are ready to.
      0f1db7de
    • Al Viro's avatar
      p9_client_write(): avoid double p9_free_req() · 67e808fb
      Al Viro authored
      Braino in "9p: switch p9_client_write() to passing it struct iov_iter *";
      if response is impossible to parse and we discard the request, get the
      out of the loop right there.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      67e808fb
    • Al Viro's avatar
      9p: forgetting to cancel request on interrupted zero-copy RPC · a84b69cb
      Al Viro authored
      If we'd already sent a request and decide to abort it, we *must*
      issue TFLUSH properly and not just blindly reuse the tag, or
      we'll get seriously screwed when response eventually arrives
      and we confuse it for response to later request that had reused
      the same tag.
      
      Cc: stable@vger.kernel.org # v3.2 and later
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      a84b69cb