1. 16 Jun, 2017 12 commits
    • Linus Torvalds's avatar
      Merge tag 'configfs-for-4.12' of git://git.infradead.org/users/hch/configfs · ab2789b7
      Linus Torvalds authored
      Pull configfs updates from Christoph Hellwig:
       "A fix from Nic for a race seen in production (including a stable tag).
      
        And while I'm sending you this I'm also sneaking in a trivial new
        helper from Bart so that we don't need inter-tree dependencies for the
        next merge window"
      
      * tag 'configfs-for-4.12' of git://git.infradead.org/users/hch/configfs:
        configfs: Introduce config_item_get_unless_zero()
        configfs: Fix race between create_link and configfs_rmdir
      ab2789b7
    • Christoph Hellwig's avatar
      fs: pass on flags in compat_writev · 20223f0f
      Christoph Hellwig authored
      Fixes: 793b80ef ("vfs: pass a flags argument to vfs_readv/vfs_writev")
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      20223f0f
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.12-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 3bee1970
      Linus Torvalds authored
      Pull MMC fix from Ulf Hansson:
       "MMC meson-gx host: work around broken SDIO with certain WiFi chips"
      
      * tag 'mmc-v4.12-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
        mmc: meson-gx: work around broken SDIO with certain WiFi chips
      3bee1970
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-for-v4.12-rc6' of git://people.freedesktop.org/~airlied/linux · db96d585
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "This is the main fixes pull for 4.12-rc6, all pretty normal for this
        stage, nothing really stands out. The mxsfb one is probably the
        largest and it's for a black screen boot problem.
      
        AMD, i915, mgag200, msxfb, tegra fixes"
      
      * tag 'drm-fixes-for-v4.12-rc6' of git://people.freedesktop.org/~airlied/linux:
        drm: mxsfb_crtc: Reset the eLCDIF controller
        drm/mgag200: Fix to always set HiPri for G200e4 V2
        drm/tegra: Correct idr_alloc() minimum id
        drm/tegra: Fix lockup on a use of staging API
        gpu: host1x: Fix error handling
        drm/radeon: Fix overflow of watermark calcs at > 4k resolutions.
        drm/amdgpu: Fix overflow of watermark calcs at > 4k resolutions.
        drm/radeon: fix "force the UVD DPB into VRAM as well"
        drm/i915: Fix GVT-g PVINFO version compatibility check
        drm/i915: Fix SKL+ watermarks for 90/270 rotation
        drm/i915: Fix scaling check for 90/270 degree plane rotation
        drm: dw-hdmi: Fix compilation breakage by selecting REGMAP_MMIO
      db96d585
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma · 51ce5f33
      Linus Torvalds authored
      Pull rdma fixes from Doug Ledford:
      
       "I had thought at the time of the last pull request that there wouldn't
        be much more to go, but several things just kept trickling in over the
        last week.
      
        Instead of just the six patches to bnxt_re that I had anticipated,
        there are another five IPoIB patches, two qedr patches, and a few
        other miscellaneous patches.
      
        The bnxt_re patches are more lines of diff than I like to submit this
        late in the game. That's mostly because of the first two patches in
        the series of six. I almost dropped them just because of the lines of
        churn, but on a close review, a lot of the churn came from removing
        duplicated code sections and consolidating them into callable
        routines. I felt like this made the number of lines of change more
        acceptable, and they address problems, so I left them. The remainder
        of the patches are all small, well contained, and well understood.
      
        These have passed 0day testing, but have not been submitted to
        linux-next (but a local merge test with your current master was
        without any conflicts).
      
        Summary:
      
         - A fix for fix eea40b8f ("infiniband: call ipv6 route lookup via
           the stub interface")
      
         - Six patches against bnxt_re...the first two are considerably larger
           than I would like, but as they address real issues I went ahead and
           submitted them (it also helped that a good deal of the churn was
           removing code repeated in multiple places and consolidating it to
           one common function)
      
         - Two fixes against qedr that just came in
      
         - One fix against rxe that took a few revisions to get right plus
           time to get the proper reviews
      
         - Five late breaking IPoIB fixes
      
         - One late cxgb4 fix"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma:
        rdma/cxgb4: Fix memory leaks during module exit
        IB/ipoib: Fix memory leak in create child syscall
        IB/ipoib: Fix access to un-initialized napi struct
        IB/ipoib: Delete napi in device uninit default
        IB/ipoib: Limit call to free rdma_netdev for capable devices
        IB/ipoib: Fix memory leaks for child interfaces priv
        rxe: Fix a sleep-in-atomic bug in post_one_send
        RDMA/qedr: Add 64KB PAGE_SIZE support to user-space queues
        RDMA/qedr: Initialize byte_len in WC of READ and SEND commands
        RDMA/bnxt_re: Remove FMR support
        RDMA/bnxt_re: Fix RQE posting logic
        RDMA/bnxt_re: Add HW workaround for avoiding stall for UD QPs
        RDMA/bnxt_re: Dereg MR in FW before freeing the fast_reg_page_list
        RDMA/bnxt_re: HW workarounds for handling specific conditions
        RDMA/bnxt_re: Fixing the Control path command and response handling
        IB/addr: Fix setting source address in addr6_resolve()
      51ce5f33
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v4.12-2' of git://git.infradead.org/linux-platform-drivers-x86 · f69d64de
      Linus Torvalds authored
      Pull x86 platform driver fix from Darren Hart:
       "Just a single patch to fix an oops in the intel_telemetry_debugfs
        module load/unload"
      
      * tag 'platform-drivers-x86-v4.12-2' of git://git.infradead.org/linux-platform-drivers-x86:
        platform/x86: intel_telemetry_debugfs: fix oops when load/unload module
      f69d64de
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · e78e4626
      Linus Torvalds authored
      Pull block layer fix from Jens Axboe:
       "Just a single fix this week, fixing a regression introduced in this
        release.
      
        When we put the final reference to the queue, we may need to block.
        Ensure that we can safely do so. From Bart"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: Fix a blk_exit_rl() regression
      e78e4626
    • Linus Torvalds's avatar
      Merge branch 'dmi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · cbfb7497
      Linus Torvalds authored
      Pull dmi fixes from Jean Delvare.
      
      * 'dmi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        firmware: dmi_scan: Check DMI structure length
        firmware: dmi: Fix permissions of product_family
        firmware: dmi_scan: Make dmi_walk and dmi_walk_early return real error codes
        firmware: dmi_scan: Look for SMBIOS 3 entry point first
      cbfb7497
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 550ad8ef
      Linus Torvalds authored
      Pull selinux fix from James Morris:
       "Fix for a double free bug in SELinux"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        selinux: fix double free in selinux_parse_opts_str()
      550ad8ef
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2017-06-15' of... · 7119dbdf
      Dave Airlie authored
      Merge tag 'drm-intel-fixes-2017-06-15' of git://anongit.freedesktop.org/git/drm-intel into drm-fixes
      
      drm/i915 fixes for v4.12-rc6
      
      * tag 'drm-intel-fixes-2017-06-15' of git://anongit.freedesktop.org/git/drm-intel:
        drm/i915: Fix GVT-g PVINFO version compatibility check
        drm/i915: Fix SKL+ watermarks for 90/270 rotation
        drm/i915: Fix scaling check for 90/270 degree plane rotation
      7119dbdf
    • Dave Airlie's avatar
      Merge tag 'drm-misc-fixes-2017-06-15' of git://anongit.freedesktop.org/git/drm-misc into drm-fixes · 91c0719c
      Dave Airlie authored
      Driver Changes:
      - dw-hdmi: Fix compilation error if REGMAP_MMIO not selected (Laurent)
      - host1x: Fix incorrect return value (Christophe)
      - tegra: Shore up idr API usage in tegra staging code (Dmitry)
      - mgag200: Always use HiPri mode for G200e4v2 and limit max bandwidth (Mathieu)
      - mxsfb: Ensure display can be lit up without bootloader initialization (Fabio)
      
      Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
      Cc: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
      Cc: Dmitry Osipenko <digetx@gmail.com>
      Cc: Mathieu Larouche <mathieu.larouche@matrox.com>
      Cc: Fabio Estevam <fabio.estevam@nxp.com>
      
      * tag 'drm-misc-fixes-2017-06-15' of git://anongit.freedesktop.org/git/drm-misc:
        drm: mxsfb_crtc: Reset the eLCDIF controller
        drm/mgag200: Fix to always set HiPri for G200e4 V2
        drm/tegra: Correct idr_alloc() minimum id
        drm/tegra: Fix lockup on a use of staging API
        gpu: host1x: Fix error handling
        drm: dw-hdmi: Fix compilation breakage by selecting REGMAP_MMIO
      91c0719c
    • Dave Airlie's avatar
      Merge branch 'drm-fixes-4.12' of git://people.freedesktop.org/~agd5f/linux into drm-fixes · 1b22f6d7
      Dave Airlie authored
      A few fixes for 4.12:
      - fix a UVD regression on SI
      - fix overflow in watermark calcs on large modes
      
      * 'drm-fixes-4.12' of git://people.freedesktop.org/~agd5f/linux:
        drm/radeon: Fix overflow of watermark calcs at > 4k resolutions.
        drm/amdgpu: Fix overflow of watermark calcs at > 4k resolutions.
        drm/radeon: fix "force the UVD DPB into VRAM as well"
      1b22f6d7
  2. 15 Jun, 2017 16 commits
  3. 14 Jun, 2017 12 commits
    • Rafael J. Wysocki's avatar
      Merge branch 'acpica-fixes' · 95229334
      Rafael J. Wysocki authored
      * acpica-fixes:
        ACPICA: Tables: Mechanism to handle late stage acpi_get_table() imbalance
        Revert "ACPICA: Disassembler: Enhance resource descriptor detection"
      95229334
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpufreq', 'pm-cpuidle' and 'pm-devfreq' · f63e4f7d
      Rafael J. Wysocki authored
      * pm-cpufreq:
        cpufreq: conservative: Allow down_threshold to take values from 1 to 10
        Revert "cpufreq: schedutil: Reduce frequencies slower"
      
      * pm-cpuidle:
        cpuidle: dt: Add missing 'of_node_put()'
      
      * pm-devfreq:
        PM / devfreq: exynos-ppmu: Staticize event list
        PM / devfreq: exynos-ppmu: Handle return value of clk_prepare_enable
        PM / devfreq: exynos-nocp: Handle return value of clk_prepare_enable
      f63e4f7d
    • Jesper Dangaard Brouer's avatar
      net: don't global ICMP rate limit packets originating from loopback · 849a44de
      Jesper Dangaard Brouer authored
      Florian Weimer seems to have a glibc test-case which requires that
      loopback interfaces does not get ICMP ratelimited.  This was broken by
      commit c0303efe ("net: reduce cycles spend on ICMP replies that
      gets rate limited").
      
      An ICMP response will usually be routed back-out the same incoming
      interface.  Thus, take advantage of this and skip global ICMP
      ratelimit when the incoming device is loopback.  In the unlikely event
      that the outgoing it not loopback, due to strange routing policy
      rules, ICMP rate limiting still works via peer ratelimiting via
      icmpv4_xrlim_allow().  Thus, we should still comply with RFC1812
      (section 4.3.2.8 "Rate Limiting").
      
      This seems to fix the reproducer given by Florian.  While still
      avoiding to perform expensive and unneeded outgoing route lookup for
      rate limited packets (in the non-loopback case).
      
      Fixes: c0303efe ("net: reduce cycles spend on ICMP replies that gets rate limited")
      Reported-by: default avatarFlorian Weimer <fweimer@redhat.com>
      Reported-by: default avatar"H.J. Lu" <hjl.tools@gmail.com>
      Signed-off-by: default avatarJesper Dangaard Brouer <brouer@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      849a44de
    • Bart Van Assche's avatar
      block: Fix a blk_exit_rl() regression · dc9edc44
      Bart Van Assche authored
      Avoid that the following complaint is reported:
      
       BUG: sleeping function called from invalid context at kernel/workqueue.c:2790
       in_atomic(): 1, irqs_disabled(): 0, pid: 41, name: rcuop/3
       1 lock held by rcuop/3/41:
        #0:  (rcu_callback){......}, at: [<ffffffff8111f9a2>] rcu_nocb_kthread+0x282/0x500
       Call Trace:
        dump_stack+0x86/0xcf
        ___might_sleep+0x174/0x260
        __might_sleep+0x4a/0x80
        flush_work+0x7e/0x2e0
        __cancel_work_timer+0x143/0x1c0
        cancel_work_sync+0x10/0x20
        blk_throtl_exit+0x25/0x60
        blkcg_exit_queue+0x35/0x40
        blk_release_queue+0x42/0x130
        kobject_put+0xa9/0x190
      
      This happens since we invoke callbacks that need to block from the
      queue release handler. Fix this by pushing the final release to
      a workqueue.
      Reported-by: default avatarRoss Zwisler <zwisler@gmail.com>
      Fixes: commit b425e504 ("block: Avoid that blk_exit_rl() triggers a use-after-free")
      Signed-off-by: default avatarBart Van Assche <bart.vanassche@sandisk.com>
      Tested-by: default avatarRoss Zwisler <ross.zwisler@linux.intel.com>
      
      Updated changelog
      Signed-off-by: default avatarJens Axboe <axboe@fb.com>
      dc9edc44
    • Raju Rangoju's avatar
      rdma/cxgb4: Fix memory leaks during module exit · d4702645
      Raju Rangoju authored
      Fix memory leaks of iw_cxgb4 module in the exit path
      Signed-off-by: default avatarRaju Rangoju <rajur@chelsio.com>
      Reviewed-by: default avatarSteve Wise <swise@opengridcomputing.com>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      d4702645
    • Dan Carpenter's avatar
      net/act_pedit: fix an error code · c4f65b09
      Dan Carpenter authored
      I'm reviewing static checker warnings where we do ERR_PTR(0), which is
      the same as NULL.  I'm pretty sure we intended to return ERR_PTR(-EINVAL)
      here.  Sometimes these bugs lead to a NULL dereference but I don't
      immediately see that problem here.
      
      Fixes: 71d0ed70 ("net/act_pedit: Support using offset relative to the conventional network headers")
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Acked-by: default avatarAmir Vadai <amir@vadai.me>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c4f65b09
    • Feras Daoud's avatar
      IB/ipoib: Fix memory leak in create child syscall · 4542d66b
      Feras Daoud authored
      The flow of creating a new child goes through ipoib_vlan_add
      which allocates a new interface and checks the rtnl_lock.
      
      If the lock is taken, restart_syscall will be called to restart
      the system call again. In this case we are not releasing the
      already allocated interface, causing a leak.
      
      Fixes: 9baa0b03 ("IB/ipoib: Add rtnl_link_ops support")
      Signed-off-by: default avatarFeras Daoud <ferasda@mellanox.com>
      Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      4542d66b
    • Alex Vesker's avatar
      IB/ipoib: Fix access to un-initialized napi struct · 560b7c3f
      Alex Vesker authored
      There is no need to re-enable napi since we set the initialized
      flag before calling ipoib_ib_dev_stop which will disable napi,
      disabling napi twice is harmless in case it was already disabled.
      
      One more reason for this fix is that when using IPoIB new device
      driver napi is not added to priv, this can lead to kernel panic
      when rn_ops ndo_open fails.
      
      [ 289.755840] invalid opcode: 0000 [#1] SMP
      [ 289.757111] task: ffff880036964440 ti: ffff880178ee8000 task.ti: ffff880178ee8000
      [ 289.757111] RIP: 0010:[<ffffffffa05368d6>] [<ffffffffa05368d6>] napi_enable.part.24+0x4/0x6 [ib_ipoib]
      [ 289.757111] RSP: 0018:ffff880178eeb6d8 EFLAGS: 00010246
      [ 289.757111] RAX: 0000000000000000 RBX: ffff880177a80010 RCX: 000000007fffffff
      [ 289.757111] RDX: ffffffff81d5f118 RSI: 0000000000000000 RDI: ffff880177a80010
      [ 289.757111] RBP: ffff880178eeb6d8 R08: 0000000000000082 R09: 0000000000000283
      [ 289.757111] R10: 0000000000000000 R11: 0000000000000000 R12: ffff880175a00000
      [ 289.757111] R13: ffff880177a80080 R14: 0000000000000000 R15: 0000000000000001
      [ 289.757111] FS: 00007fe2ee346880(0000) GS:ffff88017fc00000(0000) knlGS:0000000000000000
      [ 289.757111] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 289.757111] CR2: 00007fffca979020 CR3: 00000001792e4000 CR4: 00000000000006f0
      [ 289.757111] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
      [ 289.757111] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
      [ 289.757111] Stack:
      [ 289.796027] ffff880178eeb6f0 ffffffffa05251f5 ffff880177a80000 ffff880178eeb718
      [ 289.796027] ffffffffa0528505 ffff880175a00000 ffff880177a80000 0000000000000000
      [ 289.796027] ffff880178eeb748 ffffffffa051f0ab ffff880175a00000 ffffffffa0537d60
      [ 289.796027] Call Trace:
      [ 289.796027] [<ffffffffa05251f5>] napi_enable+0x25/0x30 [ib_ipoib]
      [ 289.796027] [<ffffffffa0528505>] ipoib_ib_dev_open+0x175/0x190 [ib_ipoib]
      [ 289.796027] [<ffffffffa051f0ab>] ipoib_open+0x4b/0x160 [ib_ipoib]
      [ 289.796027] [<ffffffff814fe33f>] _dev_open+0xbf/0x130
      [ 289.796027] [<ffffffff814fe62d>] __dev_change_flags+0x9d/0x170
      [ 289.796027] [<ffffffff814fe729>] dev_change_flags+0x29/0x60
      [ 289.796027] [<ffffffff8150caf7>] do_setlink+0x397/0xa40
      
      Fixes: cd565b4b ('IB/IPoIB: Support acceleration options callbacks')
      Signed-off-by: default avatarAlex Vesker <valex@mellanox.com>
      Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      560b7c3f
    • Alex Vesker's avatar
      IB/ipoib: Delete napi in device uninit default · b53d4566
      Alex Vesker authored
      This patch mekas init_default and uninit_default symmetric
      with a call to delete napi. Additionally, the uninit_default
      gained delete napi call in case of init_default fails.
      
      Fixes: 515ed4f3 ('IB/IPoIB: Separate control and data related initializations')
      Signed-off-by: default avatarAlex Vesker <valex@mellanox.com>
      Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      b53d4566
    • Alex Vesker's avatar
      IB/ipoib: Limit call to free rdma_netdev for capable devices · 022d038a
      Alex Vesker authored
      Limit calls to free_rdma_netdev() for capable devices only.
      
      Fixes: cd565b4b ('IB/IPoIB: Support acceleration options callbacks')
      Signed-off-by: default avatarAlex Vesker <valex@mellanox.com>
      Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      022d038a
    • Alex Vesker's avatar
      IB/ipoib: Fix memory leaks for child interfaces priv · ab156afd
      Alex Vesker authored
      There is a need to free priv explicitly and not just to release
      the device, child priv is freed explicitly on remove flow and this
      patch also includes priv free on error flow in P_key creation
      and also in add_port.
      
      Fixes: cd565b4b ('IB/IPoIB: Support acceleration options callbacks')
      Signed-off-by: default avatarAlex Vesker <valex@mellanox.com>
      Signed-off-by: default avatarLeon Romanovsky <leon@kernel.org>
      Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
      ab156afd
    • Magnus Damm's avatar
      net: update undefined ->ndo_change_mtu() comment · db46a0e1
      Magnus Damm authored
      Update ->ndo_change_mtu() callback comment to remove text
      about returning error in case of undefined callback. This
      change makes the comment match the existing code behavior.
      Signed-off-by: default avatarMagnus Damm <damm+renesas@opensource.se>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      db46a0e1