1. 14 8月, 2017 18 次提交
    • G
      pinctrl: qcom: msm: constify gpio_chip structure · 12cb90ba
      Gustavo A. R. Silva 提交于
      This structure is only used to copy into other structure, so declare
      it as const.
      
      This issue was detected using Coccinelle and the following semantic patch:
      
      @r disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct gpio_chip i@p = { ... };
      
      @ok@
      identifier r.i;
      expression e;
      position p;
      @@
      e = i@p;
      
      @bad@
      position p != {r.p,ok.p};
      identifier r.i;
      struct gpio_chip e;
      @@
      e@i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r.i;
      @@
      static
      +const
       struct gpio_chip i = { ... };
      
      In the following log you can see a significant difference in the code size
      and data segment, hence in the dec segment. This log is the output
      of the size command, before and after the code change:
      
      before:
         text    data     bss     dec     hex filename
        13129    2808     192   16129    3f01 drivers/pinctrl/qcom/pinctrl-msm.o
      
      after:
         text    data     bss     dec     hex filename
        12839    2720     192   15751    3d87 drivers/pinctrl/qcom/pinctrl-msm.o
      Signed-off-by: NGustavo A. R. Silva <garsilva@embeddedor.com>
      Reviewed-by: NBjorn Andersson <bjorn.andersson@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      12cb90ba
    • G
      pinctrl: qcom: ssbi-gpio: constify gpio_chip structure · 75db1ba1
      Gustavo A. R. Silva 提交于
      This structure is only used to copy into other structure, so declare
      it as const.
      
      This issue was detected using Coccinelle and the following semantic patch:
      
      @r disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct gpio_chip i@p = { ... };
      
      @ok@
      identifier r.i;
      expression e;
      position p;
      @@
      e = i@p;
      
      @bad@
      position p != {r.p,ok.p};
      identifier r.i;
      struct gpio_chip e;
      @@
      e@i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r.i;
      @@
      static
      +const
       struct gpio_chip i = { ... };
      
      In the following log you can see a significant difference in the code size
      and data segment, hence in the dec segment. This log is the output
      of the size command, before and after the code change:
      
      before:
         text    data     bss     dec     hex filename
        17061    6992       0   24053    5df5 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.o
      
      after:
         text    data     bss     dec     hex filename
        16777    6904       0   23681    5c81 drivers/pinctrl/qcom/pinctrl-ssbi-gpio.o
      Signed-off-by: NGustavo A. R. Silva <garsilva@embeddedor.com>
      Reviewed-by: NBjorn Andersson <bjorn.andersson@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      75db1ba1
    • G
      pinctrl: coh901: constify gpio_chip structure · 115fa3fa
      Gustavo A. R. Silva 提交于
      This structure is only used to copy into another structure, so declare
      it as const.
      
      This issue was detected using Coccinelle and the following semantic patch:
      
      @r disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct gpio_chip i@p = { ... };
      
      @ok@
      identifier r.i;
      expression e;
      position p;
      @@
      e = i@p;
      
      @bad@
      position p != {r.p,ok.p};
      identifier r.i;
      struct gpio_chip e;
      @@
      e@i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r.i;
      @@
      static
      +const
       struct gpio_chip i = { ... };
      
      In the following log you can see a significant difference in the code size
      and data segment, hence in the dec segment. This log is the output
      of the size command, before and after the code change:
      
      before:
         text    data     bss     dec     hex filename
        12775    3696      64   16535    4097 drivers/pinctrl/pinctrl-coh901.o
      
      after:
                  bss     dec     hex filename
        12440    3640      64   16144    3f10 drivers/pinctrl/pinctrl-coh901.o
      Signed-off-by: NGustavo A. R. Silva <garsilva@embeddedor.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      115fa3fa
    • G
      pinctrl: nomadik: abx500: constify gpio_chip structure · d3761023
      Gustavo A. R. Silva 提交于
      This structure is only used to copy into another structure, so declare
      it as const.
      
      This issue was detected using Coccinelle and the following semantic patch:
      
      @r disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct gpio_chip i@p = { ... };
      
      @ok@
      identifier r.i;
      expression e;
      position p;
      @@
      e = i@p;
      
      @bad@
      position p != {r.p,ok.p};
      identifier r.i;
      struct gpio_chip e;
      @@
      e@i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r.i;
      @@
      static
      +const
       struct gpio_chip i = { ... };
      
      In the following log you can see a significant difference in the code size
      and data segment, hence in the dec segment. This log is the output
      of the size command, before and after the code change:
      
      before:
         text    data     bss     dec     hex filename
        17545    5376       0   22921    5989 drivers/pinctrl/nomadik/pinctrl-abx500.o
      
      after:
                  bss     dec     hex filename
        17273    5320       0   22593    5841 drivers/pinctrl/nomadik/pinctrl-abx500.o
      Signed-off-by: NGustavo A. R. Silva <garsilva@embeddedor.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      d3761023
    • G
      pinctrl: vt8500: wmt: constify gpio_chip structure · 3d9c2563
      Gustavo A. R. Silva 提交于
      This structure is only used to copy into other structure, so declare
      it as const.
      
      This issue was detected using Coccinelle and the following semantic patch:
      
      @r disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct gpio_chip i@p = { ... };
      
      @ok@
      identifier r.i;
      expression e;
      position p;
      @@
      e = i@p;
      
      @bad@
      position p != {r.p,ok.p};
      identifier r.i;
      struct gpio_chip e;
      @@
      e@i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r.i;
      @@
      static
      +const
       struct gpio_chip i = { ... };
      
      In the following log you can see a significant difference in the code size
      and data segment, hence in the dec segment. This log is the output
      of the size command, before and after the code change:
      
      before:
         text    data     bss     dec     hex filename
         7754    2328       0   10082    2762 drivers/pinctrl/vt8500/pinctrl-wmt.o
      
      after:
         text    data     bss     dec     hex filename
         7472    2272       0    9744    2610 drivers/pinctrl/vt8500/pinctrl-wmt.o
      Signed-off-by: NGustavo A. R. Silva <garsilva@embeddedor.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      3d9c2563
    • G
      pinctrl: rza1: constify gpio_chip structure · fa39210d
      Gustavo A. R. Silva 提交于
      This structure is only used to copy into other structure, so declare
      it as const.
      
      This issue was detected using Coccinelle and the following semantic patch:
      
      @r disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct gpio_chip i@p = { ... };
      
      @ok@
      identifier r.i;
      expression e;
      position p;
      @@
      e = i@p;
      
      @bad@
      position p != {r.p,ok.p};
      identifier r.i;
      struct gpio_chip e;
      @@
      e@i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r.i;
      @@
      static
      +const
       struct gpio_chip i = { ... };
      
      In the following log you can see a significant difference in the code size
      and data segment, hence in the dec segment. This log is the output
      of the size command, before and after the code change:
      
      before:
         text    data     bss     dec     hex filename
        11866    3520     128   15514    3c9a drivers/pinctrl/pinctrl-rza1.o
      
      after:
         text    data     bss     dec     hex filename
        11539    3464     128   15131    3b1b drivers/pinctrl/pinctrl-rza1.o
      Signed-off-by: NGustavo A. R. Silva <garsilva@embeddedor.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      fa39210d
    • I
      pinctrl: sunxi: rename R_PIO i2c pin function name · 059b0798
      Icenowy Zheng 提交于
      The I2C pin functions in R_PIO used to be named "s_twi".
      
      As we usually use the name "i2c" instead of "twi" in the mainline
      kernel, change these names to "s_i2c" for consistency.
      
      The "s_twi" functions are not yet referenced by any device trees in
      mainline kernel so I think it's safe to change the name.
      Signed-off-by: NIcenowy Zheng <icenowy@aosc.io>
      Reviewed-by: NChen-Yu Tsai <wens@csie.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      059b0798
    • I
      pinctrl: sunxi: add support of R40 to A10 pinctrl driver · cad4e209
      Icenowy Zheng 提交于
      R40 is said to be an upgrade of A20, and its pin configuration is also
      similar to A20 (and thus similar to A10).
      
      Add support for R40 to the A10 pinctrl driver.
      Signed-off-by: NIcenowy Zheng <icenowy@aosc.io>
      Reviewed-by: NChen-Yu Tsai <wens@csie.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      cad4e209
    • R
      pinctrl: msm: add support to configure ipq40xx GPIO_PULL bits · 83cf5fae
      Ram Chandra Jangir 提交于
      GPIO_PULL bits configurations in TLMM_GPIO_CFG register
      differs for IPQ40xx from rest of the other qcom SoCs.
      As it does not support the keeper state and therefore can't
      support bias-bus-hold property.
      
      This patch adds a pull_no_keeper setting which configures the
      msm_gpio_pull bits for ipq40xx. This is required to fix the
      proper configurations of gpio-pull bits for nand pins mux.
      
      IPQ40xx SoC:
      2'b10: Internal pull up enable.
      2'b11: Unsupport
      
      For other SoC's:
      2'b10: Keeper
      2'b11: Pull-Up
      
      Note: Due to pull_no_keeper length, all kerneldoc entries
      in the msm_pinctrl_soc_data struct had to be realigned.
      Reviewed-by: NBjorn Andersson <bjorn.andersson@linaro.org>
      Signed-off-by: NRam Chandra Jangir <rjangir@codeaurora.org>
      Signed-off-by: NChristian Lamparter <chunkeey@googlemail.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      83cf5fae
    • R
      pinctrl: qcom: ipq4019: add most remaining pin definitions · 77a65959
      Ram Chandra Jangir 提交于
      This patch adds multiple pinctrl functions and mappings
      for SDIO, NAND, I2S, WIFI, PCIE, LEDs, etc... that have
      been missing from the current minimal version.
      
      This patch has been updated from the original version
      that was posted by Ram Chandra Jangir on the LEDE-DEV ML:
      <https://patchwork.ozlabs.org/patch/752962/>. A short
      summary of the changes are documented in the device-tree
      patch of this series:
      "dt-bindings: pinctrl: add most other IPQ4019 pin functions and groups"
      
      Cc: John Crispin <john@phrozen.org>
      Signed-off-by: NRam Chandra Jangir <rjangir@codeaurora.org>
      Signed-off-by: NChristian Lamparter <chunkeey@googlemail.com>
      Acked-by: NBjorn Andersson <bjorn.andersson@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      77a65959
    • C
      dt-bindings: pinctrl: add most other IPQ4019 pin functions and groups · 1f5f0f2a
      Christian Lamparter 提交于
      This patch adds the remaining pin functions and mux groups.
      All unknown and debug functions are omitted. Existing functions
      for qpic, sdio, rgmii, rmii, wifi/d are squashed together as
      much as possible. And only in case of a clash, the individually
      named functions have been kept. The exceptions are:
      	led0-11
      	i2s_rx, i2s_tx, i2s_td, i2s_spdif_in, i2s_spdif_out,
      	smart0-3
      
      Cc: Varadarajan Narayanan <varada@codeaurora.org>
      Cc: Ram Chandra Jangir <rjangir@codeaurora.org>
      Cc: John Crispin <john@phrozen.org>
      Acked-by: NRob Herring <robh@kernel.org>
      Signed-off-by: NChristian Lamparter <chunkeey@googlemail.com>
      Acked-by: NBjorn Andersson <bjorn.andersson@linaro.org>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      1f5f0f2a
    • L
      Linux 4.13-rc5 · ef954844
      Linus Torvalds 提交于
      ef954844
    • L
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · b2298fc9
      Linus Torvalds 提交于
      Pull MIPS fixes from Ralf Baechle:
       "Another round of MIPS fixes:
      
         - compressed boot: Ignore a generated .c file
      
         - VDSO: Fix a register clobber list
      
         - DECstation: Fix an int-handler.S CPU_DADDI_WORKAROUNDS regression
      
         - Octeon: Fix recent cleanups that cleaned away a bit too much thus
           breaking the arch side of the EDAC and USB drivers.
      
         - uasm: Fix duplicate const in "const struct foo const bar[]" which
           GCC 7.1 no longer accepts.
      
         - Fix race on setting and getting cpu_online_mask
      
         - Fix preemption issue. To do so cleanly introduce macro to get the
           size of L3 cache line.
      
         - Revert include cleanup that sometimes results in build error
      
         - MicroMIPS uses bit 0 of the PC to indicate microMIPS mode. Make
           sure this bit is set for kernel entry as well.
      
         - Prevent configuring the kernel for both microMIPS and MT. There are
           no such CPUs currently and thus the combination is unsupported and
           results in build errors.
      
        This has been sitting in linux-next for a few days and has survived
        automated testing by Imagination's test farm. No known regressions
        pending except a number of issues that crept up due to lots of people
        switching to GCC 7.1"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: Set ISA bit in entry-y for microMIPS kernels
        MIPS: Prevent building MT support for microMIPS kernels
        MIPS: PCI: Fix smp_processor_id() in preemptible
        MIPS: Introduce cpu_tcache_line_size
        MIPS: DEC: Fix an int-handler.S CPU_DADDI_WORKAROUNDS regression
        MIPS: VDSO: Fix clobber lists in fallback code paths
        Revert "MIPS: Don't unnecessarily include kmalloc.h into <asm/cache.h>."
        MIPS: OCTEON: Fix USB platform code breakage.
        MIPS: Octeon: Fix broken EDAC driver.
        MIPS: gitignore: ignore generated .c files
        MIPS: Fix race on setting and getting cpu_online_mask
        MIPS: mm: remove duplicate "const" qualifier on insn_table
      b2298fc9
    • L
      Merge tag 'driver-core-4.13-rc5' of... · c9dc281d
      Linus Torvalds 提交于
      Merge tag 'driver-core-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core fixes from Greg KH:
       "Here are three firmware core fixes for 4.13-rc5.
      
        All three of these fix reported issues and have been floating around
        for a few weeks. They have been in linux-next with no reported
        problems"
      
      * tag 'driver-core-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        firmware: avoid invalid fallback aborts by using killable wait
        firmware: fix batched requests - send wake up on failure on direct lookups
        firmware: fix batched requests - wake all waiters
      c9dc281d
    • L
      Merge tag 'char-misc-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · ce7ba95c
      Linus Torvalds 提交于
      Pull char/misc fixes from Greg KH:
       "Here are two patches for 4.13-rc5.
      
        One is a fix for a reported thunderbolt issue, and the other a fix for
        an MEI driver issue. Both have been in linux-next with no reported
        issues"
      
      * tag 'char-misc-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        thunderbolt: Do not enumerate more ports from DROM than the controller has
        mei: exclude device from suspend direct complete optimization
      ce7ba95c
    • L
      Merge tag 'tty-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 438630ef
      Linus Torvalds 提交于
      Pull tty/serial fixes from Greg KH:
       "Here are two tty serial driver fixes for 4.13-rc5. One is a revert of
        a -rc1 patch that turned out to not be a good idea, and the other is a
        fix for the pl011 serial driver.
      
        Both have been in linux-next with no reported issues"
      
      * tag 'tty-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        Revert "serial: Delete dead code for CIR serial ports"
        tty: pl011: fix initialization order of QDF2400 E44
      438630ef
    • L
      Merge tag 'staging-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · dd95f186
      Linus Torvalds 提交于
      Pull staging/iio fixes from Greg KH:
       "Here are some Staging and IIO driver fixes for 4.13-rc5.
      
        Nothing major, just a number of small fixes for reported issues. All
        of these have been in linux-next for a while now with no reported
        issues. Full details are in the shortlog"
      
      * tag 'staging-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: comedi: comedi_fops: do not call blocking ops when !TASK_RUNNING
        iio: aspeed-adc: wait for initial sequence.
        iio: accel: bmc150: Always restore device to normal mode after suspend-resume
        staging:iio:resolver:ad2s1210 fix negative IIO_ANGL_VEL read
        iio: adc: axp288: Fix the GPADC pin reading often wrongly returning 0
        iio: adc: vf610_adc: Fix VALT selection value for REFSEL bits
        iio: accel: st_accel: add SPI-3wire support
        iio: adc: Revert "axp288: Drop bogus AXP288_ADC_TS_PIN_CTRL register modifications"
        iio: adc: sun4i-gpadc-iio: fix unbalanced irq enable/disable
        iio: pressure: st_pressure_core: disable multiread by default for LPS22HB
        iio: light: tsl2563: use correct event code
      dd95f186
    • L
      Merge tag 'usb-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 10cec917
      Linus Torvalds 提交于
      Pull USB fixes from Greg KH:
       "Here are a number of small USB driver fixes and new device ids for
        4.13-rc5. There is the usual gadget driver fixes, some new quirks for
        "messy" hardware, and some new device ids.
      
        All have been in linux-next with no reported issues"
      
      * tag 'usb-4.13-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        USB: serial: pl2303: add new ATEN device id
        usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter
        USB: Check for dropped connection before switching to full speed
        usb:xhci:Add quirk for Certain failing HP keyboard on reset after resume
        usb: renesas_usbhs: gadget: fix unused-but-set-variable warning
        usb: renesas_usbhs: Fix UGCTRL2 value for R-Car Gen3
        usb: phy: phy-msm-usb: Fix usage of devm_regulator_bulk_get()
        usb: gadget: udc: renesas_usb3: Fix usb_gadget_giveback_request() calling
        usb: dwc3: gadget: Correct ISOC DATA PIDs for short packets
        USB: serial: option: add D-Link DWM-222 device ID
        usb: musb: fix tx fifo flush handling again
        usb: core: unlink urbs from the tail of the endpoint's urb_list
        usb-storage: fix deadlock involving host lock and scsi_done
        uas: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069
        USB: hcd: Mark secondary HCD as dead if the primary one died
        USB: serial: cp210x: add support for Qivicon USB ZigBee dongle
      10cec917
  2. 13 8月, 2017 4 次提交
    • L
      Merge tag 'for-linus-20170812' of git://git.infradead.org/linux-mtd · 89a55278
      Linus Torvalds 提交于
      Pull another MTD fix from Brian Norris:
       "An mtdblock regression occurred in -rc1 (all writes were broken!), in
        the process of some block subsystem refactoring. Noticed and fixed
        last week, but I'm a little slow on the uptake"
      
      * tag 'for-linus-20170812' of git://git.infradead.org/linux-mtd:
        mtd: blkdevs: Fix mtd block write failure
      89a55278
    • A
      mtd: blkdevs: Fix mtd block write failure · 9a515447
      Abhishek Sahu 提交于
      All the MTD block write requests are failing with
      following error messages
      
          mkfs.ext4  /dev/mtdblock0
      
          print_req_error: I/O error, dev mtdblock0, sector 0
          Buffer I/O error on dev mtdblock0, logical block 0,
          lost async page write
      
      The control is going to default case after block write request
      because of missing return.
      
      Fixes: commit 2a842aca ("block: introduce new block status code type")
      Signed-off-by: NAbhishek Sahu <absahu@codeaurora.org>
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      9a515447
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · a99bcdce
      Linus Torvalds 提交于
      Pull SCSI target fixes from Nicholas Bellinger:
       "The highlights include:
      
         - Fix iscsi-target payload memory leak during
           ISCSI_FLAG_TEXT_CONTINUE (Varun Prakash)
      
         - Fix tcm_qla2xxx incorrect use of tcm_qla2xxx_free_cmd during ABORT
           (Pascal de Bruijn + Himanshu Madhani + nab)
      
         - Fix iscsi-target long-standing issue with parallel delete of a
           single network portal across multiple target instances (Gary Guo +
           nab)
      
         - Fix target dynamic se_node GPF during uncached shutdown regression
           (Justin Maggard + nab)"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        target: Fix node_acl demo-mode + uncached dynamic shutdown regression
        iscsi-target: Fix iscsi_np reset hung task during parallel delete
        qla2xxx: Fix incorrect tcm_qla2xxx_free_cmd use during TMR ABORT (v2)
        cxgbit: fix sg_nents calculation
        iscsi-target: fix invalid flags in text response
        iscsi-target: fix memory leak in iscsit_setup_text_cmd()
        cxgbit: add missing __kfree_skb()
        tcmu: free old string on reconfig
        tcmu: Fix possible to/from address overflow when doing the memcpy
      a99bcdce
    • L
      Merge tag 'for-linus-4.13b-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 043cd07c
      Linus Torvalds 提交于
      Pull xen fixes from Juergen Gross:
       "Some fixes for Xen:
      
         - a fix for a regression introduced in 4.13 for a Xen HVM-guest
           configured with KASLR
      
         - a fix for a possible deadlock in the xenbus driver when booting the
           system
      
         - a fix for lost interrupts in Xen guests"
      
      * tag 'for-linus-4.13b-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/events: Fix interrupt lost during irq_disable and irq_enable
        xen: avoid deadlock in xenbus
        xen: fix hvm guest with kaslr enabled
        xen: split up xen_hvm_init_shared_info()
        x86: provide an init_mem_mapping hypervisor hook
      043cd07c
  3. 12 8月, 2017 7 次提交
  4. 11 8月, 2017 11 次提交
    • L
      Merge tag 'powerpc-4.13-6' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 8001a975
      Linus Torvalds 提交于
      Pull powerpc fixes from Michael Ellerman:
       "All fixes for code that went in this cycle.
      
         - a revert of an optimisation to the syscall exit path, which could
           lead to an oops on either older machines or machines with > 1TB of
           memory
      
         - disable some deep idle states if the firmware configuration for
           them fails
      
         - re-enable HARD/SOFT lockup detectors in defconfigs after a Kconfig
           change
      
         - six fairly small patches fixing bugs in our new watchdog code
      
        Thanks to: Gautham R Shenoy, Nicholas Piggin"
      
      * tag 'powerpc-4.13-6' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/watchdog: add locking around init/exit functions
        powerpc/watchdog: Fix marking of stuck CPUs
        powerpc/watchdog: Fix final-check recovered case
        powerpc/watchdog: Moderate touch_nmi_watchdog overhead
        powerpc/watchdog: Improve watchdog lock primitive
        powerpc: NMI IPI improve lock primitive
        powerpc/configs: Re-enable HARD/SOFT lockup detectors
        powerpc/powernv/idle: Disable LOSE_FULL_CONTEXT states when stop-api fails
        Revert "powerpc/64: Avoid restore_math call if possible in syscall exit"
      8001a975
    • A
      iommu/arm-smmu: fix null-pointer dereference in arm_smmu_add_device · a7990c64
      Artem Savkov 提交于
      Commit c54451a5 "iommu/arm-smmu: Fix the error path in arm_smmu_add_device"
      removed fwspec assignment in legacy_binding path as redundant which is
      wrong. It needs to be updated after fwspec initialisation in
      arm_smmu_register_legacy_master() as it is dereferenced later. Without
      this there is a NULL-pointer dereference panic during boot on some hosts.
      Signed-off-by: NArtem Savkov <asavkov@redhat.com>
      Reviewed-by: NRobin Murphy <robin.murphy@arm.com>
      Acked-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NJoerg Roedel <jroedel@suse.de>
      a7990c64
    • L
      xen/events: Fix interrupt lost during irq_disable and irq_enable · 020db9d3
      Liu Shuo 提交于
      Here is a device has xen-pirq-MSI interrupt. Dom0 might lost interrupt
      during driver irq_disable/irq_enable. Here is the scenario,
       1. irq_disable -> disable_dynirq -> mask_evtchn(irq channel)
       2. dev interrupt raised by HW and Xen mark its evtchn as pending
       3. irq_enable -> startup_pirq -> eoi_pirq ->
          clear_evtchn(channel of irq) -> clear pending status
       4. consume_one_event process the irq event without pending bit assert
          which result in interrupt lost once
       5. No HW interrupt raising anymore.
      
      Now use enable_dynirq for enable_pirq of xen_pirq_chip to remove
      eoi_pirq when irq_enable.
      Signed-off-by: NLiu Shuo <shuo.a.liu@intel.com>
      Reviewed-by: NBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      020db9d3
    • J
      xen: avoid deadlock in xenbus · 529871bb
      Juergen Gross 提交于
      When starting the xenwatch thread a theoretical deadlock situation is
      possible:
      
      xs_init() contains:
      
          task = kthread_run(xenwatch_thread, NULL, "xenwatch");
          if (IS_ERR(task))
              return PTR_ERR(task);
          xenwatch_pid = task->pid;
      
      And xenwatch_thread() does:
      
          mutex_lock(&xenwatch_mutex);
          ...
          event->handle->callback();
          ...
          mutex_unlock(&xenwatch_mutex);
      
      The callback could call unregister_xenbus_watch() which does:
      
          ...
          if (current->pid != xenwatch_pid)
              mutex_lock(&xenwatch_mutex);
          ...
      
      In case a watch is firing before xenwatch_pid could be set and the
      callback of that watch unregisters a watch, then a self-deadlock would
      occur.
      
      Avoid this by setting xenwatch_pid in xenwatch_thread().
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      Reviewed-by: NBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      529871bb
    • J
      Merge branch 'nvme-4.13' of git://git.infradead.org/nvme into for-linus · 4a8b53be
      Jens Axboe 提交于
      Pull NVMe fixes from Christoph:
      
      "A few more small fixes - the fc/lpfc update is the biggest by far."
      4a8b53be
    • J
      xen: fix hvm guest with kaslr enabled · 4ca83dcf
      Juergen Gross 提交于
      A Xen HVM guest running with KASLR enabled will die rather soon today
      because the shared info page mapping is using va() too early. This was
      introduced by commit a5d5f328 ("xen:
      allocate page for shared info page from low memory").
      
      In order to fix this use early_memremap() to get a temporary virtual
      address for shared info until va() can be used safely.
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      Reviewed-by: NBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Acked-by: NIngo Molnar <mingo@kernel.org>
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      4ca83dcf
    • J
      xen: split up xen_hvm_init_shared_info() · 10231f69
      Juergen Gross 提交于
      Instead of calling xen_hvm_init_shared_info() on boot and resume split
      it up into a boot time function searching for the pfn to use and a
      mapping function doing the hypervisor mapping call.
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      Reviewed-by: NBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Acked-by: NIngo Molnar <mingo@kernel.org>
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      10231f69
    • J
      x86: provide an init_mem_mapping hypervisor hook · c138d811
      Juergen Gross 提交于
      Provide a hook in hypervisor_x86 called after setting up initial
      memory mapping.
      
      This is needed e.g. by Xen HVM guests to map the hypervisor shared
      info page.
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      Reviewed-by: NBoris Ostrovsky <boris.ostrovsky@oracle.com>
      Acked-by: NIngo Molnar <mingo@kernel.org>
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      c138d811
    • J
      fuse: set mapping error in writepage_locked when it fails · 9183976e
      Jeff Layton 提交于
      This ensures that we see errors on fsync when writeback fails.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NJan Kara <jack@suse.cz>
      Signed-off-by: NMiklos Szeredi <mszeredi@redhat.com>
      9183976e
    • L
      Merge tag 'drm-fixes-for-v4.13-rc5' of git://people.freedesktop.org/~airlied/linux · b2dbdf2c
      Linus Torvalds 提交于
      Pull drm fixes from Dave Airlie:
       "Nothing too earth shattering here, it just seems like lots of little
        things all over the place.
      
        msm has probably the larger amount of changes, but they all seem fine,
        otherwise, some rockchip, i915, etnaviv and exynos fixes, along with
        one nouveau regression fix for some older GPUs"
      
      * tag 'drm-fixes-for-v4.13-rc5' of git://people.freedesktop.org/~airlied/linux: (35 commits)
        drm/nouveau/disp/nv04: avoid creation of output paths
        drm: make DRM_STM default n
        drm/exynos: forbid creating framebuffers from too small GEM buffers
        drm/etnaviv: Fix off-by-one error in reloc checking
        drm/i915: fix backlight invert for non-zero minimum brightness
        drm/i915/shrinker: Wrap need_resched() inside preempt-disable
        drm/i915/perf: fix flex eu registers programming
        drm/i915: Fix out-of-bounds array access in bdw_load_gamma_lut
        drm/i915/gvt: Change the max length of mmio_reg_rw from 4 to 8
        drm/i915/gvt: Initialize MMIO Block with HW state
        drm/rockchip: vop: report error when check resource error
        drm/rockchip: vop: round_up pitches to word align
        drm/rockchip: vop: fix NV12 video display error
        drm/rockchip: vop: fix iommu page fault when resume
        drm/i915/gvt: clean workload queue if error happened
        drm/i915/gvt: change resetting to resetting_eng
        drm/msm: gpu: don't abuse dma_alloc for non-DMA allocations
        drm/msm: gpu: call qcom_mdt interfaces only for ARCH_QCOM
        drm/msm/adreno: Prevent unclocked access when retrieving timestamps
        drm/msm: Remove __user from __u64 data types
        ...
      b2dbdf2c
    • L
      Merge branch 'akpm' (patches from Andrew) · 27df704d
      Linus Torvalds 提交于
      Merge misc fixes from Andrew Morton:
       "21 fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (21 commits)
        userfaultfd: replace ENOSPC with ESRCH in case mm has gone during copy/zeropage
        zram: rework copy of compressor name in comp_algorithm_store()
        rmap: do not call mmu_notifier_invalidate_page() under ptl
        mm: fix list corruptions on shmem shrinklist
        mm/balloon_compaction.c: don't zero ballooned pages
        MAINTAINERS: copy virtio on balloon_compaction.c
        mm: fix KSM data corruption
        mm: fix MADV_[FREE|DONTNEED] TLB flush miss problem
        mm: make tlb_flush_pending global
        mm: refactor TLB gathering API
        Revert "mm: numa: defer TLB flush for THP migration as long as possible"
        mm: migrate: fix barriers around tlb_flush_pending
        mm: migrate: prevent racy access to tlb_flush_pending
        fault-inject: fix wrong should_fail() decision in task context
        test_kmod: fix small memory leak on filesystem tests
        test_kmod: fix the lock in register_test_dev_kmod()
        test_kmod: fix bug which allows negative values on two config options
        test_kmod: fix spelling mistake: "EMTPY" -> "EMPTY"
        userfaultfd: hugetlbfs: remove superfluous page unlock in VM_SHARED case
        mm: ratelimit PFNs busy info message
        ...
      27df704d