Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync up with Linus #87

Merged
merged 111 commits into from
Jul 31, 2015
Merged

Sync up with Linus #87

merged 111 commits into from
Jul 31, 2015

Commits on Jul 3, 2015

  1. SUNRPC: Don't reencode message if transmission failed with ENOBUFS

    If we're running out of buffer memory when transmitting data, then
    we want to just delay for a moment, and then continue transmitting
    the remainder of the message.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 3, 2015
    Configuration menu
    Copy the full SHA
    93aa6c7 View commit details
    Browse the repository at this point in the history
  2. SUNRPC: Don't confuse ENOBUFS with a write_space issue

    ENOBUFS means that memory allocations are failing due to an actual
    low memory situation. It should not be confused with being out of
    socket buffer space.
    
    Handle the problem by just punting to the delay in call_status.
    
    Reported-by: Neil Brown <[email protected]>
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 3, 2015
    Configuration menu
    Copy the full SHA
    b5872f0 View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2015

  1. NFSv4.1: Handle SEQ4_STATUS_EXPIRED_SOME_STATE_REVOKED status bit cor…

    …rectly.
    
    If the server tells us that only some state has been revoked, then we
    need to run the full TEST_STATEID dog and pony show in order to discover
    which locks and delegations are still OK. Currently we blow away all
    state, which means that we lose all locks!
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 5, 2015
    Configuration menu
    Copy the full SHA
    8b895ce View commit details
    Browse the repository at this point in the history
  2. NFSv4.1: Handle SEQ4_STATUS_RECALLABLE_STATE_REVOKED status bit corre…

    …ctly
    
    Try to handle this for now by invalidating all outstanding layouts for this
    server and then testing all the open+lock+delegation stateids.
    At some later stage, we may want to optimise by separating out the testing of
    delegation stateids only, and adding testing of layout stateids.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 5, 2015
    Configuration menu
    Copy the full SHA
    4099287 View commit details
    Browse the repository at this point in the history
  3. NFSv4.1: Handle SEQ4_STATUS_BACKCHANNEL_FAULT correctly

    RFC5661 states:
    
          The server has encountered an unrecoverable fault with the
          backchannel (e.g., it has lost track of the sequence ID for a slot
          in the backchannel).  The client MUST stop sending more requests
          on the session's fore channel, wait for all outstanding requests
          to complete on the fore and back channel, and then destroy the
          session.
    
    Ensure we do so...
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 5, 2015
    Configuration menu
    Copy the full SHA
    b135290 View commit details
    Browse the repository at this point in the history
  4. NFSv4.1: nfs41_sequence_done should handle sequence flag errors

    Instead of just kicking off lease recovery, we should look into the
    sequence flag errors and handle them.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 5, 2015
    Configuration menu
    Copy the full SHA
    b15c7cd View commit details
    Browse the repository at this point in the history
  5. NFSv4: Leases are renewed in sequence_done when we have sessions

    Ensure that the calls to renew_lease() in open_done() etc. only apply
    to session-less versions of NFSv4.x (i.e. NFSv4.0).
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 5, 2015
    Configuration menu
    Copy the full SHA
    be82416 View commit details
    Browse the repository at this point in the history

