1. 25 Sep, 2014 10 commits
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-3.17-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · f4cb707e
      Linus Torvalds authored
      Pull ACPI and power management fixes from Rafael Wysocki:
       "These are regression fixes (ACPI hotplug, cpufreq, hibernation, ACPI
        LPSS driver), fixes for stuff that never worked correctly (ACPI GPIO
        support in some cases and a wrong sign of an error code in the ACPI
        core in one place), and one blacklist item for ACPI backlight
        handling.
      
        Specifics:
      
         - Revert of a recent hibernation core commit that introduced a NULL
           pointer dereference during resume for at least one user (Rafael J
           Wysocki).
      
         - Fix for the ACPI LPSS (Low-Power Subsystem) driver to disable
           asynchronous PM callback execution for LPSS devices during system
           suspend/resume (introduced in 3.16) which turns out to break
           ordering expectations on some systems.  From Fu Zhonghui.
      
         - cpufreq core fix related to the handling of sysfs nodes during
           system suspend/resume that has been broken for intel_pstate since
           3.15 from Lan Tianyu.
      
         - Restore the generation of "online" uevents for ACPI container
           devices that was removed in 3.14, but some user space utilities
           turn out to need them (Rafael J Wysocki).
      
         - The cpufreq core fails to release a lock in an error code path
           after changes made in 3.14.  Fix from Prarit Bhargava.
      
         - ACPICA and ACPI/GPIO fixes to make the handling of ACPI GPIO
           operation regions (which means AML using GPIOs) work correctly in
           all cases from Bob Moore and Srinivas Pandruvada.
      
         - Fix for a wrong sign of the ACPI core's create_modalias() return
           value in case of an error from Mika Westerberg.
      
         - ACPI backlight blacklist entry for ThinkPad X201s from Aaron Lu"
      
      * tag 'pm+acpi-3.17-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        Revert "PM / Hibernate: Iterate over set bits instead of PFNs in swsusp_free()"
        gpio / ACPI: Use pin index and bit length
        ACPICA: Update to GPIO region handler interface.
        ACPI / platform / LPSS: disable async suspend/resume of LPSS devices
        cpufreq: release policy->rwsem on error
        cpufreq: fix cpufreq suspend/resume for intel_pstate
        ACPI / scan: Correct error return value of create_modalias()
        ACPI / video: disable native backlight for ThinkPad X201s
        ACPI / hotplug: Generate online uevents for ACPI containers
      f4cb707e
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 12df9f37
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "This is probably not the kind of pull request you want to see that
        late in the cycle.  Yet, the ACPI refactorization was problematic
        again and caused another two issues which need fixing.  My holidays
        with limited internet (plus travelling) and the developer's illness
        didn't help either :(
      
        The details:
      
         - ACPI code was refactored out into a seperate file and as a
           side-effect, the i2c-core module got renamed.  Jean Delvare
           rightfully complained about the rename being problematic for
           distributions.  So, Mika and I thought the least problematic way to
           deal with it is to move all the code back into the main i2c core
           source file.  This is mainly a huge code move with some #ifdeffery
           applied.  No functional code changes.  Our personal tests and the
           testbots did not find problems.  (I was thinking about reverting,
           too, yet that would also have ~800 lines changed)
      
         - The new ACPI code also had a NULL pointer exception, thanks to
           Peter for finding and fixing it.
      
         - Mikko fixed a locking problem by decoupling clock_prepare and
           clock_enable.
      
         - Addy learnt that the datasheet was wrong and reimplemented the
           frequency setup according to the new algorithm.
      
        - Fan fixed an off-by-one error when copying data
      
        - Janusz fixed a copy'n'paste bug which gave a wrong error message
      
        - Sergei made sure that "don't touch" bits are not accessed"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: acpi: Fix NULL Pointer dereference
        i2c: move acpi code back into the core
        i2c: rk3x: fix divisor calculation for SCL frequency
        i2c: mxs: fix error message in pio transfer
        i2c: ismt: use correct length when copy buffer
        i2c: rcar: fix RCAR_IRQ_ACK_{RECV|SEND}
        i2c: tegra: Move clk_prepare/clk_set_rate to probe
      12df9f37
    • Randy Dunlap's avatar
      MAINTAINERS: new Documentation maintainer · d671e424
      Randy Dunlap authored
      Transfer Documentation maintainership to Jiri Kosina.
      Thanks, Jiri.
      
      I'll still be reviewing and working on documentation.
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Acked-by: default avatarJiri Kosina <jkosina@suse.cz>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d671e424
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpufreq' and 'pm-sleep' · 381e63da
      Rafael J. Wysocki authored
      * pm-cpufreq:
        cpufreq: release policy->rwsem on error
        cpufreq: fix cpufreq suspend/resume for intel_pstate
      
      * pm-sleep:
        Revert "PM / Hibernate: Iterate over set bits instead of PFNs in swsusp_free()"
      381e63da
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-hotplug', 'acpi-scan', 'acpi-lpss', 'acpi-gpio' and 'acpi-video' · 9ef5a306
      Rafael J. Wysocki authored
      * acpi-hotplug:
        ACPI / hotplug: Generate online uevents for ACPI containers
      
      * acpi-scan:
        ACPI / scan: Correct error return value of create_modalias()
      
      * acpi-lpss:
        ACPI / platform / LPSS: disable async suspend/resume of LPSS devices
      
      * acpi-gpio:
        gpio / ACPI: Use pin index and bit length
        ACPICA: Update to GPIO region handler interface.
      
      * acpi-video:
        ACPI / video: disable native backlight for ThinkPad X201s
      9ef5a306
    • Linus Torvalds's avatar
      Merge tag 'gpio-v3.17-4' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 2289823c
      Linus Torvalds authored
      Pull gpio fixes from Linus Walleij:
       "Two GPIO fixes:
      
         - GPIO direction flags where handled wrong in the new descriptor-
           based API, so direction changes did not always "take".
      
         - Fix a handler installation race in the generic GPIO irqchip code"
      
      * tag 'gpio-v3.17-4' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
        gpio: Fix potential NULL handler data in chained irqchip handler
        gpio: Fix gpio direction flags not getting set
      2289823c
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-linus' of git://git.secretlab.ca/git/linux · 4d3afba3
      Linus Torvalds authored
      Pull devicetree bug fixes and documentation from Grant Likely:
       "Several bug fix commits for issues found in the v3.17 rc series.
      
        Most of these are minor in that they aren't actively dangerous, but
        they have been seen in the wild.  The one important fix is commit
        7dbe5849 ("of: make sure of_alias is initialized before accessing
        it"), without which some powerpc platforms will fail to find stdout
        for the console"
      
      * tag 'devicetree-for-linus' of git://git.secretlab.ca/git/linux:
        of/fdt: fix memory range check
        of: Fix memory block alignment in early_init_dt_add_memory_arch()
        of: make sure of_alias is initialized before accessing it
        of: Documentation regarding attaching OF Selftest testdata
        of: Disabling OF functions that use sysfs if CONFIG_SYSFS disabled
        of: correct of_console_check()'s return value
      4d3afba3
    • Peter Hüwe's avatar
      i2c: acpi: Fix NULL Pointer dereference · 0aef44e8
      Peter Hüwe authored
      If adapter->dev.parent == NULL there is a NULL pointer dereference in
      acpi_i2c_install_space_handler and acpi_i2c_remove_space_handler.
      
      This is present since introduction of this code:
      36604751 "i2c: rework kernel config I2C_ACPI" or even
      da3c6647 "I2C/ACPI: Clean up I2C ACPI code and Add CONFIG_I2C_ACPI"
      
      The adapter->dev.parent == NULL case is valid for the i2c_stub,
      so loading i2c_stub with ACPI_I2C_OPREGION enabled results in an oops.
      This is also valid at least for i2c_tiny_usb and i2c_robotfuzz_osif.
      
      Fix by checking whether it is null before calling ACPI_HANDLE.
      Signed-off-by: default avatarPeter Huewe <peterhuewe@gmx.de>
      Acked-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
      Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
      0aef44e8
    • Wolfram Sang's avatar
      i2c: move acpi code back into the core · 17f4a5c4
      Wolfram Sang authored
      Commit 5d98e61d ("I2C/ACPI: Add i2c ACPI operation region support")
      renamed the i2c-core module. This may cause regressions for
      distributions, so put the ACPI code back into the core.
      Reported-by: default avatarJean Delvare <jdelvare@suse.de>
      Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
      Tested-by: default avatarLan Tianyu <tianyu.lan@intel.com>
      Tested-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
      17f4a5c4
    • Srinivas Kandagatla's avatar
      of/fdt: fix memory range check · 9aacd602
      Srinivas Kandagatla authored
      In cases where board has below memory DT node
      
      memory{
      	device_type = "memory";
      	reg = <0x80000000 0x80000000>;
      };
      
      Check on the memory range in fdt.c will always fail because it is
      comparing MAX_PHYS_ADDR with base + size, in fact it should compare
      it with base + size - 1.
      
      This issue was originally noticed on Qualcomm IFC6410 board.
      Without this patch kernel shows up noticed unnecessary warnings
      
      [    0.000000] Machine model: Qualcomm APQ8064/IFC6410
      [    0.000000] Ignoring memory range 0xffffffff - 0x100000000
      [    0.000000] cma: Reserved 64 MiB at ab800000
      
      as a result the size get reduced to 0x7fffffff which looks wrong.
      
      This patch fixes the check involved in generating this warning and
      as a result it also fixes the wrong size calculation.
      Signed-off-by: default avatarSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
      [grant.likely: adjust new size calculation also]
      Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
      9aacd602
  2. 24 Sep, 2014 29 commits
    • Rafael J. Wysocki's avatar
      Revert "PM / Hibernate: Iterate over set bits instead of PFNs in swsusp_free()" · 5c4dd348
      Rafael J. Wysocki authored
      Revert commit 6efde38f (PM / Hibernate: Iterate over set bits
      instead of PFNs in swsusp_free()) that introduced a NULL pointer
      dereference during system resume from hibernation:
      
      BUG: unable to handle kernel NULL pointer dereference at (null)
      IP: [<ffffffff810a8cc1>] swsusp_free+0x21/0x190
      PGD b39c2067 PUD b39c1067 PMD 0
      Oops: 0000 [#1] SMP
      Modules linked in: <irrelevant list of modules>
      CPU: 1 PID: 4898 Comm: s2disk Tainted: G         C     3.17-rc5-amd64 #1 Debian 3.17~rc5-1~exp1
      Hardware name: LENOVO 2776LEG/2776LEG, BIOS 6EET55WW (3.15 ) 12/19/2011
      task: ffff88023155ea40 ti: ffff8800b3b14000 task.ti: ffff8800b3b14000
      RIP: 0010:[<ffffffff810a8cc1>]  [<ffffffff810a8cc1>]
      swsusp_free+0x21/0x190
      RSP: 0018:ffff8800b3b17ea8  EFLAGS: 00010246
      RAX: 0000000000000000 RBX: ffff8800b39bab00 RCX: 0000000000000001
      RDX: ffff8800b39bab10 RSI: ffff8800b39bab00 RDI: 0000000000000000
      RBP: 0000000000000010 R08: 0000000000000000 R09: 0000000000000000
      R10: ffff8800b39bab10 R11: 0000000000000246 R12: ffffea0000000000
      R13: ffff880232f485a0 R14: ffff88023ac27cd8 R15: ffff880232927590
      FS:  00007f406d83b700(0000) GS:ffff88023bc80000(0000)
      knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
      CR2: 0000000000000000 CR3: 00000000b3a62000 CR4: 00000000000007e0
      Stack:
       ffff8800b39bab00 0000000000000010 ffff880232927590 ffffffff810acb4a
       ffff8800b39bab00 ffffffff811a955a ffff8800b39bab10 0000000000000000
       ffff88023155f098 ffffffff81a6b8c0 ffff88023155ea40 0000000000000007
      Call Trace:
       [<ffffffff810acb4a>] ? snapshot_release+0x2a/0xb0
       [<ffffffff811a955a>] ? __fput+0xca/0x1d0
       [<ffffffff81080627>] ? task_work_run+0x97/0xd0
       [<ffffffff81012d89>] ? do_notify_resume+0x69/0xa0
       [<ffffffff8151452a>] ? int_signal+0x12/0x17
      Code: 66 2e 0f 1f 84 00 00 00 00 00 66 66 66 66 90 41 54 48 8b 05 ba 62 9c 00 49 bc 00 00 00 00 00 ea ff ff 48 8b 3d a1 62 9c 00 55 53 <48> 8b 10 48 89 50 18 48 8b 52 20 48 c7 40 28 00 00 00 00 c7 40
      RIP  [<ffffffff810a8cc1>] swsusp_free+0x21/0x190
       RSP <ffff8800b3b17ea8>
      CR2: 0000000000000000
      ---[ end trace f02be86a1ec0cccb ]---
      
      due to forbidden_pages_map being NULL in swsusp_free().
      
      Fixes: 6efde38f "PM / Hibernate: Iterate over set bits instead of PFNs in swsusp_free()"
      Reported-by: default avatarBjørn Mork <bjorn@mork.no>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      5c4dd348
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 005f8005
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Some final radeon and i915 fixes, black screens mostly"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm/radeon/cik: use a separate counter for CP init timeout
        drm/i915/hdmi: fix hdmi audio state readout
        drm/i915: Don't leak command parser tables on suspend/resume
        drm/radeon: add PX quirk for asus K53TK
        drm/radeon: add a backlight quirk for Amilo Xi 2550
        drm/radeon: add a module parameter for backlight control (v2)
        drm/radeon: Update IH_RB_RPTR register after each processed interrupt
        drm/radeon: Make IH ring overflow debugging output more useful
        drm/radeon: Clear RB_OVERFLOW bit earlier
      005f8005
    • Srinivas Pandruvada's avatar
      gpio / ACPI: Use pin index and bit length · c15d821d
      Srinivas Pandruvada authored
      Fix code when the operation region callback is for an gpio, which
      is not at index 0 and for partial pins in a GPIO definition.
      For example:
      Name (GMOD, ResourceTemplate ()
      {
      	//3 Outputs that define the Power mode of the device
      	GpioIo (Exclusive, PullDown, , , , "\\_SB.GPI2") {10, 11, 12}
      	})
      }
      
      If opregion callback calls is for:
      - Set pin 10, then address = 0 and bit length = 1
      - Set pin 11, then address = 1 and bit length = 1
      - Set for both pin 11 and pin 12, then address = 1, bit length = 2
      
      This change requires updated ACPICA gpio operation handler code to
      send the pin index and bit length.
      
      Fixes: 473ed7be (gpio / ACPI: Add support for ACPI GPIO operation regions)
      Signed-off-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
      Acked-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
      Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Cc: 3.15+ <stable@vger.kernel.org> # 3.15+: 75ec6e55 ACPICA: Update to GPIO region handler interface.
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      c15d821d
    • Bob Moore's avatar
      ACPICA: Update to GPIO region handler interface. · 75ec6e55
      Bob Moore authored
      Changes to correct several GPIO issues:
      
      1) The update_rule in a GPIO field definition is now ignored;
      a read-modify-write operation is never performed for GPIO fields.
      (Internally, this means that the field assembly/disassembly
      code is completely bypassed for GPIO.)
      
      2) The Address parameter passed to a GPIO region handler is
      now the bit offset of the field from a previous Connection()
      operator. Thus, it becomes a "Pin Number Index" into the
      Connection() resource descriptor.
      
      3) The bit_width parameter passed to a GPIO region handler is
      now the exact bit width of the GPIO field. Thus, it can be
      interpreted as "number of pins".
      
      Overall, we can now say that the region handler interface
      to GPIO handlers is a raw "bit/pin" addressed interface, not
      a byte-addressed interface like the system_memory handler interface.
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarLv Zheng <lv.zheng@intel.com>
      Cc: 3.15+ <stable@vger.kernel.org> # 3.15+
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      75ec6e55
    • Dave Airlie's avatar
      Merge branch 'drm-fixes-3.17' of git://people.freedesktop.org/~agd5f/linux into drm-fixes · 67f33f30
      Dave Airlie authored
      - fix a backlight regression resulting in dark screen
      - add a PX quirk to avoid a hang with runtime pm
      - fix an init issue on the CIK compute rings
      - fix IH ring buffer overflows gracefully
      
      * 'drm-fixes-3.17' of git://people.freedesktop.org/~agd5f/linux:
        drm/radeon/cik: use a separate counter for CP init timeout
        drm/radeon: add PX quirk for asus K53TK
        drm/radeon: add a backlight quirk for Amilo Xi 2550
        drm/radeon: add a module parameter for backlight control (v2)
        drm/radeon: Update IH_RB_RPTR register after each processed interrupt
        drm/radeon: Make IH ring overflow debugging output more useful
        drm/radeon: Clear RB_OVERFLOW bit earlier
      67f33f30
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2014-09-24' of git://anongit.freedesktop.org/drm-intel into drm-fixes · 65e7e5d8
      Dave Airlie authored
      a couple of small fixes for 3.17 still.
      
      * tag 'drm-intel-fixes-2014-09-24' of git://anongit.freedesktop.org/drm-intel:
        drm/i915/hdmi: fix hdmi audio state readout
        drm/i915: Don't leak command parser tables on suspend/resume
      65e7e5d8
    • Fu Zhonghui's avatar
      ACPI / platform / LPSS: disable async suspend/resume of LPSS devices · 45792081
      Fu Zhonghui authored
      On some systems (Asus T100 in particular) there are strict ordering
      dependencies between LPSS devices with respect to power management
      that break if they suspend/resume asynchronously.
      
      In theory it should be possible to follow those dependencies in the
      async suspend/resume case too (the ACPI tables tell as that the
      dependencies are there), but since we're missing infrastructure
      for that at the moment, disable async suspend/resume for all of
      the LPSS devices for the time being.
      
      Link: http://marc.info/?l=linux-acpi&m=141158962321905&w=2
      Fixes: 8ce62f85 (ACPI / platform / LPSS: Enable async suspend/resume of LPSS devices)
      Signed-off-by: default avatarLi Aubrey <aubrey.li@linux.intel.com>
      Signed-off-by: default avatarFu Zhonghui <zhonghui.fu@linux.intel.com>
      Cc: 3.16+ <stable@vger.kernel.org> # 3.16+
      [ rjw: Changelog ]
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      45792081
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · b94d525e
      Linus Torvalds authored
      Pull networking fixes from David Miller:
       "Here is a quick pull request primarily meant to address the deconfig
        fallout from changing SCSI_NETLINK from being used via 'select' to
        being used via 'depends'.
      
        I applied a set of 5 patches written by Michal Marek, and then I
        carefully audited all of the remaining config files, basically:
      
         1) I scanned every arch config file, and if it mentioned CONFIG_INET
            or CONFIG_UNIX, I made sure it had CONFIG_NET=y
      
         2) After that, I scanned every arch config file, and if it did not
            have CONFIG_NET=y I made sure it did not reference any networking
            config options.
      
        Finally, we have some late breaking wireless fixes in here from John
        Linville and co"
      
      [ And there's a sparc bpf fix snuck in too ]
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        sparc: bpf_jit: fix loads from negative offsets
        parisc: Update defconfigs which were missing CONFIG_NET.
        powerpc: Update defconfigs which were missing CONFIG_NET.
        s390: Update defconfigs which were missing CONFIG_NET.
        mips: Update some more defconfigs which were missing CONFIG_NET.
        sparc: Set CONFIG_NET=y in defconfigs
        sh: Set CONFIG_NET=y in defconfigs
        powerpc: Set CONFIG_NET=y in defconfigs
        parisc: Set CONFIG_NET=y in defconfigs
        mips: Set CONFIG_NET=y in defconfigs
        brcmfmac: Fix off by one bug in brcmf_count_20mhz_channels()
        ath9k: Fix NULL pointer dereference on early irq
        net: rfkill: gpio: Fix clock status
        NFC: st21nfca: Fix potential depmod dependency cycle
        NFC: st21nfcb: Fix depmod dependency cycle
        NFC: microread: Potential overflows in microread_target_discovered()
      b94d525e
    • Alexei Starovoitov's avatar
      sparc: bpf_jit: fix loads from negative offsets · 35607b02
      Alexei Starovoitov authored
      - fix BPF_LD|ABS|IND from negative offsets:
        make sure to sign extend lower 32 bits in 64-bit register
        before calling C helpers from JITed code, otherwise 'int k'
        argument of bpf_internal_load_pointer_neg_helper() function
        will be added as large unsigned integer, causing packet size
        check to trigger and abort the program.
      
        It's worth noting that JITed code for 'A = A op K' will affect
        upper 32 bits differently depending whether K is simm13 or not.
        Since small constants are sign extended, whereas large constants
        are stored in temp register and zero extended.
        That is ok and we don't have to pay a penalty of sign extension
        for every sethi, since all classic BPF instructions have 32-bit
        semantics and we only need to set correct upper bits when
        transitioning from JITed code into C.
      
      - though instructions 'A &= 0' and 'A *= 0' are odd, JIT compiler
        should not optimize them out
      Signed-off-by: default avatarAlexei Starovoitov <ast@plumgrid.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      35607b02
    • David S. Miller's avatar
      Merge tag 'master-2014-09-23' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless · 543a2dff
      David S. Miller authored
      John W. Linville says:
      
      ====================
      pull request: wireless 2014-09-23
      
      Please consider pulling this one last batch of fixes intended for the 3.17 stream!
      
      For the NFC bits, Samuel says:
      
      "Hopefully not too late for a handful of NFC fixes:
      
      - 2 potential build failures for ST21NFCA and ST21NFCB, triggered by a
        depmod dependenyc cycle.
      - One potential buffer overflow in the microread driver."
      
      On top of that...
      
      Emil Goode provides a fix for a brcmfmac off-by-one regression which
      was introduced in the 3.17 cycle.
      
      Loic Poulain fixes a polarity mismatch for a variable assignment
      inside of rfkill-gpio.
      
      Wojciech Dubowik prevents a NULL pointer dereference in ath9k.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      543a2dff
    • David S. Miller's avatar
      parisc: Update defconfigs which were missing CONFIG_NET. · c899c3f3
      David S. Miller authored
      Commit df568d8e ("scsi: Use 'depends' with LIBFC instead of
      'select'.")  removed what happened to be the only instance of 'select
      NET'. Defconfigs that were relying on the select now lack networking
      support.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c899c3f3
    • David S. Miller's avatar
      powerpc: Update defconfigs which were missing CONFIG_NET. · 95d77997
      David S. Miller authored
      Commit df568d8e ("scsi: Use 'depends' with LIBFC instead of
      'select'.")  removed what happened to be the only instance of 'select
      NET'. Defconfigs that were relying on the select now lack networking
      support.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      95d77997
    • David S. Miller's avatar
      s390: Update defconfigs which were missing CONFIG_NET. · ff408ba1
      David S. Miller authored
      Commit df568d8e ("scsi: Use 'depends' with LIBFC instead of
      'select'.")  removed what happened to be the only instance of 'select
      NET'. Defconfigs that were relying on the select now lack networking
      support.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ff408ba1
    • David S. Miller's avatar
      mips: Update some more defconfigs which were missing CONFIG_NET. · af4de1b5
      David S. Miller authored
      Commit df568d8e ("scsi: Use 'depends' with LIBFC instead of
      'select'.")  removed what happened to be the only instance of 'select
      NET'. Defconfigs that were relying on the select now lack networking
      support.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      af4de1b5
    • Michal Marek's avatar
      sparc: Set CONFIG_NET=y in defconfigs · 1ab0b8b2
      Michal Marek authored
      Commit 5d6be6a5 ("scsi_netlink : Make SCSI_NETLINK dependent on NET
      instead of selecting NET") removed what happened to be the only instance
      of 'select NET'. Defconfigs that were relying on the select now lack
      networking support.
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Cc: sparclinux@vger.kernel.org
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1ab0b8b2
    • Michal Marek's avatar
      sh: Set CONFIG_NET=y in defconfigs · 925f7fad
      Michal Marek authored
      Commit 5d6be6a5 ("scsi_netlink : Make SCSI_NETLINK dependent on NET
      instead of selecting NET") removed what happened to be the only instance
      of 'select NET'. Defconfigs that were relying on the select now lack
      networking support.
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Cc: linux-sh@vger.kernel.org
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      925f7fad
    • Michal Marek's avatar
      powerpc: Set CONFIG_NET=y in defconfigs · 853e3e1d
      Michal Marek authored
      Commit 5d6be6a5 ("scsi_netlink : Make SCSI_NETLINK dependent on NET
      instead of selecting NET") removed what happened to be the only instance
      of 'select NET'. Defconfigs that were relying on the select now lack
      networking support.
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Cc: linuxppc-dev@lists.ozlabs.org
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      853e3e1d
    • Michal Marek's avatar
      parisc: Set CONFIG_NET=y in defconfigs · 25fee47f
      Michal Marek authored
      Commit 5d6be6a5 ("scsi_netlink : Make SCSI_NETLINK dependent on NET
      instead of selecting NET") removed what happened to be the only instance
      of 'select NET'. Defconfigs that were relying on the select now lack
      networking support.
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Cc: linux-parisc@vger.kernel.org
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      25fee47f
    • Michal Marek's avatar
      mips: Set CONFIG_NET=y in defconfigs · d1630f9e
      Michal Marek authored
      Commit 5d6be6a5 ("scsi_netlink : Make SCSI_NETLINK dependent on NET
      instead of selecting NET") removed what happened to be the only instance
      of 'select NET'. Defconfigs that were relying on the select now lack
      networking support.
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Cc: linux-mips@linux-mips.org
      Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d1630f9e
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 02f130a7
      Linus Torvalds authored
      Pull one last block fix from Jens Axboe:
       "We've had an issue with scsi-mq where probing takes forever.  This was
        bisected down to the percpu changes for blk_mq_queue_enter(), and the
        fact we now suffer an RCU grace period when killing a queue.  SCSI
        creates and destroys tons of queues, so this let to 10s of seconds of
        stalls at boot for some.
      
        Tejun has a real fix for this, but it's too involved for 3.17.  So
        this is a temporary workaround to expedite the queue killing until we
        can fold in the real fix for 3.18 when that merge window opens"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        blk-mq, percpu_ref: implement a kludge for SCSI blk-mq stall during probe
      02f130a7
    • Linus Torvalds's avatar
      Merge tag 'pci-v3.17-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 2d7ed01e
      Linus Torvalds authored
      Pull PCI fixes from Bjorn Helgaas:
       "Here are a few fixes that should be in v3.17.
      
         - Reverting "Don't scan random busses" covers up a CardBus regression
           having to do with allocating CardBus bus numbers.
      
         - Reverting "Make sure bus numbers stay within parents bounds" covers
           up an ACPI _CRS bug that makes us reconfigure a bridge, causing a
           broken device behind it to stop responding.
      
         - The pciehp timeout change fixes some code we added in v3.17.
           Without the fix, we can send a new hotplug command too early,
           before the timeout has expired.
      
        I hope for better fixes for the reverts, but those will have to come
        after v3.17"
      
      * tag 'pci-v3.17-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        PCI: pciehp: Fix pcie_wait_cmd() timeout
        Revert "PCI: Make sure bus number resources stay within their parents bounds"
        Revert "PCI: Don't scan random busses in pci_scan_bridge()"
      2d7ed01e
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 2368a942
      Linus Torvalds authored
      Pull crypto fixes from Herbert Xu:
       "This fixes three issues:
      
         - if ccp is loaded on a machine without ccp, it will incorrectly
           activate causing all requests to fail.  Fixed by preventing ccp
           from loading if hardware isn't available.
      
         - not all IRQs were enabled for the qat driver, leading to potential
           stalls when it is used
      
         - disabled buggy AVX CTR implementation in aesni"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: aesni - disable "by8" AVX CTR optimization
        crypto: ccp - Check for CCP before registering crypto algs
        crypto: qat - Enable all 32 IRQs
      2368a942
    • Linus Torvalds's avatar
      Merge tag 'media/v3.17-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · eb55a2a9
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
       "For some last time fixes:
         - a regression detected on Kernel 3.16 related to VBI Teletext
           application breakage on drivers using videobuf2 (see
           https://bugzilla.kernel.org/show_bug.cgi?id=84401).  The bug was
           noticed on saa7134 (migrated to VB2 on 3.16), but also affects
           em28xx (migrated on 3.9 to VB2);
         - two additional sanity checks at videobuf2;
         - two fixups to restore proper VBI support at the em28xx driver;
         - two Kernel oops fixups (at cx24123 and cx2341x drivers);
         - a bug at adv7604 where an if was doing just the opposite as it
           would be expected;
         - some documentation fixups to match the behavior defined at the
           Kernel"
      
      * tag 'media/v3.17-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        [media] em28xx-v4l: get rid of field "users" in struct em28xx_v4l2"
        [media] em28xx: fix VBI handling logic
        [media] DocBook media: improve the poll() documentation
        [media] DocBook media: fix the poll() 'no QBUF' documentation
        [media] vb2: fix VBI/poll regression
        [media] cx2341x: fix kernel oops
        [media] cx24123: fix kernel oops due to missing parent pointer
        [media] adv7604: fix inverted condition
        [media] media/radio: fix radio-miropcm20.c build with io.h header file
        [media] vb2: fix plane index sanity check in vb2_plane_cookie()
        [media] DocBook media: update version number and V4L2 changes
        [media] DocBook media: fix fieldname in struct v4l2_subdev_selection
        [media] vb2: fix vb2 state check when start_streaming fails
        [media] videobuf2-core.h: fix comment
        [media] videobuf2-core: add comments before the WARN_ON
        [media] videobuf2-dma-sg: fix for wrong GFP mask to sg_alloc_table_from_pages
      eb55a2a9
    • Linus Torvalds's avatar
      Merge tag 'md/3.17-more-fixes' of git://git.neil.brown.name/md · a90e41e2
      Linus Torvalds authored
      Pull bugfixes for md/raid1 from Neil Brown:
       "It is amazing how much easier it is to find bugs when you know one is
        there.  Two bug reports resulted in finding 7 bugs!
      
        All are tagged for -stable.  Those that can't cause (rare) data
        corruption, cause lockups.
      
        Particularly, but not only, fixing new "resync" code"
      
      * tag 'md/3.17-more-fixes' of git://git.neil.brown.name/md:
        md/raid1: fix_read_error should act on all non-faulty devices.
        md/raid1: count resync requests in nr_pending.
        md/raid1: update next_resync under resync_lock.
        md/raid1: Don't use next_resync to determine how far resync has progressed
        md/raid1: make sure resync waits for conflicting writes to complete.
        md/raid1: clean up request counts properly in close_sync()
        md/raid1:  be more cautious where we read-balance during resync.
        md/raid1: intialise start_next_window for READ case to avoid hang
      a90e41e2
    • Tejun Heo's avatar
      blk-mq, percpu_ref: implement a kludge for SCSI blk-mq stall during probe · 0a30288d
      Tejun Heo authored
      blk-mq uses percpu_ref for its usage counter which tracks the number
      of in-flight commands and used to synchronously drain the queue on
      freeze.  percpu_ref shutdown takes measureable wallclock time as it
      involves a sched RCU grace period.  This means that draining a blk-mq
      takes measureable wallclock time.  One would think that this shouldn't
      matter as queue shutdown should be a rare event which takes place
      asynchronously w.r.t. userland.
      
      Unfortunately, SCSI probing involves synchronously setting up and then
      tearing down a lot of request_queues back-to-back for non-existent
      LUNs.  This means that SCSI probing may take more than ten seconds
      when scsi-mq is used.
      
      This will be properly fixed by implementing a mechanism to keep
      q->mq_usage_counter in atomic mode till genhd registration; however,
      that involves rather big updates to percpu_ref which is difficult to
      apply late in the devel cycle (v3.17-rc6 at the moment).  As a
      stop-gap measure till the proper fix can be implemented in the next
      cycle, this patch introduces __percpu_ref_kill_expedited() and makes
      blk_mq_freeze_queue() use it.  This is heavy-handed but should work
      for testing the experimental SCSI blk-mq implementation.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Reported-by: default avatarChristoph Hellwig <hch@infradead.org>
      Link: http://lkml.kernel.org/g/20140919113815.GA10791@lst.de
      Fixes: add703fd ("blk-mq: use percpu_ref for mq usage count")
      Cc: Kent Overstreet <kmo@daterainc.com>
      Cc: Jens Axboe <axboe@kernel.dk>
      Tested-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarJens Axboe <axboe@fb.com>
      0a30288d
    • Mathias Krause's avatar
      crypto: aesni - disable "by8" AVX CTR optimization · 7da4b29d
      Mathias Krause authored
      The "by8" implementation introduced in commit 22cddcc7 ("crypto: aes
      - AES CTR x86_64 "by8" AVX optimization") is failing crypto tests as it
      handles counter block overflows differently. It only accounts the right
      most 32 bit as a counter -- not the whole block as all other
      implementations do. This makes it fail the cryptomgr test #4 that
      specifically tests this corner case.
      
      As we're quite late in the release cycle, just disable the "by8" variant
      for now.
      Reported-by: default avatarRomain Francoise <romain@orebokech.com>
      Signed-off-by: default avatarMathias Krause <minipli@googlemail.com>
      Cc: Chandramouli Narayanan <mouli@linux.intel.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      7da4b29d
    • Jarkko Nikula's avatar
      gpio: Fix potential NULL handler data in chained irqchip handler · 324b0398
      Jarkko Nikula authored
      There is possibility with misconfigured pins that interrupt occurs instantly
      after setting irq_set_chained_handler() in gpiochip_set_chained_irqchip().
      Now if handler gets called before irq_set_handler_data() the handler gets
      NULL handler data.
      
      Fix this by moving irq_set_handler_data() call before
      irq_set_chained_handler() in gpiochip_set_chained_irqchip().
      
      Cc: Stable <stable@vger.kernel.org> # 3.15+
      Reviewed-by: default avatarAlexandre Courbot <acourbot@nvidia.com>
      Signed-off-by: default avatarJarkko Nikula <jarkko.nikula@linux.intel.com>
      324b0398
    • Adrian Hunter's avatar
      gpio: Fix gpio direction flags not getting set · 72f908c8
      Adrian Hunter authored
      GPIO direction flags are not getting set because
      an 'if' statement is the wrong way around.
      
      Cc: Stable <stable@vger.kernel.org> # 3.15+
      Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Acked-by: default avatarAlexandre Courbot <acourbot@nvidia.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      72f908c8
    • Tom Lendacky's avatar
      crypto: ccp - Check for CCP before registering crypto algs · c9f21cb6
      Tom Lendacky authored
      If the ccp is built as a built-in module, then ccp-crypto (whether
      built as a module or a built-in module) will be able to load and
      it will register its crypto algorithms.  If the system does not have
      a CCP this will result in -ENODEV being returned whenever a command
      is attempted to be queued by the registered crypto algorithms.
      
      Add an API, ccp_present(), that checks for the presence of a CCP
      on the system.  The ccp-crypto module can use this to determine if it
      should register it's crypto alogorithms.
      
      Cc: stable@vger.kernel.org
      Reported-by: default avatarScot Doyle <lkml14@scotdoyle.com>
      Signed-off-by: default avatarTom Lendacky <thomas.lendacky@amd.com>
      Tested-by: default avatarScot Doyle <lkml14@scotdoyle.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      c9f21cb6
  3. 23 Sep, 2014 1 commit
    • Linus Torvalds's avatar
      Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · 452b6361
      Linus Torvalds authored
      Pull infiniband/rdma fixes from Roland Dreier:
       "Last late set of InfiniBand/RDMA fixes for 3.17:
      
         - fixes for the new memory region re-registration support
         - iSER initiator error path fixes
         - grab bag of small fixes for the qib and ocrdma hardware drivers
         - larger set of fixes for mlx4, especially in RoCE mode"
      
      * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (26 commits)
        IB/mlx4: Fix VF mac handling in RoCE
        IB/mlx4: Do not allow APM under RoCE
        IB/mlx4: Don't update QP1 in native mode
        IB/mlx4: Avoid accessing netdevice when building RoCE qp1 header
        mlx4: Fix mlx4 reg/unreg mac to work properly with 0-mac addresses
        IB/core: When marshaling uverbs path, clear unused fields
        IB/mlx4: Avoid executing gid task when device is being removed
        IB/mlx4: Fix lockdep splat for the iboe lock
        IB/mlx4: Get upper dev addresses as RoCE GIDs when port comes up
        IB/mlx4: Reorder steps in RoCE GID table initialization
        IB/mlx4: Don't duplicate the default RoCE GID
        IB/mlx4: Avoid null pointer dereference in mlx4_ib_scan_netdevs()
        IB/iser: Bump version to 1.4.1
        IB/iser: Allow bind only when connection state is UP
        IB/iser: Fix RX/TX CQ resource leak on error flow
        RDMA/ocrdma: Use right macro in query AH
        RDMA/ocrdma: Resolve L2 address when creating user AH
        mlx4: Correct error flows in rereg_mr
        IB/qib: Correct reference counting in debugfs qp_stats
        IPoIB: Remove unnecessary port query
        ...
      452b6361