07 Jul, 2015

30 commits


06 Jul, 2015

2 commits

  • Linus Torvalds
     
  • …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

    Linus Torvalds
     

05 Jul, 2015

8 commits

  • 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
    ...

    Linus Torvalds
     
  • Commit 835a6a2f8603 ("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: Jörg Otte
    Cc: Alexey Dobriyan
    Original-by: Tedd Ho-Jeong An
    Original-by: Marcel Holtmann :
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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.

    Al Viro
     
  • 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: Al Viro

    Al Viro
     
  • 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: Al Viro

    Al Viro
     
  • The brd driver is the only in-tree driver that may sleep currently.
    After some discussion on linux-fsdevel, we decided that any driver
    may choose to sleep in its ->direct_access method. To ensure that all
    callers of bdev_direct_access() are prepared for this, add a call
    to might_sleep().

    Signed-off-by: Matthew Wilcox
    Signed-off-by: Al Viro

    Matthew Wilcox