Commits on Jul 7, 2015

  1. target/pr: Fix possible uninitialized variable usage

    Triggered a compilation warning.
    
    Fixes: 2650d71 target: move transport ID handling to the core
    
    Signed-off-by: Sagi Grimberg <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Sagi Grimberg authored and nablio3000 committed Jul 7, 2015
    Configuration menu
    Copy the full SHA
    9b353cc View commit details
    Browse the repository at this point in the history
  2. target/spc: Set SPT correctly in Extended INQUIRY Data VPD page

    LIO supports protection types 1,3 so setting a hard-coded SPT=3
    is fine for now.
    
    Signed-off-by: Sagi Grimberg <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Sagi Grimberg authored and nablio3000 committed Jul 7, 2015
    Configuration menu
    Copy the full SHA
    27e6772 View commit details
    Browse the repository at this point in the history
  3. target: Add extra TYPE_DISK + protection checks for INQUIRY SPT

    Cc: Sagi Grimberg <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    nablio3000 committed Jul 7, 2015
    Configuration menu
    Copy the full SHA
    3aa3c67 View commit details
    Browse the repository at this point in the history
  4. target/rd: Set ramdisk as non rotational device

    Since a RAM backend device is not really a rotational device,
    we set it as is_nonrot=1 which will be forwarded in VPD page 0xb1
    (block device characteristics) response.
    
    Signed-off-by: Sagi Grimberg <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Sagi Grimberg authored and nablio3000 committed Jul 7, 2015
    Configuration menu
    Copy the full SHA
    5dacbfc View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2015

  1. NFSv4.2/flexfiles: Fix a typo in the flexfiles layoutstats code

    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 8, 2015
    Configuration menu
    Copy the full SHA
    690edcf View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2015

  1. pNFS: Layoutreturn must invalidate all existing layout segments.

    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 11, 2015
    Configuration menu
    Copy the full SHA
    c5d7371 View commit details
    Browse the repository at this point in the history
  2. pNFS: pnfs_roc_drain should return 'true' when sleeping

    Also clean up the case where we don't find a return-on-close layout segment.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 11, 2015
    Configuration menu
    Copy the full SHA
    df9cecc View commit details
    Browse the repository at this point in the history
  3. pNFS: Fix races between return-on-close and layoutreturn.

    If one or more of the layout segments reports an error during I/O, then
    we may have to send a layoutreturn to report the error back to the NFS
    metadata server.
    This patch ensures that the return-on-close code can detect the
    outstanding layoutreturn, and not preempt it.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 11, 2015
    Configuration menu
    Copy the full SHA
    7f27392 View commit details
    Browse the repository at this point in the history
  4. pNFS: pnfs_roc_drain() fix a race with open

    If a process reopens the file before we can send off the CLOSE/DELEGRETURN,
    then pnfs_roc_drain() may end up waiting for a new set of layout segments
    that are marked as return-on-close, but haven't yet been returned.
    
    Fix this by only waiting for those layout segments that were invalidated in
    pnfs_roc().
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 11, 2015
    Configuration menu
    Copy the full SHA
    bdc59cf View commit details
    Browse the repository at this point in the history
  5. pNFS: Don't throw out valid layout segments

    It is OK for layout segments to remain hashed even if no-one holds any
    references to them, provided that the segments are still valid.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 11, 2015
    Configuration menu
    Copy the full SHA
    faa4a54 View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2015

  1. selftests/futex: Fix futex_cmp_requeue_pi() error handling

    An earlier (pre-kernel-integration) refactoring of this code mistakenly
    replaced the error condition, <, with a >. Use < to detect an error as
    opposed to a successful requeue or signal race.
    
    Reported-by: David Binderman <[email protected]>
    Cc: Shuah Khan <[email protected]>
    Signed-off-by: Darren Hart <[email protected]>
    Signed-off-by: Shuah Khan <[email protected]>
    dvhart authored and Shuah Khan committed Jul 21, 2015
    Configuration menu
    Copy the full SHA
    fee50f3 View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2015

  1. SUNRPC: Fix a backchannel deadlock

    xprt_alloc_bc_request() cannot call xprt_free_bc_request() without
    deadlocking, since it already holds the xprt->bc_pa_lock.
    
    Reported-by: Chuck Lever <[email protected]>
    Fixes: 0d2a970 ("SUNRPC: Fix a backchannel race")
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    6851447 View commit details
    Browse the repository at this point in the history
  2. SUNRPC: xprt_complete_bc_request must also decrement the free slot count

    Calling xprt_complete_bc_request() effectively causes the slot to be allocated,
    so it needs to decrement the backchannel free slot count as well.
    
    Fixes: 0d2a970 ("SUNRPC: Fix a backchannel race")
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    1980bd4 View commit details
    Browse the repository at this point in the history
  3. NFSv4: We must set NFS_OPEN_STATE flag in nfs_resync_open_stateid_locked

    Otherwise, nfs4_select_rw_stateid() will always return the zero stateid
    instead of the correct open stateid.
    
    Fixes: f95549c ("NFSv4: More CLOSE/OPEN races")
    Cc: [email protected] # 4.0+
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    3c38cbe View commit details
    Browse the repository at this point in the history
  4. NFSv4/pnfs: Ensure we don't miss a file extension

    pNFS writes don't return attributes, however that doesn't mean that we
    should ignore the fact that they may be extending the file. This patch
    ensures that if a write is seen to extend the file, then we always set
    an attribute barrier, and update the cached file size.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    2b83d3d View commit details
    Browse the repository at this point in the history
  5. NFS: Don't revalidate the mapping if both size and change attr are up…

    … to date
    
    If we've ensured that the size and the change attribute are both correct,
    then there is no point in marking those attributes as needing revalidation
    again. Only do so if we know the size is incorrect and was not updated.
    
    Fixes: f2467b6 ("NFS: Clear NFS_INO_REVAL_PAGECACHE when...")
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    85a23ce View commit details
    Browse the repository at this point in the history
  6. NFS: Set NFS_INO_REVAL_PAGECACHE if the change attribute is uninitial…

    …ised
    
    We can't allow caching of data until the change attribute has been
    initialised correctly.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    5c675d6 View commit details
    Browse the repository at this point in the history
  7. NFS: Remove the "NFS_CAP_CHANGE_ATTR" capability

    Setting the change attribute has been mandatory for all NFS versions, since
    commit 3a1556e ("NFSv2/v3: Simulate the change attribute"). We should
    therefore not have anything be conditional on it being set/unset.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    cd81259 View commit details
    Browse the repository at this point in the history
  8. NFS: nfs_mark_for_revalidate should always set NFS_INO_REVAL_PAGECACHE

    I'm not aware of any existing bugs around this, but the expectation is
    that nfs_mark_for_revalidate() should always force a revalidation of
    the cached metadata.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    115c48d View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2015

  1. tcm_qla2xxx: pass timeout as HZ independent value

    API compliance scanning with coccinelle flagged:
    ./drivers/scsi/qla2xxx/tcm_qla2xxx.c:407:2-29:
             WARNING: timeout is HZ dependent
    
    This was introduced in 'commit 75f8c1f ("[SCSI] tcm_qla2xxx: Add >=
    24xx series fabric module for target-core")'. wait_for_completion_timeout()
    expects a timeout in jiffies so the numeric constant makes the effective
    timeout HZ dependent. Resolved by converting it to CONST * HZ.
    
    Signed-off-by: Nicholas Mc Guire <[email protected]>
    Acked-by: Nilesh Javali <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Nicholas Mc Guire authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    fd4e139 View commit details
    Browse the repository at this point in the history
  2. target: Indicate success if writing 0 to pi_prot_type

    See https://bugzilla.redhat.com/show_bug.cgi?id=1240687
    
    Returning 0 from a configfs store function results in infinite retries.
    
    Reported-by: Yanko Kaneti <[email protected]>
    Signed-off-by: Andy Grover <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Andy Grover authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    bc1a7d6 View commit details
    Browse the repository at this point in the history
  3. target: Do not return 0 from aptpl and alua configfs store functions

    Here are some more instances where we are returning 0 from a configfs
    store function, the unintended result of which is likely infinite retries
    from userspace.
    
    Signed-off-by: Andy Grover <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Andy Grover authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    9105bfc View commit details
    Browse the repository at this point in the history
  4. target/configfs: handle match_int() errors

    As a follow up to ce31c1b - there are
    still a few LIO match_int() calls that don't check the return value.
    Propagate errors rather than using the potentially uninitialised result.
    
    Signed-off-by: David Disseldorp <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    ddiss authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    c209102 View commit details
    Browse the repository at this point in the history
  5. RDMA/cxgb3: fail get_dma_mr on 64 bit arches

    T3 HW only supports 32 bit MRs.  If the system uses 64 bit memory
    addresses, then a registered 32 bit MR will wrap and write to the
    wrong memory when used with addresses > 4GB.  To prevent this,
    simply fail to allocate an MR on 64 bit machines (other means
    of registering memory are still available and software can still
    work, we just don't allow this means of memory registration).
    
    Signed-off-by: Steve Wise <[email protected]>
    Signed-off-by: Doug Ledford <[email protected]>
    Steve Wise authored and dledford committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    49fa63d View commit details
    Browse the repository at this point in the history
  6. IB/ipoib: Fix CONFIG_INFINIBAND_IPOIB_CM

    If the above is turned off then ipoib_cm_dev_init unconditionally
    returns ENOSYS, and the newly added error handling in
    0b3957 prevents ipoib from coming up at all:
    
    kernel: mlx4_0: ipoib_transport_dev_init failed
    kernel: mlx4_0: failed to initialize port 1 (ret = -12)
    
    Fixes: 0b39578 (IB/ipoib: Use dedicated workqueues per interface)
    Signed-off-by: Jason Gunthorpe <[email protected]>
    Signed-off-by: Doug Ledford <[email protected]>
    jgunthorpe authored and dledford committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    efc1eed View commit details
    Browse the repository at this point in the history
  7. RDMA/ocrdma: update ocrdma license to dual-license

    Change of license from GPLv2 to dual-license (GPLv2 and BSD 2-Clause)
    
    All contributors were contacted off-list and permission to make this
    change was received.  The complete list of contributors are Cc:ed here.
    
    Cc: Tejun Heo <[email protected]>
    Cc: Duan Jiong <[email protected]>
    Cc: Roland Dreier <[email protected]>
    Cc: Jes Sorensen <[email protected]>
    Cc: Sasha Levin <[email protected]>
    Cc: Dan Carpenter <[email protected]>
    Cc: Prarit Bhargava <[email protected]>
    Cc: Colin Ian King <[email protected]>
    Cc: Wei Yongjun <[email protected]>
    Cc: Moni Shoua <[email protected]>
    Cc: Rasmus Villemoes <[email protected]>
    Cc: Li RongQing <[email protected]>
    Cc: Devendra Naga <[email protected]>
    Signed-off-by: Devesh Sharma <[email protected]>
    Signed-off-by: Doug Ledford <[email protected]>
    Devesh Sharma authored and dledford committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    71ee673 View commit details
    Browse the repository at this point in the history
  8. RDMA/ocrdma: update ocrdma module license string

    Change module_license from "GPL" to "Dual BSD/GPL"
    
    Cc: Tejun Heo <[email protected]>
    Cc: Duan Jiong <[email protected]>
    Cc: Roland Dreier <[email protected]>
    Cc: Jes Sorensen <[email protected]>
    Cc: Sasha Levin <[email protected]>
    Cc: Dan Carpenter <[email protected]>
    Cc: Prarit Bhargava <[email protected]>
    Cc: Colin Ian King <[email protected]>
    Cc: Wei Yongjun <[email protected]>
    Cc: Moni Shoua <[email protected]>
    Cc: Rasmus Villemoes <[email protected]>
    Cc: Li RongQing <[email protected]>
    Cc: Devendra Naga <[email protected]>
    Signed-off-by: Devesh Sharma <[email protected]>
    Signed-off-by: Doug Ledford <[email protected]>
    Devesh Sharma authored and dledford committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    b8f5595 View commit details
    Browse the repository at this point in the history
  9. vfio: Fix lockdep issue

    When we open a device file descriptor, we currently have the
    following:
    
    vfio_group_get_device_fd()
      mutex_lock(&group->device_lock);
        open()
        ...
        if (ret)
          release()
    
    If we hit that error case, we call the backend driver release path,
    which for vfio-pci looks like this:
    
    vfio_pci_release()
      vfio_pci_disable()
        vfio_pci_try_bus_reset()
          vfio_pci_get_devs()
            vfio_device_get_from_dev()
              vfio_group_get_device()
                mutex_lock(&group->device_lock);
    
    Whoops, we've stumbled back onto group.device_lock and created a
    deadlock.  There's a low likelihood of ever seeing this play out, but
    obviously it needs to be fixed.  To do that we can use a reference to
    the vfio_device for vfio_group_get_device_fd() rather than holding the
    lock.  There was a loop in this function, theoretically allowing
    multiple devices with the same name, but in practice we don't expect
    such a thing to happen and the code is already aborting from the loop
    with break on any sort of error rather than continuing and only
    parsing the first match anyway, so the loop was effectively unused
    already.
    
    Signed-off-by: Alex Williamson <[email protected]>
    Fixes: 20f3001 ("vfio/pci: Fix racy vfio_device_get_from_dev() call")
    Reported-by: Joerg Roedel <[email protected]>
    Tested-by: Joerg Roedel <[email protected]>
    awilliam committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    4bc94d5 View commit details
    Browse the repository at this point in the history
  10. qla2xxx: Fix hardware lock/unlock issue causing kernel panic.

    [ Upstream commit ef86cb2 ]
    
    This patch fixes a kernel panic for qla2xxx Target core
    Module driver introduced by a fix in the qla2xxx initiator code.
    
    Commit ef86cb2 ("qla2xxx: Mark port lost when we receive an RSCN for it.")
    introduced the regression for qla2xxx Target driver.
    
    Stack trace will have following signature
    
     --- <NMI exception stack> ---
    [ffff88081faa3cc8] _raw_spin_lock_irqsave at ffffffff815b1f03
    [ffff88081faa3cd0] qlt_fc_port_deleted at ffffffffa096ccd0 [qla2xxx]
    [ffff88081faa3d20] qla2x00_schedule_rport_del at ffffffffa0913831[qla2xxx]
    [ffff88081faa3d50] qla2x00_mark_device_lost at ffffffffa09159c5[qla2xxx]
    [ffff88081faa3db0] qla2x00_async_event at ffffffffa0938d59 [qla2xxx]
    [ffff88081faa3e30] qla24xx_msix_default at ffffffffa093a326 [qla2xxx]
    [ffff88081faa3e90] handle_irq_event_percpu at ffffffff810a7b8d
    [ffff88081faa3ee0] handle_irq_event at ffffffff810a7d32
    [ffff88081faa3f10] handle_edge_irq at ffffffff810ab6b9
    [ffff88081faa3f30] handle_irq at ffffffff8100619c
    [ffff88081faa3f70] do_IRQ at ffffffff815b4b1c
     --- <IRQ stack> ---
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Saurav Kashyap <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Reviewed-by: Nicholas Bellinger <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Saurav Kashyap authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    ba9f6f6 View commit details
    Browse the repository at this point in the history
  11. qla2xxx: Enable target mode for ISP27XX

    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Giridhar Malavali <[email protected]>
    Reviewed-by: Nicholas Bellinger <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Himanshu Madhani authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    b20f02e View commit details
    Browse the repository at this point in the history
  12. qla2xxx: Add flush after updating ATIOQ consumer index.

    After updating the consumer index of ATIO Q, a read is
    required to flush the write to the adapter register.
    
    Signed-off-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Reviewed-by: Nicholas Bellinger <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Quinn Tran authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    3761f3e View commit details
    Browse the repository at this point in the history
  13. qla2xxx: release request queue reservation.

    Request IOCB queue element(s) is reserved during
    good path IO.  Under error condition such as unable
    to allocate IOCB handle condition, the IOCB count
    that was reserved is not released.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Reviewed-by: Nicholas Bellinger <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Quinn Tran authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    810e30b View commit details
    Browse the repository at this point in the history
  14. qla2xxx: adjust debug flags

    Adjust debug flag to match debug comment.
    
    Signed-off-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Reviewed-by: Nicholas Bellinger <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Quinn Tran authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    e5fdee8 View commit details
    Browse the repository at this point in the history
  15. qla2xxx: Remove msleep in qlt_send_term_exchange

    Remove unnecessary msleep from qlt_send_term_exchange as it
    adds latency of 250 msec while sending terminate exchange to
    an aborted task.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Giridhar Malavali <[email protected]>
    Reviewed-by: Nicholas Bellinger <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Himanshu Madhani authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    6bc85dd View commit details
    Browse the repository at this point in the history
  16. qla2xxx: fix command initialization in target mode.

    Cc: <[email protected]> # v3.18+
    Signed-off-by: Kanoj Sarcar <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Reviewed-by: Nicholas Bellinger <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Kanoj Sarcar authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    9fce125 View commit details
    Browse the repository at this point in the history
  17. qla2xxx: kill sessions/log out initiator on RSCN and port down events

    To fix some issues talking to ESX, this patch modifies the qla2xxx driver
    so that it never logs into remote ports.  This has the side effect of
    getting rid of the "rports" entirely, which means we never log out of
    initiators and never tear down sessions when an initiator goes away.
    
    This is mostly OK, except that we can run into trouble if we have
    initiator A assigned FC address X:Y:Z by the fabric talking to us, and
    then initiator A goes away.  Some time (could be a long time) later,
    initiator B comes along and also gets FC address X:Y:Z (which is
    available again, because initiator A is gone).  If initiator B starts
    talking to us, then we'll still have the session for initiator A, and
    since we look up incoming IO based on the FC address X:Y:Z, initiator B
    will end up using ACLs for initiator A.
    
    Fix this by:
    
     1. Handling RSCN events somewhat differently; instead of completely
        skipping the processing of fcports, we look through the list, and if
        an fcport disappears, we tell the target code the tear down the
        session and tell the HBA FW to release the N_Port handle.
    
     2. Handling "port down" events by flushing all of our sessions.  The
        firmware was already releasing the N_Port handle but we want the
        target code to drop all the sessions too.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Roland Dreier <[email protected]>
    Signed-off-by: Alexei Potashnik <[email protected]>
    Acked-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    rolandd authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    b2032fd View commit details
    Browse the repository at this point in the history
  18. qla2xxx: cleanup cmd in qla workqueue before processing TMR

    Since cmds go into qla_tgt_wq and TMRs don't, it's possible that TMR
    like TASK_ABORT can be queued over the cmd for which it was meant.
    To avoid this race, use a per-port list to keep track of cmds that
    are enqueued to qla_tgt_wq but not yet processed. When a TMR arrives,
    iterate through this list and remove any cmds that match the TMR.
    This patch supports TASK_ABORT and LUN_RESET.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Swapnil Nagle <[email protected]>
    Signed-off-by: Alexei Potashnik <[email protected]>
    Acked-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    swapnilnagle authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    8b2f5ff View commit details
    Browse the repository at this point in the history
  19. qla2xxx: delay plogi/prli ack until existing sessions are deleted

    - keep qla_tgt_sess object on the session list until it's freed
    
    - modify use of sess->deleted flag to differentiate delayed
      session deletion that can be cancelled from irreversible one:
      QLA_SESS_DELETION_PENDING vs QLA_SESS_DELETION_IN_PROGRESS
    
    - during IN_PROGRESS deletion all newly arrived commands and TMRs will
      be rejected, existing commands and TMRs will be terminated when
      given by the core to the fabric or simply dropped if session logout
      has already happened (logout terminates all existing exchanges)
    
    - new PLOGI will initiate deletion of the following sessions
      (unless deletion is already IN_PROGRESS):
      - with the same port_name (with logout)
      - different port_name, different loop_id but the same port_id
        (with logout)
      - different port_name, different port_id, but the same loop_id
        (without logout)
    
    - additionally each new PLOGI will store imm notify iocb in the
      same port_name session being deleted. When deletion process
      completes this iocb will be acked. Only the most recent PLOGI
      iocb is stored. The older ones will be terminated when replaced.
    
    - new PRLI will initiate deletion of the following sessions
      (unless deletion is already IN_PROGRESS):
      - different port_name, different port_id, but the same loop_id
       (without logout)
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Alexei Potashnik <[email protected]>
    Acked-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    alexeipstg authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    a6ca887 View commit details
    Browse the repository at this point in the history
  20. qla2xxx: Abort stale cmds on qla_tgt_wq when plogi arrives

    cancel any commands from initiator's s_id that are still waiting
    on qla_tgt_wq when PLOGI arrives.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Alexei Potashnik <[email protected]>
    Acked-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    alexeipstg authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    daddf5c View commit details
    Browse the repository at this point in the history
  21. qla2xxx: added sess generations to detect RSCN update races

    RSCN processing in qla2xxx driver can run in parallel with ELS/IO
    processing. As such the decision to remove disappeared fc port's
    session could be stale, because a new login sequence has occurred
    since and created a brand new session.
    
    Previous mechanism of dealing with this by delaying deletion request
    was prone to erroneous deletions if the event that was supposed to
    cancel the deletion never arrived or has been delayed in processing.
    
    New mechanism relies on a time-like generation counter to serialize
    RSCN updates relative to ELS/IO updates.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Alexei Potashnik <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    alexeipstg authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    df67327 View commit details
    Browse the repository at this point in the history
  22. qla2xxx: disable scsi_transport_fc registration in target mode

    There are multiple reasons for disabling this:
    
    1. It provides no functional benefit. We pretty much only get a few more
    sysfs entries for each port, but all that information is already
    available from /sys/kernel/debug/target/qla-session-X
    
    2. It already only works in private-loop mode. By disabling we'll be
    getting more uniform behavior with fabric mode.
    
    3. It creates complications for the new PLOGI handling mechanism:
    scsi_transport_fc port deletion timer could race with new session
    from initiator and cause logout after successful login.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Alexei Potashnik <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    alexeipstg authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    d20ed91 View commit details
    Browse the repository at this point in the history
  23. qla2xxx: drop cmds/tmrs arrived while session is being deleted

    If a new initiator (different WWN) shows up on the same fcport, old
    initiator's session is scheduled for deletion. But there is a small
    window between it being marked with QLA_SESS_DELETION_IN_PROGRESS
    and qlt_unret_sess getting called when new session's commands will
    keep finding old session in the fcport map.
    
    This patch drops cmds/tmrs if they find session in the progress of
    being deleted.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Alexei Potashnik <[email protected]>
    Acked-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    alexeipstg authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    e52a8b4 View commit details
    Browse the repository at this point in the history
  24. qla2xxx: terminate exchange when command is aborted by LIO

    The newly introduced aborted_task TFO callback has to terminate
    exchange with QLogic driver, since command is being deleted and
    no status will be queued to the driver at a later point.
    
    This patch also moves the burden of releasing one cmd refcount to
    the aborted_task handler.
    
    Changed iSCSI aborted_task logic to satisfy the above requirement.
    
    Cc: <[email protected]> # v3.18+
    Signed-off-by: Alexei Potashnik <[email protected]>
    Acked-by: Quinn Tran <[email protected]>
    Signed-off-by: Himanshu Madhani <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    alexeipstg authored and nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    7359df2 View commit details
    Browse the repository at this point in the history
  25. iscsi-target: Fix use-after-free during TPG session shutdown

    This patch fixes a use-after-free bug in iscsit_release_sessions_for_tpg()
    where se_portal_group->session_lock was incorrectly released/re-acquired
    while walking the active se_portal_group->tpg_sess_list.
    
    The can result in a NULL pointer dereference when iscsit_close_session()
    shutdown happens in the normal path asynchronously to this code, causing
    a bogus dereference of an already freed list entry to occur.
    
    To address this bug, walk the session list checking for the same state
    as before, but move entries to a local list to avoid dropping the lock
    while walking the active list.
    
    As before, signal using iscsi_session->session_restatement=1 for those
    list entries to be released locally by iscsit_free_session() code.
    
    Reported-by: Sunilkumar Nadumuttlu <[email protected]>
    Cc: Sunilkumar Nadumuttlu <[email protected]>
    Cc: <[email protected]> # v3.1+
    Signed-off-by: Nicholas Bellinger <[email protected]>
    nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    417c20a View commit details
    Browse the repository at this point in the history
  26. iscsi-target: Fix iscsit_start_kthreads failure OOPs

    This patch fixes a regression introduced with the following commit
    in v4.0-rc1 code, where a iscsit_start_kthreads() failure triggers
    a NULL pointer dereference OOPs:
    
        commit 88dcd2d
        Author: Nicholas Bellinger <[email protected]>
        Date:   Thu Feb 26 22:19:15 2015 -0800
    
            iscsi-target: Convert iscsi_thread_set usage to kthread.h
    
    To address this bug, move iscsit_start_kthreads() immediately
    preceeding the transmit of last login response, before signaling
    a successful transition into full-feature-phase within existing
    iscsi_target_do_tx_login_io() logic.
    
    This ensures that no target-side resource allocation failures can
    occur after the final login response has been successfully sent.
    
    Also, it adds a iscsi_conn->rx_login_comp to allow the RX thread
    to sleep to prevent other socket related failures until the final
    iscsi_post_login_handler() call is able to complete.
    
    Cc: Sagi Grimberg <[email protected]>
    Cc: <[email protected]> # v3.10+
    Signed-off-by: Nicholas Bellinger <[email protected]>
    nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    e541986 View commit details
    Browse the repository at this point in the history
  27. iscsi-target: Fix iser explicit logout TX kthread leak

    This patch fixes a regression introduced with the following commit
    in v4.0-rc1 code, where an explicit iser-target logout would result
    in ->tx_thread_active being incorrectly cleared by the logout post
    handler, and subsequent TX kthread leak:
    
        commit 88dcd2d
        Author: Nicholas Bellinger <[email protected]>
        Date:   Thu Feb 26 22:19:15 2015 -0800
    
            iscsi-target: Convert iscsi_thread_set usage to kthread.h
    
    To address this bug, change iscsit_logout_post_handler_closesession()
    and iscsit_logout_post_handler_samecid() to only cmpxchg() on
    ->tx_thread_active for traditional iscsi/tcp connections.
    
    This is required because iscsi/tcp connections are invoking logout
    post handler logic directly from TX kthread context, while iser
    connections are invoking logout post handler logic from a seperate
    workqueue context.
    
    Cc: Sagi Grimberg <[email protected]>
    Cc: <[email protected]> # v3.10+
    Signed-off-by: Nicholas Bellinger <[email protected]>
    nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    007d038 View commit details
    Browse the repository at this point in the history
  28. iser-target: Fix REJECT CM event use-after-free OOPs

    This patch fixes a bug in iser-target code where the REJECT CM event
    handler code currently performs a isert_put_conn() for the final
    isert_conn->kref put, while iscsi_np process context is still blocked
    in isert_get_login_rx().
    
    Once isert_get_login_rx() is awoking due to login timeout, iscsi_np
    process context will attempt to invoke iscsi_target_login_sess_out()
    to cleanup iscsi_conn as expected, and calls isert_wait_conn() +
    isert_free_conn() which triggers the use-after-free OOPs.
    
    To address this bug, move the kref_get_unless_zero() call from
    isert_connected_handler() into isert_connect_request() immediately
    preceeding isert_rdma_accept() to ensure the CM handler cleanup
    paths and isert_free_conn() are always operating with two refs.
    
    Cc: Sagi Grimberg <[email protected]>
    Cc: <[email protected]> # v3.10+
    Signed-off-by: Nicholas Bellinger <[email protected]>
    nablio3000 committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    ce9a9fc View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2015

  1. Documentation/target: Fix tcm_mod_builder.py build breakage

    Fix build breakage and set the protocol identifier based on the parameter.
    
    Fixes: 9ac8928 ("target: simplify the target template registration API")
    Fixes: e4aae5a ("target: change core_tpg_register prototype")
    
    Signed-off-by: Sebastian Herbszt <[email protected]>
    Reviewed-by: Christoph Hellwig <[email protected]>
    Signed-off-by: Nicholas Bellinger <[email protected]>
    Sebastian Herbszt authored and nablio3000 committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    c4cfdd8 View commit details
    Browse the repository at this point in the history
  2. f2fs: handle error cases in move_encrypted_block

    This patch fixes some missing error handlers.
    
    Reviewed-by: Chao Yu <[email protected]>
    Signed-off-by: Jaegeuk Kim <[email protected]>
    Jaegeuk Kim committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    548aeda View commit details
    Browse the repository at this point in the history
  3. f2fs: call set_page_dirty to attach i_wb for cgroup

    The cgroup attaches inode->i_wb via mark_inode_dirty and when set_page_writeback
    is called, __inc_wb_stat() updates i_wb's stat.
    
    So, we need to explicitly call set_page_dirty->__mark_inode_dirty in prior to
    any writebacking pages.
    
    This patch should resolve the following kernel panic reported by Andreas Reis.
    
    https://bugzilla.kernel.org/show_bug.cgi?id=101801
    
    --- Comment #2 from Andreas Reis <[email protected]> ---
    BUG: unable to handle kernel NULL pointer dereference at 00000000000000a8
    IP: [<ffffffff8149deea>] __percpu_counter_add+0x1a/0x90
    PGD 2951ff067 PUD 2df43f067 PMD 0
    Oops: 0000 [#1] PREEMPT SMP
    Modules linked in:
    CPU: 7 PID: 10356 Comm: gcc Tainted: G        W       4.2.0-1-cu #1
    Hardware name: Gigabyte Technology Co., Ltd. G1.Sniper M5/G1.Sniper M5, BIOS
    T01 02/03/2015
    task: ffff880295044f80 ti: ffff880295140000 task.ti: ffff880295140000
    RIP: 0010:[<ffffffff8149deea>]  [<ffffffff8149deea>]
    __percpu_counter_add+0x1a/0x90
    RSP: 0018:ffff880295143ac8  EFLAGS: 00010082
    RAX: 0000000000000003 RBX: ffffea000a526d40 RCX: 0000000000000001
    RDX: 0000000000000020 RSI: 0000000000000001 RDI: 0000000000000088
    RBP: ffff880295143ae8 R08: 0000000000000000 R09: ffff88008f69bb30
    R10: 00000000fffffffa R11: 0000000000000000 R12: 0000000000000088
    R13: 0000000000000001 R14: ffff88041d099000 R15: ffff880084a205d0
    FS:  00007f8549374700(0000) GS:ffff88042f3c0000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 00000000000000a8 CR3: 000000033e1d5000 CR4: 00000000001406e0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
    Stack:
     0000000000000000 ffffea000a526d40 ffff880084a20738 ffff880084a20750
     ffff880295143b48 ffffffff811cc91e ffff880000000000 0000000000000296
     0000000000000000 ffff880417090198 0000000000000000 ffffea000a526d40
    Call Trace:
     [<ffffffff811cc91e>] __test_set_page_writeback+0xde/0x1d0
     [<ffffffff813fee87>] do_write_data_page+0xe7/0x3a0
     [<ffffffff813faeea>] gc_data_segment+0x5aa/0x640
     [<ffffffff813fb0b8>] do_garbage_collect+0x138/0x150
     [<ffffffff813fb3fe>] f2fs_gc+0x1be/0x3e0
     [<ffffffff81405541>] f2fs_balance_fs+0x81/0x90
     [<ffffffff813ee357>] f2fs_unlink+0x47/0x1d0
     [<ffffffff81239329>] vfs_unlink+0x109/0x1b0
     [<ffffffff8123e3d7>] do_unlinkat+0x287/0x2c0
     [<ffffffff8123ebc6>] SyS_unlink+0x16/0x20
     [<ffffffff81942e2e>] entry_SYSCALL_64_fastpath+0x12/0x71
    Code: 41 5e 5d c3 0f 1f 00 66 2e 0f 1f 84 00 00 00 00 00 55 48 89 e5 41 55 49
    89 f5 41 54 49 89 fc 53 48 83 ec 08 65 ff 05 e6 d9 b6 7e <48> 8b 47 20 48 63 ca
    65 8b 18 48 63 db 48 01 f3 48 39 cb 7d 0a
    RIP  [<ffffffff8149deea>] __percpu_counter_add+0x1a/0x90
     RSP <ffff880295143ac8>
    CR2: 00000000000000a8
    ---[ end trace 5132449a58ed93a3 ]---
    note: gcc[10356] exited with preempt_count 2
    
    Signed-off-by: Jaegeuk Kim <[email protected]>
    Jaegeuk Kim committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    6282adb View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2015

  1. dm thin: return -ENOSPC when erroring retry list due to out of data s…

    …pace
    
    Otherwise -EIO would be returned when -ENOSPC should be used
    consistently.
    
    Signed-off-by: Mike Snitzer <[email protected]>
    snitm committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    0a927c2 View commit details
    Browse the repository at this point in the history
  2. intel_pstate: Add get_scaling cpu_defaults param to Knights Landing

    Scaling for Knights Landing is same as the default scaling (100000).
    When Knigts Landing support was added to the pstate driver, this
    parameter was omitted resulting in a kernel panic during boot.
    
    Fixes: b34ef93 (intel_pstate: Knights Landing support)
    Reported-by: Yasuaki Ishimatsu <[email protected]>
    Signed-off-by: Dasaratharaman Chandramouli <[email protected]>
    Signed-off-by: Lukasz Anaczkowski <[email protected]>
    Acked-by: Kristen Carlson Accardi <[email protected]>
    Cc: 4.1+ <[email protected]> # 4.1+
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    lukaszan authored and rafaeljw committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    69cefc2 View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2015

  1. s390/bpf: clear correct BPF accumulator register

    Currently we assumed the following BPF to eBPF register mapping:
    
     - BPF_REG_A -> BPF_REG_7
     - BPF_REG_X -> BPF_REG_8
    
    Unfortunately this mapping is wrong. The correct mapping is:
    
     - BPF_REG_A -> BPF_REG_0
     - BPF_REG_X -> BPF_REG_7
    
    So clear the correct registers and use the BPF_REG_A and BPF_REG_X
    macros instead of BPF_REG_0/7.
    
    Fixes: 0546231 ("s390/bpf: Add s390x eBPF JIT compiler backend")
    Cc: [email protected] # 4.0+
    Signed-off-by: Michael Holzheu <[email protected]>
    Signed-off-by: Martin Schwidefsky <[email protected]>
    Michael Holzheu authored and Martin Schwidefsky committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    30342fe View commit details
    Browse the repository at this point in the history
  2. avr32: handle NULL as a valid clock object

    Since NULL is used as valid clock object on optional clocks we have to handle
    this case in avr32 implementation as well.
    
    Fixes: e1824df (net: macb: Adjust tx_clk when link speed changes)
    Signed-off-by: Andy Shevchenko <[email protected]>
    Acked-by: Hans-Christian Egtvedt <[email protected]>
    andy-shev authored and egtvedt committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    5c02a42 View commit details
    Browse the repository at this point in the history
  3. dm cache policy smq: fix alloc_bitset check that always evaluates as …

    …false
    
    static analysis by cppcheck has found a check on alloc_bitset that
    always evaluates as false and hence never finds an allocation failure:
    
    [drivers/md/dm-cache-policy-smq.c:1689]: (warning) Logical conjunction
      always evaluates to false: !EXPR && EXPR.
    
    Fix this by removing the incorrect mq->cache_hit_bits check
    
    Signed-off-by: Colin Ian King <[email protected]>
    Signed-off-by: Mike Snitzer <[email protected]>
    Colin Ian King authored and snitm committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    134bf30 View commit details
    Browse the repository at this point in the history
  4. dm crypt: update wiki page URL

    Cryptsetup moved to gitlab.  This is a leftover from commit e44f23b
    (dm crypt: update URLs to new cryptsetup project page, 2015-04-05).
    
    Signed-off-by: Baruch Siach <[email protected]>
    Signed-off-by: Mike Snitzer <[email protected]>
    baruchsiach authored and snitm committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    6ed443c View commit details
    Browse the repository at this point in the history
  5. of: add HAS_IOMEM depends to OF_ADDRESS

    On UML builds, of_address.c fails to compile:
    
    ../drivers/of/address.c:873:2: error: implicit declaration of function ‘ioremap’ [-Werror=implicit-function-declaration]
    
    This is due to CONFIG_OF now being user selectable. Add a dependency on
    HAS_IOMEM to OF_ADDRESS in order to fix this.
    
    Signed-off-by: Rob Herring <[email protected]>
    Cc: Grant Likely <[email protected]>
    robherring committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    39da809 View commit details
    Browse the repository at this point in the history
  6. of: constify drv arg of of_driver_match_device stub

    With this change the stub has the same signature as the actual function,
    preventing this compiler warning when building without CONFIG_OF:
    
       drivers/base/property.c: In function 'fwnode_driver_match_device':
    >> drivers/base/property.c:608:38: warning: passing argument 2 of 'of_driver_match_device' discards 'const' qualifier from pointer target type
          return of_driver_match_device(dev, drv);
                                             ^
       In file included from drivers/base/property.c:18:0:
       include/linux/of_device.h:61:19: note: expected 'struct device_driver *' but argument is of type 'const struct device_driver *'
        static inline int of_driver_match_device(struct device *dev,
                          ^
    
    Signed-off-by: Tomeu Vizoso <[email protected]>
    Signed-off-by: Rob Herring <[email protected]>
    tomeuv authored and robherring committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    35068ce View commit details
    Browse the repository at this point in the history
  7. DEVICETREE: Misc fix for the AR7100 SPI controller binding

    Fix the clocks property documentation and use lower case for
    hex values in the example.
    
    Signed-off-by: Alban Bedel <[email protected]>
    Signed-off-by: Rob Herring <[email protected]>
    AlbanBedel authored and robherring committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    3b6e644 View commit details
    Browse the repository at this point in the history
  8. of: Drop owner assignment from platform and i2c driver

    platform_driver and i2c_driver do not need to set an owner because core
    will set it.
    
    Signed-off-by: Krzysztof Kozlowski <[email protected]>
    Signed-off-by: Rob Herring <[email protected]>
    krzk authored and robherring committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    599ad5a View commit details
    Browse the repository at this point in the history
  9. NFS: Fix a memory leak in nfs_do_recoalesce

    If the function exits early, then we must put those requests that were
    not processed back onto the &mirror->pg_list so they can be cleaned up
    by nfs_pgio_error().
    
    Fixes: a7d42dd ("nfs: add mirroring support to pgio layer")
    Cc: [email protected] # v4.0+
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    03d5eb6 View commit details
    Browse the repository at this point in the history
  10. NFS: Don't clear desc->pg_moreio in nfs_do_recoalesce()

    Recoalescing does not affect whether or not we've already sent off
    I/O, and doing so means that we end up sending a bunch of synchronous
    for cases where we actually need to be using unstable writes.
    
    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    d4c3045 View commit details
    Browse the repository at this point in the history
  11. vhost: actually track log eventfd file

    While reviewing vhost log code, I found out that log_file is never
    set. Note: I haven't tested the change (QEMU doesn't use LOG_FD yet).
    
    Cc: [email protected]
    Signed-off-by: Marc-André Lureau <[email protected]>
    Signed-off-by: Michael S. Tsirkin <[email protected]>
    elmarco authored and mstsirkin committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    7932c0b View commit details
    Browse the repository at this point in the history
  12. vhost: fix error handling for memory region alloc

    callers of vhost_kvzalloc() expect the same behaviour on
    allocation error as from kmalloc/vmalloc i.e. NULL return
    value. So just return vzmalloc() returned value instead of
    returning ERR_PTR(-ENOMEM)
    
    Fixes: 4de7255 ("vhost: extend memory regions allocation to vmalloc")
    
    Spotted-by: Dan Carpenter <[email protected]>
    Suggested-by: Julia Lawall <[email protected]>
    Signed-off-by: Igor Mammedov <[email protected]>
    Signed-off-by: Michael S. Tsirkin <[email protected]>
    Igor Mammedov authored and mstsirkin committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    1e09947 View commit details
    Browse the repository at this point in the history
  13. NFSv4.2: handle NFS-specific llseek errors

    Handle NFS-specific llseek errors instead of letting them leak out to
    userspace.
    
    Reported-by: Benjamin Coddington <[email protected]>
    Signed-off-by: J. Bruce Fields <[email protected]>
    Signed-off-by: Trond Myklebust <[email protected]>
    J. Bruce Fields authored and trondmypd committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    bdcc2cd View commit details
    Browse the repository at this point in the history
  14. sunrpc: translate -EAGAIN to -ENOBUFS when socket is writable.

    The networking layer does not reliably report the distinction between
    a non-block write failing because:
     1/ the queue is too full already and
     2/ a memory allocation attempt failed.
    
    The distinction is important because in the first case it is
    appropriate to retry as soon as the socket reports that it is
    writable, and in the second case a small delay is required as the
    socket will most likely report as writable but kmalloc could still
    fail.
    
    sk_stream_wait_memory() exhibits this distinction nicely, setting
    'vm_wait' if a small wait is needed.  However in the non-blocking case
    it always returns -EAGAIN no matter the cause of the failure.  This
    -EAGAIN call get all the way to sunrpc.
    
    The sunrpc layer expects EAGAIN to indicate the first cause, and
    ENOBUFS to indicate the second.  Various documentation suggests that
    this is not unreasonable, but does not guarantee the desired error
    codes.
    
    The result of getting -EAGAIN when -ENOBUFS is expected is that the
    send is tried again in a tight loop and soft lockups are reported.
    
    so: add tests after calls to xs_sendpages() to translate -EAGAIN into
    -ENOBUFS if the socket is writable.  This cannot happen inside
    xs_sendpages() as the test for "is socket writable" is different
    between TCP and UDP.
    
    With this change, the tight loop retrying xs_sendpages() becomes a
    loop which only retries every 250ms, and so will not trigger a
    soft-lockup warning.
    
    It is possible that the write did fail because the queue was too full
    and by the time xs_sendpages() completed, the queue was writable
    again.  In this case an extra 250ms delay is inserted that isn't
    really needed.  This circumstance suggests a degree of congestion so a
    delay is not necessarily a bad thing, and it can only cause a single
    250ms delay, not a series of them.
    
    Signed-off-by: NeilBrown <[email protected]>
    Signed-off-by: Trond Myklebust <[email protected]>
    NeilBrown authored and trondmypd committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    743c69e View commit details
    Browse the repository at this point in the history
  15. arm64/efi: map the entire UEFI vendor string before reading it

    At boot, the UTF-16 UEFI vendor string is copied from the system
    table into a char array with a size of 100 bytes. However, this
    size of 100 bytes is also used for memremapping() the source,
    which may not be sufficient if the vendor string exceeds 50
    UTF-16 characters, and the placement of the vendor string inside
    a 4 KB page happens to leave the end unmapped.
    
    So use the correct '100 * sizeof(efi_char16_t)' for the size of
    the mapping.
    
    Signed-off-by: Ard Biesheuvel <[email protected]>
    Fixes: f84d027 ("arm64: add EFI runtime services")
    Cc: <[email protected]> # 3.16+
    Signed-off-by: Catalin Marinas <[email protected]>
    Ard Biesheuvel authored and ctmarinas committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    f91b1fe View commit details
    Browse the repository at this point in the history
  16. SUNRPC: Report TCP errors to the caller

    Signed-off-by: Trond Myklebust <[email protected]>
    trondmypd committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    f580dd0 View commit details
    Browse the repository at this point in the history
  17. Input: synaptics - dump ext10 capabilities as well

    Make extended capabilities obtained through $10 query also available in
    touchpad identification.
    
    Signed-off-by: Jiri Kosina <[email protected]>
    Reviewed-by: Benjamin Tissoires <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    Jiri Kosina authored and dtor committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    ab80ee3 View commit details
    Browse the repository at this point in the history
  18. Input: bcm5974 - prepare for a new trackpad generation

    With the advent of the Macbook Pro 12, we see a new generation of
    trackpads, capable of force sensoring and haptic feedback.
    
    This patch prepares for the new device by adding configuration data
    for the code paths that would otherwise look different.
    
    Tested-by: John Horan <[email protected]>
    Tested-by: Jochen Radmacher <[email protected]>
    Tested-by: Yang Hongyang <[email protected]>
    Tested-by: Yen-Chin, Lee <[email protected]>
    Tested-by: George Hilios <[email protected]>
    Tested-by: Janez Urevc <[email protected]>
    Signed-off-by: Henrik Rydberg <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    Henrik Rydberg authored and dtor committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    efbd347 View commit details
    Browse the repository at this point in the history
  19. HID: apple: Add support for the 2015 Macbook Pro

    This patch adds keyboard support for MacbookPro12,1 as WELLSPRING9
    (0x0272, 0x0273, 0x0274). The touchpad is handled in a separate
    bcm5974 patch, as usual.
    
    Tested-by: John Horan <[email protected]>
    Tested-by: Jochen Radmacher <[email protected]>
    Tested-by: Yang Hongyang <[email protected]>
    Tested-by: Yen-Chin, Lee <[email protected]>
    Tested-by: George Hilios <[email protected]>
    Tested-by: Janez Urevc <[email protected]>
    Signed-off-by: Henrik Rydberg <[email protected]>
    Acked-by: Jiri Kosina <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    Henrik Rydberg authored and dtor committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    a4a2c54 View commit details
    Browse the repository at this point in the history
  20. Input: bcm5974 - add support for the 2015 Macbook Pro

    Add support for the MacBookPro12,1 model. This patch needs to be
    applied together with the accompanied HID patch, as usual.
    
    Tested-by: John Horan <[email protected]>
    Tested-by: Jochen Radmacher <[email protected]>
    Tested-by: Yang Hongyang <[email protected]>
    Tested-by: Yen-Chin, Lee <[email protected]>
    Tested-by: George Hilios <[email protected]>
    Tested-by: Janez Urevc <[email protected]>
    Signed-off-by: Henrik Rydberg <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    johnhoran authored and dtor committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    d580692 View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2015

  1. KEYS: ensure we free the assoc array edit if edit is valid

    __key_link_end is not freeing the associated array edit structure
    and this leads to a 512 byte memory leak each time an identical
    existing key is added with add_key().
    
    The reason the add_key() system call returns okay is that
    key_create_or_update() calls __key_link_begin() before checking to see
    whether it can update a key directly rather than adding/replacing - which
    it turns out it can.  Thus __key_link() is not called through
    __key_instantiate_and_link() and __key_link_end() must cancel the edit.
    
    CVE-2015-1333
    
    Signed-off-by: Colin Ian King <[email protected]>
    Signed-off-by: David Howells <[email protected]>
    Signed-off-by: James Morris <[email protected]>
    Colin Ian King authored and James Morris committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    ca4da5d View commit details
    Browse the repository at this point in the history
  2. s390/cachinfo: add missing facility check to init_cache_level()

    Stephen Powell reported the following crash on a z890 machine:
    
    Kernel BUG at 00000000001219d0 [verbose debug info unavailable]
    illegal operation: 0001 ilc:3 [#1] SMP
    Krnl PSW : 0704e00180000000 00000000001219d0 (init_cache_level+0x38/0xe0)
    	   R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3 CC:2 PM:0 EA:3
    Krnl Code: 00000000001219c2: a7840056		brc	8,121a6e
    	   00000000001219c6: a7190000		lghi	%r1,0
    	  #00000000001219ca: eb101000004c	ecag	%r1,%r0,0(%r1)
    	  >00000000001219d0: a7390000		lghi	%r3,0
    	   00000000001219d4: e310f0a00024	stg	%r1,160(%r15)
    	   00000000001219da: a7080000		lhi	%r0,0
    	   00000000001219de: a7b9f000		lghi	%r11,-4096
    	   00000000001219e2: c0a0002899d9	larl	%r10,634d94
    Call Trace:
     [<0000000000478ee2>] detect_cache_attributes+0x2a/0x2b8
     [<000000000097c9b0>] cacheinfo_sysfs_init+0x60/0xc8
     [<00000000001001c0>] do_one_initcall+0x98/0x1c8
     [<000000000094fdc2>] kernel_init_freeable+0x212/0x2d8
     [<000000000062352e>] kernel_init+0x26/0x118
     [<000000000062fd2e>] kernel_thread_starter+0x6/0xc
    
    The illegal operation was executed because of a missing facility check,
    which should have made sure that the ECAG execution would only be executed
    on machines which have the general-instructions-extension facility
    installed.
    
    Reported-and-tested-by: Stephen Powell <[email protected]>
    Cc: [email protected] # v4.0+
    Signed-off-by: Heiko Carstens <[email protected]>
    Signed-off-by: Martin Schwidefsky <[email protected]>
    heicarst authored and Martin Schwidefsky committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    0b991f5 View commit details
    Browse the repository at this point in the history
  3. nfs: plug memory leak when ->prepare_layoutcommit fails

    "data" is currently leaked when the prepare_layoutcommit operation
    returns an error. Put the cred before taking the spinlock in that
    case, take the lock and then goto out_unlock which will drop the
    lock and then free "data".
    
    Signed-off-by: Jeff Layton <[email protected]>
    Signed-off-by: Trond Myklebust <[email protected]>
    jtlayton authored and trondmypd committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    3471648 View commit details
    Browse the repository at this point in the history
  4. nfs: Fix an oops caused by using other thread's stack space in ASYNC …

    …mode
    
    An oops caused by using other thread's stack space in sunrpc ASYNC sending thread.
    
    [ 9839.007187] ------------[ cut here ]------------
    [ 9839.007923] kernel BUG at fs/nfs/nfs4xdr.c:910!
    [ 9839.008069] invalid opcode: 0000 [#1] SMP
    [ 9839.008069] Modules linked in: blocklayoutdriver rpcsec_gss_krb5 nfsv4 dns_resolver nfs fscache snd_hda_codec_generic snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep snd_seq snd_seq_device snd_pcm joydev iosf_mbi crct10dif_pclmul snd_timer crc32_pclmul crc32c_intel ghash_clmulni_intel snd soundcore ppdev pvpanic parport_pc i2c_piix4 serio_raw virtio_balloon parport acpi_cpufreq nfsd nfs_acl lockd grace auth_rpcgss sunrpc qxl drm_kms_helper virtio_net virtio_console virtio_blk ttm drm virtio_pci virtio_ring virtio ata_generic pata_acpi
    [ 9839.008069] CPU: 0 PID: 308 Comm: kworker/0:1H Not tainted 4.0.0-0.rc4.git1.3.fc23.x86_64 #1
    [ 9839.008069] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
    [ 9839.008069] Workqueue: rpciod rpc_async_schedule [sunrpc]
    [ 9839.008069] task: ffff8800d8b4d8e0 ti: ffff880036678000 task.ti: ffff880036678000
    [ 9839.008069] RIP: 0010:[<ffffffffa0339cc9>]  [<ffffffffa0339cc9>] reserve_space.part.73+0x9/0x10 [nfsv4]
    [ 9839.008069] RSP: 0018:ffff88003667ba58  EFLAGS: 00010246
    [ 9839.008069] RAX: 0000000000000000 RBX: 000000001fc15e18 RCX: ffff8800c0193800
    [ 9839.008069] RDX: ffff8800e4ae3f24 RSI: 000000001fc15e2c RDI: ffff88003667bcd0
    [ 9839.008069] RBP: ffff88003667ba58 R08: ffff8800d9173008 R09: 0000000000000003
    [ 9839.008069] R10: ffff88003667bcd0 R11: 000000000000000c R12: 0000000000010000
    [ 9839.008069] R13: ffff8800d9173350 R14: 0000000000000000 R15: ffff8800c0067b98
    [ 9839.008069] FS:  0000000000000000(0000) GS:ffff88011fc00000(0000) knlGS:0000000000000000
    [ 9839.008069] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    [ 9839.008069] CR2: 00007f988c9c8bb0 CR3: 00000000d99b6000 CR4: 00000000000407f0
    [ 9839.008069] Stack:
    [ 9839.008069]  ffff88003667bbc8 ffffffffa03412c5 00000000c6c55680 ffff880000000003
    [ 9839.008069]  0000000000000088 00000010c6c55680 0001000000000002 ffffffff816e87e9
    [ 9839.008069]  0000000000000000 00000000477290e2 ffff88003667bab8 ffffffff81327ba3
    [ 9839.008069] Call Trace:
    [ 9839.008069]  [<ffffffffa03412c5>] encode_attrs+0x435/0x530 [nfsv4]
    [ 9839.008069]  [<ffffffff816e87e9>] ? inet_sendmsg+0x69/0xb0
    [ 9839.008069]  [<ffffffff81327ba3>] ? selinux_socket_sendmsg+0x23/0x30
    [ 9839.008069]  [<ffffffff8164c1df>] ? do_sock_sendmsg+0x9f/0xc0
    [ 9839.008069]  [<ffffffff8164c278>] ? kernel_sendmsg+0x58/0x70
    [ 9839.008069]  [<ffffffffa011acc0>] ? xdr_reserve_space+0x20/0x170 [sunrpc]
    [ 9839.008069]  [<ffffffffa011acc0>] ? xdr_reserve_space+0x20/0x170 [sunrpc]
    [ 9839.008069]  [<ffffffffa0341b40>] ? nfs4_xdr_enc_open_noattr+0x130/0x130 [nfsv4]
    [ 9839.008069]  [<ffffffffa03419a5>] encode_open+0x2d5/0x340 [nfsv4]
    [ 9839.008069]  [<ffffffffa0341b40>] ? nfs4_xdr_enc_open_noattr+0x130/0x130 [nfsv4]
    [ 9839.008069]  [<ffffffffa011ab89>] ? xdr_encode_opaque+0x19/0x20 [sunrpc]
    [ 9839.008069]  [<ffffffffa0339cfb>] ? encode_string+0x2b/0x40 [nfsv4]
    [ 9839.008069]  [<ffffffffa0341bf3>] nfs4_xdr_enc_open+0xb3/0x140 [nfsv4]
    [ 9839.008069]  [<ffffffffa0110a4c>] rpcauth_wrap_req+0xac/0xf0 [sunrpc]
    [ 9839.008069]  [<ffffffffa01017db>] call_transmit+0x18b/0x2d0 [sunrpc]
    [ 9839.008069]  [<ffffffffa0101650>] ? call_decode+0x860/0x860 [sunrpc]
    [ 9839.008069]  [<ffffffffa0101650>] ? call_decode+0x860/0x860 [sunrpc]
    [ 9839.008069]  [<ffffffffa010caa0>] __rpc_execute+0x90/0x460 [sunrpc]
    [ 9839.008069]  [<ffffffffa010ce85>] rpc_async_schedule+0x15/0x20 [sunrpc]
    [ 9839.008069]  [<ffffffff810b452b>] process_one_work+0x1bb/0x410
    [ 9839.008069]  [<ffffffff810b47d3>] worker_thread+0x53/0x470
    [ 9839.008069]  [<ffffffff810b4780>] ? process_one_work+0x410/0x410
    [ 9839.008069]  [<ffffffff810b4780>] ? process_one_work+0x410/0x410
    [ 9839.008069]  [<ffffffff810ba7b8>] kthread+0xd8/0xf0
    [ 9839.008069]  [<ffffffff810ba6e0>] ? kthread_worker_fn+0x180/0x180
    [ 9839.008069]  [<ffffffff81786418>] ret_from_fork+0x58/0x90
    [ 9839.008069]  [<ffffffff810ba6e0>] ? kthread_worker_fn+0x180/0x180
    [ 9839.008069] Code: 00 00 48 c7 c7 21 fa 37 a0 e8 94 1c d6 e0 c6 05 d2 17 05 00 01 8b 03 eb d7 66 0f 1f 84 00 00 00 00 00 66 66 66 66 90 55 48 89 e5 <0f> 0b 0f 1f 44 00 00 66 66 66 66 90 55 48 89 e5 41 54 53 89 f3
    [ 9839.008069] RIP  [<ffffffffa0339cc9>] reserve_space.part.73+0x9/0x10 [nfsv4]
    [ 9839.008069]  RSP <ffff88003667ba58>
    [ 9839.071114] ---[ end trace cc14c03adb522e94 ]---
    
    Signed-off-by: Kinglong Mee <[email protected]>
    Signed-off-by: Trond Myklebust <[email protected]>
    kinglongmee authored and trondmypd committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    a49c269 View commit details
    Browse the repository at this point in the history
  5. ACPI / PM: Use target_state to set the device power state

    Commit 20dacb7 ("ACPI / PM: Rework device power management to follow
    ACPI 6") changed the device power management to use D3hot if the device
    in question does not have _PR3 method even if D3cold was requested by the
    caller.
    
    However, if the device has _PR3 device->power.state is also set to D3hot
    instead of D3Cold after power resources have been turned off because
    device->power.state will be assigned from "state" instead of
    "target_state".
    
    Next time the device is transitioned to D0, acpi_power_transition() will
    find that the current power state of the device is D3hot instead of D3cold
    which causes it to power down all resources required for the current
    (wrong) state D3hot.
    
    Below is a simplified ASL example of a real touch panel device which
    triggers the problem:
    
      Scope (TPL1)
      {
          Name (_PR0, Package (1) { \_SB.PCI0.I2C1.PXTC })
          Name (_PR3, Package (1) { \_SB.PCI0.I2C1.PXTC })
          ...
      }
    
    In both D0 and D3hot the same power resource is required. However, when
    acpi_power_transition() turns off power resources required for D3hot (as
    the device is transitioned to D0) it powers down PXTC which then makes the
    device to lose its power.
    
    Fix this by assigning "target_state" to the device power state instead of
    "state" that is always D3hot even for devices with valid _PR3.
    
    Fixes: 20dacb7 (ACPI / PM: Rework device power management to follow ACPI 6)
    Signed-off-by: Mika Westerberg <[email protected]>
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    westeri authored and rafaeljw committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    71b6544 View commit details
    Browse the repository at this point in the history
  6. cpufreq: Avoid attempts to create duplicate symbolic links

    After commit 8754914 (cpufreq: Stop migrating sysfs files on
    hotplug) there is a problem with CPUs that share cpufreq policy
    objects with other CPUs and are initially offline.
    
    Say CPU1 shares a policy with CPU0 which is online and is registered
    first.  As part of the registration process, cpufreq_add_dev() is
    called for it.  It creates the policy object and a symbolic link
    to it from the CPU1's sysfs directory.  If CPU1 is registered
    subsequently and it is offline at that time, cpufreq_add_dev() will
    attempt to create a symbolic link to the policy object for it, but
    that link is present already, so a warning about that will be
    triggered.
    
    To avoid that warning, make cpufreq use an additional CPU mask
    containing related CPUs that are actually present for each policy
    object.  That mask is initialized when the policy object is populated
    after its creation (for the first online CPU using it) and it includes
    CPUs from the "policy CPUs" mask returned by the cpufreq driver's
    ->init() callback that are physically present at that time.  Symbolic
    links to the policy are created only for the CPUs in that mask.
    
    If cpufreq_add_dev() is invoked for an offline CPU, it checks the
    new mask and only creates the symlink if the CPU was not in it (the
    CPU is added to the mask at the same time).
    
    In turn, cpufreq_remove_dev() drops the given CPU from the new mask,
    removes its symlink to the policy object and returns, unless it is
    the CPU owning the policy object.  In that case, the policy object
    is moved to a new CPU's sysfs directory or deleted if the CPU being
    removed was the last user of the policy.
    
    While at it, notice that cpufreq_remove_dev() can't fail, because
    its return value is ignored, so make it ignore return values from
    __cpufreq_remove_dev_prepare() and __cpufreq_remove_dev_finish()
    and prevent these functions from aborting on errors returned by
    __cpufreq_governor().  Also drop the now unused sif argument from
    them.
    
    Fixes: 8754914 (cpufreq: Stop migrating sysfs files on hotplug)
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    Reported-and-tested-by: Russell King <[email protected]>
    Acked-by: Viresh Kumar <[email protected]>
    rafaeljw committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    559ed40 View commit details
    Browse the repository at this point in the history
  7. Merge tag 'for-f2fs-v4.2-rc5' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/jaegeuk/f2fs
    
    Pull f2fs fixes from Jaegeuk Kim.
    
    * tag 'for-f2fs-v4.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs:
      f2fs: call set_page_dirty to attach i_wb for cgroup
      f2fs: handle error cases in move_encrypted_block
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    2ee6b00 View commit details
    Browse the repository at this point in the history
  8. Merge tag 'nfs-for-4.2-2' of git://git.linux-nfs.org/projects/trondmy…

    …/linux-nfs
    
    Pull NFS client bugfixes from Trond Myklebust:
     "Highlights include:
    
      Stable patches:
       - Fix a situation where the client uses the wrong (zero) stateid.
       - Fix a memory leak in nfs_do_recoalesce
    
      Bugfixes:
       - Plug a memory leak when ->prepare_layoutcommit fails
       - Fix an Oops in the NFSv4 open code
       - Fix a backchannel deadlock
       - Fix a livelock in sunrpc when sendmsg fails due to low memory
         availability
       - Don't revalidate the mapping if both size and change attr are up to
         date
       - Ensure we don't miss a file extension when doing pNFS
       - Several fixes to handle NFSv4.1 sequence operation status bits
         correctly
       - Several pNFS layout return bugfixes"
    
    * tag 'nfs-for-4.2-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (28 commits)
      nfs: Fix an oops caused by using other thread's stack space in ASYNC mode
      nfs: plug memory leak when ->prepare_layoutcommit fails
      SUNRPC: Report TCP errors to the caller
      sunrpc: translate -EAGAIN to -ENOBUFS when socket is writable.
      NFSv4.2: handle NFS-specific llseek errors
      NFS: Don't clear desc->pg_moreio in nfs_do_recoalesce()
      NFS: Fix a memory leak in nfs_do_recoalesce
      NFS: nfs_mark_for_revalidate should always set NFS_INO_REVAL_PAGECACHE
      NFS: Remove the "NFS_CAP_CHANGE_ATTR" capability
      NFS: Set NFS_INO_REVAL_PAGECACHE if the change attribute is uninitialised
      NFS: Don't revalidate the mapping if both size and change attr are up to date
      NFSv4/pnfs: Ensure we don't miss a file extension
      NFSv4: We must set NFS_OPEN_STATE flag in nfs_resync_open_stateid_locked
      SUNRPC: xprt_complete_bc_request must also decrement the free slot count
      SUNRPC: Fix a backchannel deadlock
      pNFS: Don't throw out valid layout segments
      pNFS: pnfs_roc_drain() fix a race with open
      pNFS: Fix races between return-on-close and layoutreturn.
      pNFS: pnfs_roc_drain should return 'true' when sleeping
      pNFS: Layoutreturn must invalidate all existing layout segments.
      ...
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    d8132e0 View commit details
    Browse the repository at this point in the history
  9. Merge tag 'linux-kselftest-4.2-rc5' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/shuah/linux-kselftest
    
    Pull kselftest fix from Shuah Khan.
    
    * tag 'linux-kselftest-4.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
      selftests/futex: Fix futex_cmp_requeue_pi() error handling
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    30b4f0f View commit details
    Browse the repository at this point in the history
  10. Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/mst/vhost
    
    Pull vhost fixes from Michael Tsirkin:
     "Two bugfixes only here"
    
    * tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
      vhost: fix error handling for memory region alloc
      vhost: actually track log eventfd file
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    90c8acc View commit details
    Browse the repository at this point in the history
  11. Merge tag 'devicetree-fixes-for-4.2' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/robh/linux
    
    Pull devicetree fixes from Rob Herring:
     "A handful of DT related fixes for 4.2-rc"
    
    * tag 'devicetree-fixes-for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
      of: Drop owner assignment from platform and i2c driver
      DEVICETREE: Misc fix for the AR7100 SPI controller binding
      of: constify drv arg of of_driver_match_device stub
      of: add HAS_IOMEM depends to OF_ADDRESS
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    02ff371 View commit details
    Browse the repository at this point in the history
  12. Revert "Input: zforce - don't overwrite the stack"

    This reverts commit 7d01cd2 because
    with given FRAME_MAXSIZE of 257 the check will never trigger and it
    causes warnings from GCC (with -Wtype-limits). Also the check was
    incorrect as it was not accounting for the already read 2 bytes of data
    stored in the buffer.
    dtor committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    3213afb View commit details
    Browse the repository at this point in the history
  13. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/egtvedt/linux-avr32
    
    Pull AVR32 fix from Hans-Christian Egtvedt.
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/linux-avr32:
      avr32: handle NULL as a valid clock object
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    67eb890 View commit details
    Browse the repository at this point in the history
  14. Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/arm64/linux
    
    Pull arm64 fix from Catalin Marinas:
     "Fix buffer overflow when UTF-16 UEFI vendor string is copied from the
      system table into a char array with a size of 100 bytes"
    
    * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
      arm64/efi: map the entire UEFI vendor string before reading it
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    d61be4b View commit details
    Browse the repository at this point in the history
  15. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/jmorris/linux-security
    
    Pull key fix from James Morris.
    
    Fix memory leak.
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
      KEYS: ensure we free the assoc array edit if edit is valid
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    d4ec1f1 View commit details
    Browse the repository at this point in the history
  16. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/dledford/rdma
    
    Pull rdma fixes from Doug Ledford:
    
     - two minor bug fixes
    
     - relicense ocrdma driver to dual license, GPL or BSD
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma:
      RDMA/ocrdma: update ocrdma module license string
      RDMA/ocrdma: update ocrdma license to dual-license
      IB/ipoib: Fix CONFIG_INFINIBAND_IPOIB_CM
      RDMA/cxgb3: fail get_dma_mr on 64 bit arches
    torvalds committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    956325b View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2015

  1. xfs: call dax_fault on read page faults for DAX

    When modifying the patch series to handle the XFS MMAP_LOCK nesting
    of page faults, I botched the conversion of the read page fault
    path, and so it is only every calling through the page cache. Re-add
    the necessary __dax_fault() call for such files.
    
    Because the get_blocks callback on read faults may not set up the
    mapping buffer correctly to allow unwritten extent completion to be
    run, we need to allow callers of __dax_fault() to pass a null
    complete_unwritten() callback. The DAX code always zeros the
    unwritten page when it is read faulted so there are no stale data
    exposure issues with not doing the conversion. The only downside
    will be the potential for increased CPU overhead on repeated read
    faults of the same page. If this proves to be a problem, then the
    filesystem needs to fix it's get_block callback and provide a
    convert_unwritten() callback to the read fault path.
    
    Signed-off-by: Dave Chinner <[email protected]>
    Reviewed-by: Matthew Wilcox <[email protected]>
    Reviewed-by: Brian Foster <[email protected]>
    Signed-off-by: Dave Chinner <[email protected]>
    Dave Chinner authored and dchinner committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    b2442c5 View commit details
    Browse the repository at this point in the history
  2. xfs: remote attribute headers contain an invalid LSN

    In recent testing, a system that crashed failed log recovery on
    restart with a bad symlink buffer magic number:
    
    XFS (vda): Starting recovery (logdev: internal)
    XFS (vda): Bad symlink block magic!
    XFS: Assertion failed: 0, file: fs/xfs/xfs_log_recover.c, line: 2060
    
    On examination of the log via xfs_logprint, none of the symlink
    buffers in the log had a bad magic number, nor were any other types
    of buffer log format headers mis-identified as symlink buffers.
    Tracing was used to find the buffer the kernel was tripping over,
    and xfs_db identified it's contents as:
    
    000: 5841524d 00000000 00000346 64d82b48 8983e692 d71e4680 a5f49e2c b317576e
    020: 00000000 00602038 00000000 006034ce d0020000 00000000 4d4d4d4d 4d4d4d4d
    040: 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d
    060: 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d
    .....
    
    This is a remote attribute buffer, which are notable in that they
    are not logged but are instead written synchronously by the remote
    attribute code so that they exist on disk before the attribute
    transactions are committed to the journal.
    
    The above remote attribute block has an invalid LSN in it - cycle
    0xd002000, block 0 - which means when log recovery comes along to
    determine if the transaction that writes to the underlying block
    should be replayed, it sees a block that has a future LSN and so
    does not replay the buffer data in the transaction. Instead, it
    validates the buffer magic number and attaches the buffer verifier
    to it.  It is this buffer magic number check that is failing in the
    above assert, indicating that we skipped replay due to the LSN of
    the underlying buffer.
    
    The problem here is that the remote attribute buffers cannot have a
    valid LSN placed into them, because the transaction that contains 
    the attribute tree pointer changes and the block allocation that the
    attribute data is being written to hasn't yet been committed. Hence
    the LSN field in the attribute block is completely unwritten,
    thereby leaving the underlying contents of the block in the LSN
    field. It could have any value, and hence a future overwrite of the
    block by log recovery may or may not work correctly.
    
    Fix this by always writing an invalid LSN to the remote attribute
    block, as any buffer in log recovery that needs to write over the
    remote attribute should occur. We are protected from having old data
    written over the attribute by the fact that freeing the block before
    the remote attribute is written will result in the buffer being
    marked stale in the log and so all changes prior to the buffer stale
    transaction will be cancelled by log recovery.
    
    Hence it is safe to ignore the LSN in the case or synchronously
    written, unlogged metadata such as remote attribute blocks, and to
    ensure we do that correctly, we need to write an invalid LSN to all
    remote attribute blocks to trigger immediate recovery of metadata
    that is written over the top.
    
    As a further protection for filesystems that may already have remote
    attribute blocks with bad LSNs on disk, change the log recovery code
    to always trigger immediate recovery of metadata over remote
    attribute blocks.
    
    cc: <[email protected]>
    Signed-off-by: Dave Chinner <[email protected]>
    Reviewed-by: Brian Foster <[email protected]>
    Signed-off-by: Dave Chinner <[email protected]>
    Dave Chinner authored and dchinner committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    e3c32ee View commit details
    Browse the repository at this point in the history
  3. xfs: remote attributes need to be considered data

    We don't log remote attribute contents, and instead write them
    synchronously before we commit the block allocation and attribute
    tree update transaction. As a result we are writing to the allocated
    space before the allcoation has been made permanent.
    
    As a result, we cannot consider this allocation to be a metadata
    allocation. Metadata allocation can take blocks from the free list
    and so reuse them before the transaction that freed the block is
    committed to disk. This behaviour is perfectly fine for journalled
    metadata changes as log recovery will ensure the free operation is
    replayed before the overwrite, but for remote attribute writes this
    is not the case.
    
    Hence we have to consider the remote attribute blocks to contain
    data and allocate accordingly. We do this by dropping the
    XFS_BMAPI_METADATA flag from the block allocation. This means the
    allocation will not use blocks that are on the busy list without
    first ensuring that the freeing transaction has been committed to
    disk and the blocks removed from the busy list. This ensures we will
    never overwrite a freed block without first ensuring that it is
    really free.
    
    cc: <[email protected]>
    Signed-off-by: Dave Chinner <[email protected]>
    Reviewed-by: Brian Foster <[email protected]>
    Signed-off-by: Dave Chinner <[email protected]>
    Dave Chinner authored and dchinner committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    df150ed View commit details
    Browse the repository at this point in the history
  4. Merge branches 'pm-cpufreq' and 'acpi-pm'

    * pm-cpufreq:
      cpufreq: Avoid attempts to create duplicate symbolic links
      intel_pstate: Add get_scaling cpu_defaults param to Knights Landing
    
    * acpi-pm:
      ACPI / PM: Use target_state to set the device power state
    rafaeljw committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    d29809b View commit details
    Browse the repository at this point in the history
  5. Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending

    Pull SCSI target fixes from Nicholas Bellinger:
     "This series is larger than what I'd normally be conformable with
      sending for a -rc5 PULL request..
    
      However, the bulk of the series is localized to qla2xxx target
      specific fixes that address a number of real-world correctness issues,
      that have been outstanding on the list for ~6 weeks now.  They where
      submitted + verified + acked by the HW LLD vendor, contributed by a
      major production customer of the code, and are marked for v3.18.y
      stable code.
    
      That said, I don't see a good reason to wait another month to get
      these fixes into mainline.
    
      Beyond the qla2xx specific fixes, this series also includes:
    
       - bugfix for a long standing use-after-free in iscsi-target during
         TPG shutdown + demo-mode sessions.
    
       - bugfix for a >= v4.0 regression OOPs in iscsi-target during a
         iscsi_start_kthreads() failure.
    
       - bugfix for a >= v4.0 regression hang in iscsi-target for iser
         explicit session/connection logout.
    
       - bugfix for a iser-target bug where a early CMA REJECTED status
         during login triggers a NULL pointer dereference OOPs.
    
       - bugfixes for a handful of v4.2-rc1 specific regressions related to
         the larger set of recent backend configfs attribute changes.
    
      A big thanks to QLogic + Pure Storage for the qla2xxx target bugfixes"
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (28 commits)
      Documentation/target: Fix tcm_mod_builder.py build breakage
      iser-target: Fix REJECT CM event use-after-free OOPs
      iscsi-target: Fix iser explicit logout TX kthread leak
      iscsi-target: Fix iscsit_start_kthreads failure OOPs
      iscsi-target: Fix use-after-free during TPG session shutdown
      qla2xxx: terminate exchange when command is aborted by LIO
      qla2xxx: drop cmds/tmrs arrived while session is being deleted
      qla2xxx: disable scsi_transport_fc registration in target mode
      qla2xxx: added sess generations to detect RSCN update races
      qla2xxx: Abort stale cmds on qla_tgt_wq when plogi arrives
      qla2xxx: delay plogi/prli ack until existing sessions are deleted
      qla2xxx: cleanup cmd in qla workqueue before processing TMR
      qla2xxx: kill sessions/log out initiator on RSCN and port down events
      qla2xxx: fix command initialization in target mode.
      qla2xxx: Remove msleep in qlt_send_term_exchange
      qla2xxx: adjust debug flags
      qla2xxx: release request queue reservation.
      qla2xxx: Add flush after updating ATIOQ consumer index.
      qla2xxx: Enable target mode for ISP27XX
      qla2xxx: Fix hardware lock/unlock issue causing kernel panic.
      ...
    torvalds committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    733db57 View commit details
    Browse the repository at this point in the history
  6. Merge tag 'vfio-v4.2-rc5' of git://github.com/awilliam/linux-vfio

    Pull VFIO fix from Alex Williamson:
     "Fix a lockdep reported deadlock in device open error path"
    
    * tag 'vfio-v4.2-rc5' of git://github.com/awilliam/linux-vfio:
      vfio: Fix lockdep issue
    torvalds committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    d9065f4 View commit details
    Browse the repository at this point in the history
  7. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/s390/linux
    
    Pull s390 fixes from Martin Schwidefsky:
     "Two bug fixes:
    
       - fix a crash on pre-z10 hardware due to cache-info
    
       - fix an issue with classic BPF programs in the eBPF JIT"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
      s390/cachinfo: add missing facility check to init_cache_level()
      s390/bpf: clear correct BPF accumulator register
    torvalds committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    86ea07c View commit details
    Browse the repository at this point in the history
  8. Revert "dm cache: do not wake_worker() in free_migration()"

    This reverts commit 386cb7c.
    
    Taking the wake_worker() out of free_migration() will slow writeback
    dramatically, and hence adaptability.
    
    Say we have 10k blocks that need writing back, but are only able to
    issue 5 concurrently due to the migration bandwidth: it's imperative
    that we wake_worker() immediately after migration completion; waiting
    for the next 1 second wake up (via do_waker) means it'll take a long
    time to write that all back.
    
    Reported-by: Joe Thornber <[email protected]>
    Signed-off-by: Mike Snitzer <[email protected]>
    snitm committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    3508e65 View commit details
    Browse the repository at this point in the history
  9. dm cache: fix device destroy hang due to improper prealloc_used accou…

    …nting
    
    Commit 665022d ("dm cache: avoid calls to prealloc_free_structs() if
    possible") introduced a regression that caused the removal of a DM cache
    device to hang in cache_postsuspend()'s call to wait_for_migrations()
    with the following stack trace:
    
      [<ffffffff81651457>] schedule+0x37/0x80
      [<ffffffffa041e21b>] cache_postsuspend+0xbb/0x470 [dm_cache]
      [<ffffffff810ba970>] ? prepare_to_wait_event+0xf0/0xf0
      [<ffffffffa0006f77>] dm_table_postsuspend_targets+0x47/0x60 [dm_mod]
      [<ffffffffa0001eb5>] __dm_destroy+0x215/0x250 [dm_mod]
      [<ffffffffa0004113>] dm_destroy+0x13/0x20 [dm_mod]
      [<ffffffffa00098cd>] dev_remove+0x10d/0x170 [dm_mod]
      [<ffffffffa00097c0>] ? dev_suspend+0x240/0x240 [dm_mod]
      [<ffffffffa0009f85>] ctl_ioctl+0x255/0x4d0 [dm_mod]
      [<ffffffff8127ac00>] ? SYSC_semtimedop+0x280/0xe10
      [<ffffffffa000a213>] dm_ctl_ioctl+0x13/0x20 [dm_mod]
      [<ffffffff811fd432>] do_vfs_ioctl+0x2d2/0x4b0
      [<ffffffff81117d5f>] ? __audit_syscall_entry+0xaf/0x100
      [<ffffffff81022636>] ? do_audit_syscall_entry+0x66/0x70
      [<ffffffff811fd689>] SyS_ioctl+0x79/0x90
      [<ffffffff81023e58>] ? syscall_trace_leave+0xb8/0x110
      [<ffffffff81654f6e>] entry_SYSCALL_64_fastpath+0x12/0x71
    
    Fix this by accounting for the call to prealloc_data_structs()
    immediately _before_ the call as opposed to after.  This is needed
    because it is possible to break out of the control loop after the call
    to prealloc_data_structs() but before prealloc_used was set to true.
    
    Signed-off-by: Mike Snitzer <[email protected]>
    snitm committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    795e633 View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2015

  1. Merge tag 'dm-4.2-fixes-3' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/device-mapper/linux-dm
    
    Pull device mapper fixes from Mike Snitzer:
    
     - fix DM thinp to consistently return -ENOSPC when out of data space
    
     - fix a logic bug in the DM cache smq policy's creation error path
    
     - revert a DM cache 4.2-rc3 change that reduced writeback efficiency
    
     - fix a hang on DM cache device destruction due to improper
       prealloc_used accounting introduced in 4.2-rc3
    
     - update URL for dm-crypt wiki page
    
    * tag 'dm-4.2-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
      dm cache: fix device destroy hang due to improper prealloc_used accounting
      Revert "dm cache: do not wake_worker() in free_migration()"
      dm crypt: update wiki page URL
      dm cache policy smq: fix alloc_bitset check that always evaluates as false
      dm thin: return -ENOSPC when erroring retry list due to out of data space
    torvalds committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    d0db3a3 View commit details
    Browse the repository at this point in the history
  2. Merge tag 'pm+acpi-4.2-rc5' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/rafael/linux-pm
    
    Pull power management and ACPI fixes from Rafael Wysocki:
     "These fix three regressions, two recent ones (cpufreq core and ACPI
      device power management) and one introduced during the 4.1 cycle
      (intel_pstate).
    
      Specifics:
    
       - Fix a recently introduced issue in the cpufreq core causing it to
         attempt to create duplicate symbolic links to the policy directory
         in sysfs for CPUs that are offline when the cpufreq driver is being
         registered (Rafael J Wysocki)
    
       - Fix a recently introduced problem in the ACPI device power
         management core code causing it to store an incorrect value in the
         device object's power.state field in some cases which in turn leads
         to attempts to turn power resources off while they should still be
         on going forward (Mika Westerberg)
    
       - Fix an intel_pstate driver issue introduced during the 4.1 cycle
         which leads to kernel panics on boot on Knights Landing chips due
         to incomplete support for them in that driver (Lukasz Anaczkowski)"
    
    * tag 'pm+acpi-4.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
      cpufreq: Avoid attempts to create duplicate symbolic links
      ACPI / PM: Use target_state to set the device power state
      intel_pstate: Add get_scaling cpu_defaults param to Knights Landing
    torvalds committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    d41a83b View commit details
    Browse the repository at this point in the history
  3. hwmon: (nct7904) Rename pwm attributes to match hwmon ABI

    pwm attributes have well defined names, which should be used.
    
    Cc: Vadim V. Vlasov <[email protected]>
    Cc: [email protected] #v4.1+
    Signed-off-by: Guenter Roeck <[email protected]>
    groeck committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    0d6aaff View commit details
    Browse the repository at this point in the history
  4. hwmon: (nct7802) Fix integer overflow seen when writing voltage limits

    Writing a large value into a voltage limit attribute can result
    in an overflow due to an auto-conversion from unsigned long to
    unsigned int.
    
    Cc: Constantine Shulyupin <[email protected]>
    Reviewed-by: Jean Delvare <[email protected]>
    Cc: [email protected] # v4.1+
    Signed-off-by: Guenter Roeck <[email protected]>
    groeck committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    9200bc4 View commit details
    Browse the repository at this point in the history
  5. Merge tag 'hwmon-for-linus-v4.2-rc5' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/groeck/linux-staging
    
    Pull hwmon fixes from Guenter Roeck:
     "Two patches headed for -stable.
    
      nct7802: Fix integer overflow seen when writing voltage limits
      nct7904: Rename pwm attributes to match hwmon ABI"
    
    * tag 'hwmon-for-linus-v4.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
      hwmon: (nct7802) Fix integer overflow seen when writing voltage limits
      hwmon: (nct7904) Rename pwm attributes to match hwmon ABI
    torvalds committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    0a55205 View commit details
    Browse the repository at this point in the history
  6. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/dtor/input
    
    Pull input fixes from Dmitry Torokhov:
     "The main change is support for keyboards and touchpads found in 2015
      editions of Macbooks"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
      Revert "Input: zforce - don't overwrite the stack"
      Input: bcm5974 - add support for the 2015 Macbook Pro
      HID: apple: Add support for the 2015 Macbook Pro
      Input: bcm5974 - prepare for a new trackpad generation
      Input: synaptics - dump ext10 capabilities as well
    torvalds committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    dbe0811 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2015

  1. Merge tag 'xfs-for-linus-4.2-rc4' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/dgc/linux-xfs
    
    Pull xfs fixes from Dave Chinner:
     "There are a couple of recently found, long standing remote attribute
      corruption fixes caused by log recovery getting confused after a
      crash, and the new DAX code in XFS (merged in 4.2-rc1) needs to
      actually use the DAX fault path on read faults.
    
      Summary:
    
       - remote attribute log recovery corruption fixes
    
       - DAX page faults need to use direct mappings, not a page cache
         mapping"
    
    * tag 'xfs-for-linus-4.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs:
      xfs: remote attributes need to be considered data
      xfs: remote attribute headers contain an invalid LSN
      xfs: call dax_fault on read page faults for DAX
    torvalds committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    8400935 View commit details
    Browse the repository at this point in the history