1. 07 11月, 2019 1 次提交
    • R
      drm/atomic: fix self-refresh helpers crtc state dereference · 86de88cf
      Rob Clark 提交于
      drm_self_refresh_helper_update_avg_times() was incorrectly accessing the
      new incoming state after drm_atomic_helper_commit_hw_done().  But this
      state might have already been superceeded by an !nonblock atomic update
      resulting in dereferencing an already free'd crtc_state.
      
      TODO I *think* this will more or less do the right thing.. althought I'm
      not 100% sure if, for example, we enter psr in a nonblock commit, and
      then leave psr in a !nonblock commit that overtakes the completion of
      the nonblock commit.  Not sure if this sort of scenario can happen in
      practice.  But not crashing is better than crashing, so I guess we
      should either take this patch or rever the self-refresh helpers until
      Sean can figure out a better solution.
      
      Fixes: d4da4e33 ("drm: Measure Self Refresh Entry/Exit times to avoid thrashing")
      Cc: Sean Paul <seanpaul@chromium.org>
      Signed-off-by: NRob Clark <robdclark@chromium.org>
      [seanpaul fixed up some checkpatch warns]
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191104173737.142558-1-robdclark@gmail.com
      86de88cf
  2. 04 11月, 2019 1 次提交
  3. 30 10月, 2019 2 次提交
    • R
      drm/panfrost: Don't dereference bogus MMU pointers · f70744c6
      Robin Murphy 提交于
      It seems that killing an application while faults are occurring
      (particularly with a GPU in FPGA at a whopping 40MHz) can lead to
      handling a lingering page fault after all the address space contexts
      have already been freed. In this situation, the LRU list is empty so
      addr_to_drm_mm_node() ends up dereferencing the list head as if it were
      a struct panfrost_mmu entry; this leaves "mmu->as" actually pointing at
      the pfdev->alloc_mask bitmap, which is also empty, and given that the
      fault has a high likelihood of being in AS0, hilarity ensues.
      
      Sadly, the cleanest solution seems to involve another goto. Oh well, at
      least it's robust...
      
      Fixes: 65e51e30 ("drm/panfrost: Prevent race when handling page fault")
      Signed-off-by: NRobin Murphy <robin.murphy@arm.com>
      Signed-off-by: NRob Herring <robh@kernel.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/9a0b09e6b5851f0d4428b72dd6b8b4c0d0ef4206.1572293305.git.robin.murphy@arm.com
      f70744c6
    • Y
      drm/panfrost: fix -Wmissing-prototypes warnings · 6f39188c
      Yi Wang 提交于
      We get these warnings when build kernel W=1:
      drivers/gpu/drm/panfrost/panfrost_perfcnt.c:35:6: warning: no previous prototype for ‘panfrost_perfcnt_clean_cache_done’ [-Wmissing-prototypes]
      drivers/gpu/drm/panfrost/panfrost_perfcnt.c:40:6: warning: no previous prototype for ‘panfrost_perfcnt_sample_done’ [-Wmissing-prototypes]
      drivers/gpu/drm/panfrost/panfrost_perfcnt.c:190:5: warning: no previous prototype for ‘panfrost_ioctl_perfcnt_enable’ [-Wmissing-prototypes]
      drivers/gpu/drm/panfrost/panfrost_perfcnt.c:218:5: warning: no previous prototype for ‘panfrost_ioctl_perfcnt_dump’ [-Wmissing-prototypes]
      drivers/gpu/drm/panfrost/panfrost_perfcnt.c:250:6: warning: no previous prototype for ‘panfrost_perfcnt_close’ [-Wmissing-prototypes]
      drivers/gpu/drm/panfrost/panfrost_perfcnt.c:264:5: warning: no previous prototype for ‘panfrost_perfcnt_init’ [-Wmissing-prototypes]
      drivers/gpu/drm/panfrost/panfrost_perfcnt.c:320:6: warning: no previous prototype for ‘panfrost_perfcnt_fini’ [-Wmissing-prototypes]
      drivers/gpu/drm/panfrost/panfrost_mmu.c:227:6: warning: no previous prototype for ‘panfrost_mmu_flush_range’ [-Wmissing-prototypes]
      drivers/gpu/drm/panfrost/panfrost_mmu.c:435:5: warning: no previous prototype for ‘panfrost_mmu_map_fault_addr’ [-Wmissing-prototypes]
      
      For file panfrost_mmu.c, make functions static to fix this.
      For file panfrost_perfcnt.c, include header file can fix this.
      Signed-off-by: NYi Wang <wang.yi59@zte.com.cn>
      Reviewed-by: NSteven Price <steven.price@arm.com>
      Cc: stable@vger.kernel.org
      [robh: fixup function parameter alignment]
      Signed-off-by: NRob Herring <robh@kernel.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/1571967015-42854-1-git-send-email-wang.yi59@zte.com.cn
      6f39188c
  4. 24 10月, 2019 2 次提交
  5. 21 10月, 2019 2 次提交
  6. 16 10月, 2019 1 次提交
  7. 15 10月, 2019 1 次提交
  8. 14 10月, 2019 3 次提交
  9. 12 10月, 2019 1 次提交
    • J
      drm/msm/dsi: Implement reset correctly · 78e31c42
      Jeffrey Hugo 提交于
      On msm8998, vblank timeouts are observed because the DSI controller is not
      reset properly, which ends up stalling the MDP.  This is because the reset
      logic is not correct per the hardware documentation.
      
      The documentation states that after asserting reset, software should wait
      some time (no indication of how long), or poll the status register until it
      returns 0 before deasserting reset.
      
      wmb() is insufficient for this purpose since it just ensures ordering, not
      timing between writes.  Since asserting and deasserting reset occurs on the
      same register, ordering is already guaranteed by the architecture, making
      the wmb extraneous.
      
      Since we would define a timeout for polling the status register to avoid a
      possible infinite loop, lets just use a static delay of 20 ms, since 16.666
      ms is the time available to process one frame at 60 fps.
      
      Fixes: a689554b ("drm/msm: Initial add DSI connector support")
      Cc: Hai Li <hali@codeaurora.org>
      Cc: Rob Clark <robdclark@gmail.com>
      Signed-off-by: NJeffrey Hugo <jeffrey.l.hugo@gmail.com>
      Reviewed-by: NSean Paul <sean@poorly.run>
      [seanpaul renamed RESET_DELAY to DSI_RESET_TOGGLE_DELAY_MS]
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191011133939.16551-1-jeffrey.l.hugo@gmail.com
      78e31c42
  10. 10 10月, 2019 4 次提交
  11. 08 10月, 2019 5 次提交
  12. 03 10月, 2019 3 次提交
  13. 01 10月, 2019 7 次提交
    • L
      Linux 5.4-rc1 · 54ecb8f7
      Linus Torvalds 提交于
      54ecb8f7
    • L
      Merge tag 'for-5.4-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · bb48a591
      Linus Torvalds 提交于
      Pull btrfs fixes from David Sterba:
       "A bunch of fixes that accumulated in recent weeks, mostly material for
        stable.
      
        Summary:
      
         - fix for regression from 5.3 that prevents to use balance convert
           with single profile
      
         - qgroup fixes: rescan race, accounting leak with multiple writers,
           potential leak after io failure recovery
      
         - fix for use after free in relocation (reported by KASAN)
      
         - other error handling fixups"
      
      * tag 'for-5.4-rc1-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: qgroup: Fix reserved data space leak if we have multiple reserve calls
        btrfs: qgroup: Fix the wrong target io_tree when freeing reserved data space
        btrfs: Fix a regression which we can't convert to SINGLE profile
        btrfs: relocation: fix use-after-free on dead relocation roots
        Btrfs: fix race setting up and completing qgroup rescan workers
        Btrfs: fix missing error return if writeback for extent buffer never started
        btrfs: adjust dirty_metadata_bytes after writeback failure of extent buffer
        Btrfs: fix selftests failure due to uninitialized i_mode in test inodes
      bb48a591
    • L
      Merge tag 'csky-for-linus-5.4-rc1' of git://github.com/c-sky/csky-linux · 80b29b6b
      Linus Torvalds 提交于
      Pull csky updates from Guo Ren:
       "This round of csky subsystem just some fixups:
      
         - Fix mb() synchronization problem
      
         - Fix dma_alloc_coherent with PAGE_SO attribute
      
         - Fix cache_op failed when cross memory ZONEs
      
         - Optimize arch_sync_dma_for_cpu/device with dma_inv_range
      
         - Fix ioremap function losing
      
         - Fix arch_get_unmapped_area() implementation
      
         - Fix defer cache flush for 610
      
         - Support kernel non-aligned access
      
         - Fix 610 vipt cache flush mechanism
      
         - Fix add zero_fp fixup perf backtrace panic
      
         - Move static keyword to the front of declaration
      
         - Fix csky_pmu.max_period assignment
      
         - Use generic free_initrd_mem()
      
         - entry: Remove unneeded need_resched() loop"
      
      * tag 'csky-for-linus-5.4-rc1' of git://github.com/c-sky/csky-linux:
        csky: Move static keyword to the front of declaration
        csky: entry: Remove unneeded need_resched() loop
        csky: Fixup csky_pmu.max_period assignment
        csky: Fixup add zero_fp fixup perf backtrace panic
        csky: Use generic free_initrd_mem()
        csky: Fixup 610 vipt cache flush mechanism
        csky: Support kernel non-aligned access
        csky: Fixup defer cache flush for 610
        csky: Fixup arch_get_unmapped_area() implementation
        csky: Fixup ioremap function losing
        csky: Optimize arch_sync_dma_for_cpu/device with dma_inv_range
        csky/dma: Fixup cache_op failed when cross memory ZONEs
        csky: Fixup dma_alloc_coherent with PAGE_SO attribute
        csky: Fixup mb() synchronization problem
      80b29b6b
    • L
      Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · cef0aa0c
      Linus Torvalds 提交于
      Pull ARM SoC fixes from Olof Johansson:
       "A few fixes that have trickled in through the merge window:
      
         - Video fixes for OMAP due to panel-dpi driver removal
      
         - Clock fixes for OMAP that broke no-idle quirks + nfsroot on DRA7
      
         - Fixing arch version on ASpeed ast2500
      
         - Two fixes for reset handling on ARM SCMI"
      
      * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
        ARM: aspeed: ast2500 is ARMv6K
        reset: reset-scmi: add missing handle initialisation
        firmware: arm_scmi: reset: fix reset_state assignment in scmi_domain_reset
        bus: ti-sysc: Remove unpaired sysc_clkdm_deny_idle()
        ARM: dts: logicpd-som-lv: Fix i2c2 and i2c3 Pin mux
        ARM: dts: am3517-evm: Fix missing video
        ARM: dts: logicpd-torpedo-baseboard: Fix missing video
        ARM: omap2plus_defconfig: Fix missing video
        bus: ti-sysc: Fix handling of invalid clocks
        bus: ti-sysc: Fix clock handling for no-idle quirks
      cef0aa0c
    • L
      Merge tag 'trace-v5.4-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · cf4f493b
      Linus Torvalds 提交于
      Pull tracing fixes from Steven Rostedt:
       "A few more tracing fixes:
      
         - Fix a buffer overflow by checking nr_args correctly in probes
      
         - Fix a warning that is reported by clang
      
         - Fix a possible memory leak in error path of filter processing
      
         - Fix the selftest that checks for failures, but wasn't failing
      
         - Minor clean up on call site output of a memory trace event"
      
      * tag 'trace-v5.4-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        selftests/ftrace: Fix same probe error test
        mm, tracing: Print symbol name for call_site in trace events
        tracing: Have error path in predicate_parse() free its allocated memory
        tracing: Fix clang -Wint-in-bool-context warnings in IF_ASSIGN macro
        tracing/probe: Fix to check the difference of nr_args before adding probe
      cf4f493b
    • A
      drm/tilcdc: include linux/pinctrl/consumer.h again · d7d44b6f
      Arnd Bergmann 提交于
      This was apparently dropped by accident in a recent
      cleanup, causing a build failure in some configurations now:
      
      drivers/gpu/drm/tilcdc/tilcdc_tfp410.c:296:12: error: implicit declaration of function 'devm_pinctrl_get_select_default' [-Werror,-Wimplicit-function-declaration]
      
      Fixes: fcb57664 ("drm/tilcdc: drop use of drmP.h")
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Reviewed-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NJyri Sarha <jsarha@ti.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/02b03f74cf941f52a941a36bdc8dabb4a69fd87e.1569852588.git.jsarha@ti.comAcked-by: NSam Ravnborg <sam@ravnborg.org>
      d7d44b6f
    • L
      Merge tag 'mmc-v5.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · c710364f
      Linus Torvalds 提交于
      Pull more MMC updates from Ulf Hansson:
       "A couple more updates/fixes for MMC:
      
         - sdhci-pci: Add Genesys Logic GL975x support
      
         - sdhci-tegra: Recover loss in throughput for DMA
      
         - sdhci-of-esdhc: Fix DMA bug"
      
      * tag 'mmc-v5.4-2' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
        mmc: host: sdhci-pci: Add Genesys Logic GL975x support
        mmc: tegra: Implement ->set_dma_mask()
        mmc: sdhci: Let drivers define their DMA mask
        mmc: sdhci-of-esdhc: set DMA snooping based on DMA coherence
        mmc: sdhci: improve ADMA error reporting
      c710364f
  14. 30 9月, 2019 7 次提交