Skip to content
  1. Oct 29, 2015
    • Tony Lindgren's avatar
      usb: musb: omap2430: Fix regression caused by driver core change · 8f2279d5
      Tony Lindgren authored
      Commit ddef08dd ("Driver core: wakeup the parent device before trying
      probe") started automatically ensuring the parent device is enabled when
      the child gets probed.
      
      This however caused a regression for MUSB omap2430 interface as the
      runtime PM for the parent device needs the child initialized to access
      the MUSB hardware registers.
      
      Let's delay the enabling of PM runtime for the parent until the child
      has been properly initialized as suggested in an earlier patch by
      Grygorii Strashko <grygorii.strashko@ti.com>.
      
      In addition to delaying pm_runtime_enable, we now also need to make sure
      the parent is enabled during omap2430_musb_init. We also want to propagate
      an error from omap2430_runtime_resume if struct musb is not initialized.
      
      Note that we use pm_runtime_put_noidle here for both the child and parent
      to prevent an extra runtime_suspend/resume cycle.
      
      Let's also add some comments to avoid confusion between the
      two different devices.
      
      Fixes: ddef08dd
      
       ("Driver core: wakeup the parent device before
      trying probe")
      Suggested-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
      Reviewed-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
      Acked-by: default avatarFelipe Balbi <balbi@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      8f2279d5
    • Aaro Koskinen's avatar
      ARM: OMAP1: fix incorrect INT_DMA_LCD · 1bd5dfe4
      Aaro Koskinen authored
      Commit 685e2d08 ("ARM: OMAP1: Change interrupt numbering for
      sparse IRQ") turned on SPARSE_IRQ on OMAP1, but forgot to change
      the number of INT_DMA_LCD. This broke the boot at least on Nokia 770,
      where the device hangs during framebuffer initialization.
      
      Fix by defining INT_DMA_LCD like the other interrupts.
      
      Cc: stable@vger.kernel.org # v4.2+
      Fixes: 685e2d08
      
       ("ARM: OMAP1: Change interrupt numbering for sparse IRQ")
      Signed-off-by: default avatarAaro Koskinen <aaro.koskinen@iki.fi>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      1bd5dfe4
  2. Oct 19, 2015
    • Tony Lindgren's avatar
      ARM: OMAP2+: Fix imprecise external abort caused by bogus SRAM init · 57df5380
      Tony Lindgren authored
      
      
      Some omaps are producing imprecise external aborts because we are
      wrongly trying to init SRAM for device tree based booting. Only
      omap3 is still using the legacy SRAM code, so we need to make it
      omap3 specific. Otherwise we can get errors like this on at least
      dm814x:
      
      Unhandled fault: imprecise external abort (0xc06) at 0xc08b156c
      ...
      (omap_rev) from [<c08b12e0>] (omap_sram_init+0xf8/0x3e0)
      (omap_sram_init) from [<c08aca0c>] (omap_sdrc_init+0x10/0xb0)
      (omap_sdrc_init) from [<c08b581c>] (pdata_quirks_init+0x18/0x44)
      (pdata_quirks_init) from [<c08b5478>] (omap_generic_init+0x10/0x1c)
      (omap_generic_init) from [<c08a57e0>] (customize_machine+0x1c/0x40)
      (customize_machine) from [<c00098a4>] (do_one_initcall+0x80/0x1dc)
      (do_one_initcall) from [<c08a2ec4>] (kernel_init_freeable+0x218/0x2e8)
      (kernel_init_freeable) from [<c063a554>] (kernel_init+0x8/0xec)
      (kernel_init) from [<c000f890>] (ret_from_fork+0x14/0x24)
      
      Let's fix the issue by making sure omap_sdrc_init only gets called for
      omap3. To do that, we need to have compatible "ti,omap3" in the dts
      files. And let's also use "ti,omap3630" instead of "ti,omap36xx" like
      we're supposed to.
      
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      57df5380
  3. Oct 17, 2015
    • Tony Lindgren's avatar
      ARM: OMAP2+: Fix oops with LPAE and more than 2GB of memory · 6a3b764b
      Tony Lindgren authored
      
      
      On boards with more than 2GB of RAM booting goes wrong with things not
      working and we're getting lots of l3 warnings:
      
      WARNING: CPU: 0 PID: 1 at drivers/bus/omap_l3_noc.c:147
      l3_interrupt_handler+0x260/0x384()
      44000000.ocp:L3 Custom Error: MASTER MMC6 TARGET DMM1 (Idle):
      Data Access in User mode during Functional access
      ...
      [<c044e158>] (scsi_add_host_with_dma) from [<c04705c8>]
      (ata_scsi_add_hosts+0x5c/0x18c)
      [<c04705c8>] (ata_scsi_add_hosts) from [<c046b13c>]
      (ata_host_register+0x150/0x2cc)
      [<c046b13c>] (ata_host_register) from [<c046b38c>]
      (ata_host_activate+0xd4/0x124)
      [<c046b38c>] (ata_host_activate) from [<c047f42c>]
      (ahci_host_activate+0x5c/0x194)
      [<c047f42c>] (ahci_host_activate) from [<c0480854>]
      (ahci_platform_init_host+0x1f0/0x3f0)
      [<c0480854>] (ahci_platform_init_host) from [<c047c9dc>]
      (ahci_probe+0x70/0x98)
      [<c047c9dc>] (ahci_probe) from [<c04220cc>]
      (platform_drv_probe+0x54/0xb4)
      
      Let's fix the issue by enabling ZONE_DMA for LPAE. Note that we need to
      limit dma_zone_size to 2GB as the rest of the RAM is beyond the 4GB limit.
      
      Let's also fix things for dra7 as done in similar patches in the TI tree
      by Lokesh Vutla <lokeshvutla@ti.com>.
      
      Reviewed-by: default avatarLokesh Vutla <lokeshvutla@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      6a3b764b
  4. Oct 13, 2015
    • Tony Lindgren's avatar
      Documentation: ARM: List new omap MMC requirements · d8e1f5ed
      Tony Lindgren authored
      
      
      Earlier the PBIAS regulator was optional, not so with recent
      omap_hsmmc changes. To make things easier for people with
      custom .config files, let's add minimal documentation for it
      as suggested by Russell King <rmk+kernel@arm.linux.org.uk>.
      
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      d8e1f5ed
    • Uwe Kleine-König's avatar
      memory: omap-gpmc: dump "before" state before first modification · fd820a1e
      Uwe Kleine-König authored
      
      
      When gpmc_cs_show_timings is called in gpmc_cs_set_timings()
      gpmc_cs_program_settings() was already run which modifies the CONFIG1
      register. So to be more useful do the "before" dump earlier.
      
      Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Acked-by: default avatarRoger Quadros <rogerq@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      fd820a1e
    • Tony Lindgren's avatar
      memory: omap-gpmc: Fix unselectable debug option for GPMC · be59b619
      Tony Lindgren authored
      Commit 63aa945b ("memory: omap-gpmc: Add Kconfig option for debug")
      added a debug option for GPMC, but somehow managed to keep it unselectable.
      
      This probably happened because I had some uncommitted changes and the
      GPMC option is selected in the platform specific Kconfig.
      
      Let's also update the description a bit, it does not mention that
      enabling the debug option also disables the reset of GPMC controller
      during the init as pointed out by Uwe Kleine-König
      <u.kleine-koenig@pengutronix.de> and Roger Quadros <rogerq@ti.com>.
      
      Fixes: 63aa945b
      
       ("memory: omap-gpmc: Add Kconfig option for debug")
      Reported-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Acked-by: default avatarRoger Quadros <rogerq@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      be59b619
    • Tomi Valkeinen's avatar
      ARM: dts: am57xx-beagle-x15: set VDD_SD to always-on · 7e381ec6
      Tomi Valkeinen authored
      LDO1 regulator (VDD_SD) is connected to SoC's vddshv8. vddshv8 needs to
      be kept always powered (see commit 5a0f93c6 ("ARM: dts: Add
      am57xx-beagle-x15"), but at the moment VDD_SD is enabled/disabled
      depending on whether an SD card is inserted or not.
      
      This patch sets LDO1 regulator to always-on.
      
      This patch has a side effect of fixing another issue, HDMI DDC not
      working when SD card is not inserted:
      
      Why this happens is that the tpd12s015 (HDMI level shifter/ESD
      protection chip) has LS_OE GPIO input, which needs to be enabled for the
      HDMI DDC to work. LS_OE comes from gpio6_28. The pin that provides
      gpio6_28 is powered by vddshv8, and vddshv8 comes from VDD_SD.
      
      So when SD card is not inserted, VDD_SD is disabled, and LS_OE stays
      off.
      
      The proper fix for the HDMI DDC issue would be to maybe have the pinctrl
      framework manage the pin specific power.
      
      Apparently this fixes also a third issue (copy paste from Kishon's
      patch):
      
      ldo1_reg in addition to being connected to the io lines is also
      connected to the card detect line. On card removal, omap_hsmmc
      driver does a regulator_disable causing card detect line to be
      pulled down. This raises a card insertion interrupt and once the
      MMC core detects there is no card inserted, it does a
      regulator disable which again raises a card insertion interrupt.
      This happens in a loop causing infinite MMC interrupts.
      
      Fixes: 5a0f93c6
      
       ("ARM: dts: Add am57xx-beagle-x15")
      Cc: Kishon Vijay Abraham I <kishon@ti.com>
      Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      Reported-by: default avatarLouis McCarthy <compeoree@gmail.com>
      Acked-by: default avatarNishanth Menon <nm@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      7e381ec6
  5. Oct 12, 2015
  6. Oct 11, 2015
  7. Oct 10, 2015
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-4.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 149fadf2
      Linus Torvalds authored
      Pull power management and ACPI fixes from Rafael Wysocki:
       "These are four fixes for bugs in the devfreq and cpufreq subsystems,
        including two regression fixes (one for a recent regression and one
        for a problem introduced in 4.2).
      
        Specifics:
      
         - Two fixes for cpufreq regressions, an acpi-cpufreq driver one
           introduced during the 4.2 cycle when we started to preserve cpufreq
           directories for offline CPUs and a general one introduced recently
           (Srinivas Pandruvada).
      
         - Two devfreq fixes, one for a double kfree() in an error code path
           and one for a confusing sysfs-related failure (Geliang Tang, Tobias
           Jakobi)"
      
      * tag 'pm+acpi-4.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: prevent lockup on reading scaling_available_frequencies
        cpufreq: acpi_cpufreq: prevent crash on reading freqdomain_cpus
        PM / devfreq: fix double kfree
        PM / devfreq: Fix governor_store()
      149fadf2
    • Linus Torvalds's avatar
      Merge branch 'strscpy' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile · 71419b7b
      Linus Torvalds authored
      Pull strscpy powerpc fix from Chris Metcalf.
      
      Fix powerpc big-endian build.
      
      * 'strscpy' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        arch/powerpc: provide zero_bytemask() for big-endian
      71419b7b
    • Linus Torvalds's avatar
      Merge tag 'sound-4.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · f4ba1cf8
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "We see various small fixes, but nothing looks too scary, all are small
        gentle bug fixes:
      
         - Most of changes are for ASoC codecs: Realtek, SGTL5000, TAS2552,
           TLV320, WM8962
      
         - A couple of dwc and imx-ssi fixes
      
         - Usual oneliner HD-audio quirks
      
         - An old emux synth code fix"
      
      * tag 'sound-4.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        MAINTAINERS: Remove wm97xx entry
        ASoC: tas2552: fix dBscale-min declaration
        ALSA: synth: Fix conflicting OSS device registration on AWE32
        ALSA: hda - Disable power_save_node for IDT 92HD73xx chips
        ALSA: hda - Apply SPDIF pin ctl to MacBookPro 12,1
        ALSA: hda: Add dock support for ThinkPad T550
        ASoC: dwc: fix dma stop transferring issue
        ASoC: dwc: correct irq clear method
        ASoC: tlv320aic3x: Prevent writing reserved registers on tlv320aic3104 CODECs
        ASoC: rt5645: Correct the naming and setting of ADC Boost Volume Control
        ASoC: sgtl5000: fix wrong register MIC_BIAS_VOLTAGE setup on probe
        ASoC: wm8962: balance pm_runtime_enable
        ASoC: imx-ssi: Fix DAI hardware signal inversions
        ASoC: sgtl5000: fix error message output for MicBias voltage
        ASoC: db1200: Fix DAI link format for db1300 and db1550
      f4ba1cf8
    • Linus Torvalds's avatar
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · fe621fde
      Linus Torvalds authored
      Pull clk fixes from Stephen Boyd:
       "A Samsung driver fix and a handful of TI driver fixes"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk: ti: dflt: fix enable_reg validity check
        clk: ti: fix dual-registration of uart4_ick
        clk: ti: clk-7xx: Remove hardwired ABE clock configuration
        clk: samsung: fix cpu clock's flags checking
      fe621fde
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.3-rc4' of git://git.linaro.org/people/ulf.hansson/mmc · 8140e736
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson:
       "MMC host:
         - omap_hsmmc: Fix boot regressions for omap4430
         - omap_hsmmc: Fix legacy boot regression for omap3
         - sdhci-pxav3: Fix some clock issues for Armada 38x
         - sdhci-pxav3: Fix error handling at probe
         - sdhci-of-at91: Fix clock stabilization problem"
      
      * tag 'mmc-v4.3-rc4' of git://git.linaro.org/people/ulf.hansson/mmc:
        mmc: sdhci-of-at91: use SDHCI_QUIRK2_NEED_DELAY_AFTER_INT_CLK_RST quirk
        mmc: sdhci: add quirk SDHCI_QUIRK2_NEED_DELAY_AFTER_INT_CLK_RST
        mmc: sdhci-pxav3: fix error handling of armada_38x_quirks
        mmc: sdhci-pxav3: disable clock inversion for HS MMC cards
        mmc: sdhci-pxav3: remove broken clock base quirk for Armada 38x sdhci driver
        mmc: host: omap_hsmmc: Fix MMC for omap3 legacy booting
        Revert "mmc: host: omap_hsmmc: use regulator_is_enabled to find pbias status"
      8140e736
    • Linus Torvalds's avatar
      Merge tag 'dm-4.3-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm · 04445556
      Linus Torvalds authored
      Pull dm fixes from Mike Snitzer:
       "Three stable fixes:
      
         - DM core AB-BA deadlock fix in the device destruction path (vs
           device creation's DM table swap).
      
         - DM raid fix to properly round up the region_size to the next
           power-of-2.
      
         - DM cache fix for a NULL pointer seen while switching from the
           "cleaner" cache policy.
      
        Two fixes for regressions introduced during the 4.3 merge:
      
         - request-based DM error propagation regressed due to incorrect
           changes introduced when adding the bi_error field to bio.
      
         - DM snapshot fix to only support snapshots that overflow if the
           client (e.g. lvm2) is prepared to deal with the associated
           snapshot status interface change"
      
      * tag 'dm-4.3-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm snapshot: add new persistent store option to support overflow
        dm cache: fix NULL pointer when switching from cleaner policy
        dm: fix request-based dm error reporting
        dm raid: fix round up of default region size
        dm: fix AB-BA deadlock in __dm_destroy()
      04445556
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 175d58cf
      Linus Torvalds authored
      Pull btrfs fixes from Chris Mason:
       "These are small and assorted.  Neil's is the oldest, I dropped the
        ball thinking he was going to send it in"
      
      * 'for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Btrfs: support NFSv2 export
        Btrfs: open_ctree: Fix possible memory leak
        Btrfs: fix deadlock when finalizing block group creation
        Btrfs: update fix for read corruption of compressed and shared extents
        Btrfs: send, fix corner case for reference overwrite detection
      175d58cf
    • Linus Torvalds's avatar
      Merge tag 'nfsd-4.3-1' of git://linux-nfs.org/~bfields/linux · 38aa0a59
      Linus Torvalds authored
      Pull nfsd bugfix from Bruce Fields:
       "Just one RDMA bugfix"
      
      * tag 'nfsd-4.3-1' of git://linux-nfs.org/~bfields/linux:
        svcrdma: handle rdma read with a non-zero initial page offset
      38aa0a59
    • Linus Torvalds's avatar
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 5163ac76
      Linus Torvalds authored
      Pull ARM SoC fixes from Arnd Bergmann:
       "The fixes for this week include one small patch that was years in the
        making and that finally fixes using all eight CPUs on exynos542x.
      
        The rest are lots of minor changes for sunxi, imx, exynos and shmobile
      
         - fixing the minimum voltage for Allwinner A20
         - thermal boot issue on SMDK5250.
         - invalid clock used for FIMD IOMMU.
         - audio on Renesas r8a7790/r8a7791
         - invalid clock used for FIMD IOMMU
         - LEDs on exynos5422-odroidxu3-common
         - usb pin control for imx-rex
         - imx53: fix PMIC interrupt level
         - a Makefile typo"
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: dts: Fix wrong clock binding for sysmmu_fimd1_1 on exynos5420
        ARM: dts: Fix bootup thermal issue on smdk5250
        ARM: shmobile: r8a7791 dtsi: Add CPG/MSTP Clock Domain for sound
        ARM: shmobile: r8a7790 dtsi: Add CPG/MSTP Clock Domain for sound
        arm-cci500: Don't enable PMU driver by default
        ARM: dts: fix usb pin control for imx-rex dts
        ARM: imx53: qsrb: fix PMIC interrupt level
        ARM: imx53: include IRQ dt-bindings header
        ARM: dts: add suspend opp to exynos4412
        ARM: dts: Fix LEDs on exynos5422-odroidxu3
        ARM: EXYNOS: reset Little cores when cpu is up
        ARM: dts: Fix Makefile target for sun4i-a10-itead-iteaduino-plus
        ARM: dts: sunxi: Raise minimum CPU voltage for sun7i-a20 to meet SoC specifications
      5163ac76
    • Mike Snitzer's avatar
      dm snapshot: add new persistent store option to support overflow · b0d3cc01
      Mike Snitzer authored
      Commit 76c44f6d
      
       introduced the possibly for "Overflow" to be reported
      by the snapshot device's status.  Older userspace (e.g. lvm2) does not
      handle the "Overflow" status response.
      
      Fix this incompatibility by requiring newer userspace code, that can
      cope with "Overflow", request the persistent store with overflow support
      by using "PO" (Persistent with Overflow) for the snapshot store type.
      
      Reported-by: default avatarZdenek Kabelac <zkabelac@redhat.com>
      Fixes: 76c44f6d
      
       ("dm snapshot: don't invalidate on-disk image on snapshot write overflow")
      Reviewed-by: default avatarMikulas Patocka <mpatocka@redhat.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      b0d3cc01
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-devfreq' and 'pm-cpufreq' · 670aee3f
      Rafael J. Wysocki authored
      * pm-devfreq:
        PM / devfreq: fix double kfree
        PM / devfreq: Fix governor_store()
      
      * pm-cpufreq:
        cpufreq: prevent lockup on reading scaling_available_frequencies
        cpufreq: acpi_cpufreq: prevent crash on reading freqdomain_cpus
      670aee3f
  8. Oct 09, 2015
    • Marc Zyngier's avatar
      irqdomain: Add an accessor for the of_node field · 10abc7df
      Marc Zyngier authored
      
      
      As we're about to remove the of_node field from the irqdomain
      structure, introduce an accessor for it. Subsequent patches
      will take care of the actual repainting.
      
      Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
      Cc: Jiang Liu <jiang.liu@linux.intel.com>
      Cc: Jason Cooper <jason@lakedaemon.net>
      Link: http://lkml.kernel.org/r/1444402211-1141-1-git-send-email-marc.zyngier@arm.com
      
      
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      10abc7df
    • Arnd Bergmann's avatar
      genirq: Fix handle_bad_irq kerneldoc comment · e3096c9c
      Arnd Bergmann authored
      A recent cleanup removed the 'irq' parameter from many functions, but
      left the documentation for this in place for at least one function.
      
      This removes it.
      
      Fixes: bd0b9ac4
      
       ("genirq: Remove irq argument from irq flow handlers")
      Reported-by: default avatarkbuild test robot <lkp@intel.com>
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Grygorii Strashko <grygorii.strashko@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: kbuild-all@01.org
      Cc: Austin Schuh <austin@peloton-tech.com>
      Cc: Santosh Shilimkar <ssantosh@kernel.org>
      Cc: linux-arm-kernel@lists.infradead.org
      Link: http://lkml.kernel.org/r/5400000.cD19rmgWjV@wuerfel
      
      
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      e3096c9c
    • Arnd Bergmann's avatar
      genirq: Export handle_bad_irq · 9d67dc5d
      Arnd Bergmann authored
      
      
      A cleanup of the omap gpio driver introduced a use of the
      handle_bad_irq() function in a device driver that can be
      a loadable module.
      
      This broke the ARM allmodconfig build:
      
      ERROR: "handle_bad_irq" [drivers/gpio/gpio-omap.ko] undefined!
      
      This patch exports the handle_bad_irq symbol in order to
      allow the use in modules.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Grygorii Strashko <grygorii.strashko@ti.com>
      Cc: Santosh Shilimkar <ssantosh@kernel.org>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Austin Schuh <austin@peloton-tech.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: linux-arm-kernel@lists.infradead.org
      Link: http://lkml.kernel.org/r/5847725.4IBopItaOr@wuerfel
      
      
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      9d67dc5d
    • Joe Thornber's avatar
      dm cache: fix NULL pointer when switching from cleaner policy · 2bffa150
      Joe Thornber authored
      
      
      The cleaner policy doesn't make use of the per cache block hint space in
      the metadata (unlike the other policies).  When switching from the
      cleaner policy to mq or smq a NULL pointer crash (in dm_tm_new_block)
      was observed.  The crash was caused by bugs in dm-cache-metadata.c
      when trying to skip creation of the hint btree.
      
      The minimal fix is to change hint size for the cleaner policy to 4 bytes
      (only hint size supported).
      
      Signed-off-by: default avatarJoe Thornber <ejt@redhat.com>
      Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
      Cc: stable@vger.kernel.org
      2bffa150
    • Mikulas Patocka's avatar
      crash in md-raid1 and md-raid10 due to incorrect list manipulation · a452744b
      Mikulas Patocka authored
      The commit 55ce74d4
      
       (md/raid1: ensure
      device failure recorded before write request returns) is causing crash in
      the LVM2 testsuite test shell/lvchange-raid.sh. For me the crash is 100%
      reproducible.
      
      The reason for the crash is that the newly added code in raid1d moves the
      list from conf->bio_end_io_list to tmp, then tests if tmp is non-empty and
      then incorrectly pops the bio from conf->bio_end_io_list (which is empty
      because the list was alrady moved).
      
      Raid-10 has a similar bug.
      
      Kernel Fault: Code=15 regs=000000006ccb8640 (Addr=0000000100000000)
      CPU: 3 PID: 1930 Comm: mdX_raid1 Not tainted 4.2.0-rc5-bisect+ #35
      task: 000000006cc1f258 ti: 000000006ccb8000 task.ti: 000000006ccb8000
      
           YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
      PSW: 00001000000001001111111000001111 Not tainted
      r00-03  000000ff0804fe0f 000000001059d000 000000001059f818 000000007f16be38
      r04-07  000000001059d000 000000007f16be08 0000000000200200 0000000000000001
      r08-11  000000006ccb8260 000000007b7934d0 0000000000000001 0000000000000000
      r12-15  000000004056f320 0000000000000000 0000000000013dd0 0000000000000000
      r16-19  00000000f0d00ae0 0000000000000000 0000000000000000 0000000000000001
      r20-23  000000000800000f 0000000042200390 0000000000000000 0000000000000000
      r24-27  0000000000000001 000000000800000f 000000007f16be08 000000001059d000
      r28-31  0000000100000000 000000006ccb8560 000000006ccb8640 0000000000000000
      sr00-03  0000000000249800 0000000000000000 0000000000000000 0000000000249800
      sr04-07  0000000000000000 0000000000000000 0000000000000000 0000000000000000
      
      IASQ: 0000000000000000 0000000000000000 IAOQ: 000000001059f61c 000000001059f620
       IIR: 0f8010c6    ISR: 0000000000000000  IOR: 0000000100000000
       CPU:        3   CR30: 000000006ccb8000 CR31: 0000000000000000
       ORIG_R28: 000000001059d000
       IAOQ[0]: call_bio_endio+0x34/0x1a8 [raid1]
       IAOQ[1]: call_bio_endio+0x38/0x1a8 [raid1]
       RP(r2): raid_end_bio_io+0x88/0x168 [raid1]
      Backtrace:
       [<000000001059f818>] raid_end_bio_io+0x88/0x168 [raid1]
       [<00000000105a4f64>] raid1d+0x144/0x1640 [raid1]
       [<000000004017fd5c>] kthread+0x144/0x160
      
      Signed-off-by: default avatarMikulas Patocka <mpatocka@redhat.com>
      Fixes: 55ce74d4 ("md/raid1: ensure device failure recorded before write request returns.")
      Fixes: 95af587e
      
       ("md/raid10: ensure device failure recorded before write request returns.")
      Signed-off-by: default avatarNeilBrown <neilb@suse.com>
      a452744b
    • Srinivas Pandruvada's avatar
      cpufreq: prevent lockup on reading scaling_available_frequencies · 55582bcc
      Srinivas Pandruvada authored
      
      
      When scaling_available_frequencies is read on an offlined cpu, then
      either lockup or junk values are displayed. This is caused by
      freed freq_table, which policy is using.
      
      Signed-off-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
      Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      55582bcc