1. 26 Nov, 2020 27 commits
  2. 16 Nov, 2020 2 commits
    • Stanimir Varbanov's avatar
      media: venus: pm_helpers: Fix kernel module reload · 9215f6bb
      Stanimir Varbanov authored
      After initial kernel module load during kernel boot and removing
      the module and try to load it again an Unable to handle kernel
      paging request is observed:
      
      Unable to handle kernel paging request at virtual address ffffa44f7416eae0
       Mem abort info:
         ESR = 0x96000047
         EC = 0x25: DABT (current EL), IL = 32 bits
         SET = 0, FnV = 0
         EA = 0, S1PTW = 0
       Data abort info:
         ISV = 0, ISS = 0x00000047
         CM = 0, WnR = 1
       swapper pgtable: 4k pages, 48-bit VAs, pgdp=000000008147c000
       [ffffa44f7416eae0] pgd=000000017df9f003, p4d=000000017df9f003,
       pud=000000017df9e003, pmd=000000017df9b003, pte=0000000000000000
       Internal error: Oops: 96000047 [#1] PREEMPT SMP
       Modules linked in: venus_core(+) snd_soc_wsa881x regmap_sdw af_alg
        snd_soc_wcd934x soundwire_qcom gpio_wcd934x q6asm_dai q6routing
        q6adm q6afe_dai snd_soc_hdmi_codec q6afe q6asm q6dsp_common q6cor
        display_connector rmtfs_mem drm ip_tables x_tables ipv6
        [last unloaded: venus_core]
       CPU: 6 PID: 889 Comm: modprobe Tainted: G        W      5.10.0-rc1+ #8
       Hardware name: Thundercomm Dragonboard 845c (DT)
       pstate: 80400085 (Nzcv daIf +PAN -UAO -TCO BTYPE=--)
       pc : queued_spin_lock_slowpath+0x1dc/0x3c8
       lr : do_raw_spin_lock+0xc0/0x118
       sp : ffff8000142cb7b0
       x29: ffff8000142cb7b0 x28: 0000000000000013
       x27: ffffa44f72de5690 x26: 0000000000000003
       x25: ffff17c2d00f8080 x24: ffff17c2c0d78010
       x23: ffff17c2c0d4f700 x22: ffff17c2d00f8080
       x21: 0000000000000000 x20: ffffa44f74148000
       x19: ffff17c2c0d4f8f8 x18: 0000000000000000
       x17: 0000000000000000 x16: ffffa44f7342f158
       x15: 0000000000000040 x14: ffffa44f746e8320
       x13: 0000000000000228 x12: 0000000000000020
       x11: 0000000000000000 x10: 00000000001c0000
       x9 : 0000000000000000 x8 : ffff17c33d746ac0
       x7 : ffff17c2c109b000 x6 : ffffa44f7416eac0
       x5 : ffff17c33d746ac0 x4 : 0000000000000000
       x3 : ffff17c2c0d4f8f8 x2 : ffffa44f7416eae0
       x1 : ffffa44f7416eae0 x0 : ffff17c33d746ac8
       Call trace:
        queued_spin_lock_slowpath+0x1dc/0x3c8
        do_raw_spin_lock+0xc0/0x118
        _raw_spin_lock_irqsave+0x80/0x14c
        __pm_runtime_resume+0x38/0xb8
        device_link_add+0x3b8/0x5d0
        core_get_v4+0x268/0x2d8 [venus_core]
        venus_probe+0x108/0x458 [venus_core]
        platform_drv_probe+0x54/0xa8
        really_probe+0xe4/0x3b0
        driver_probe_device+0x58/0xb8
        device_driver_attach+0x74/0x80
        __driver_attach+0x58/0xe8
        bus_for_each_dev+0x70/0xc0
        driver_attach+0x24/0x30
        bus_add_driver+0x150/0x1f8
        driver_register+0x64/0x120
        __platform_driver_register+0x48/0x58
        qcom_venus_driver_init+0x20/0x1000 [venus_core]
        do_one_initcall+0x84/0x458
        do_init_module+0x58/0x208
        load_module+0x1ec0/0x26a8
        __do_sys_finit_module+0xb8/0xf8
        __arm64_sys_finit_module+0x20/0x30
        el0_svc_common.constprop.0+0x7c/0x1c0
        do_el0_svc+0x24/0x90
        el0_sync_handler+0x180/0x188
        el0_sync+0x174/0x180
       Code: 91002100 8b0200c2 f861d884 aa0203e1 (f8246828)
       ---[ end trace f1f687c15fd6b2ca ]---
       note: modprobe[889] exited with preempt_count 1
      
      After revisit the OPP part of the code I found that OPP pmdomain
      is detached with direct call to dev_pm_domain_detach instead of
      OPP wraper for detaching pmdomains with OPP table. Correct this
      by calling the OPP dev_pm_opp_detach_genpd.
      
      Fixes: 9a538b83 ('media: venus: core: Add support for opp tables/perf voting')
      Signed-off-by: default avatarStanimir Varbanov <stanimir.varbanov@linaro.org>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
      9215f6bb
    • Stanimir Varbanov's avatar
      media: venus: venc: Fix setting of profile and level · a7a20f72
      Stanimir Varbanov authored
      The profile and level in op_set_ctrl was recently changed but during
      v4l2_ctrl_handler_setup profile and level control values are mangled.
      
      Fixes: 435c53c3 ("media: venus: venc: Use helper to set profile and level")
      Signed-off-by: default avatarStanimir Varbanov <stanimir.varbanov@linaro.org>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
      a7a20f72
  3. 05 Nov, 2020 4 commits
  4. 01 Nov, 2020 7 commits
    • Linus Torvalds's avatar
      Linux 5.10-rc2 · 3cea11cd
      Linus Torvalds authored
      3cea11cd
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7b56fbd8
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "Three fixes all related to #DB:
      
         - Handle the BTF bit correctly so it doesn't get lost due to a kernel
           #DB
      
         - Only clear and set the virtual DR6 value used by ptrace on user
           space triggered #DB. A kernel #DB must leave it alone to ensure
           data consistency for ptrace.
      
         - Make the bitmasking of the virtual DR6 storage correct so it does
           not lose DR_STEP"
      
      * tag 'x86-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/debug: Fix DR_STEP vs ptrace_get_debugreg(6)
        x86/debug: Only clear/set ->virtual_dr6 for userspace #DB
        x86/debug: Fix BTF handling
      7b56fbd8
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4312e0e8
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "A few fixes for timers/timekeeping:
      
         - Prevent undefined behaviour in the timespec64_to_ns() conversion
           which is used for converting user supplied time input to
           nanoseconds. It lacked overflow protection.
      
         - Mark sched_clock_read_begin/retry() to prevent recursion in the
           tracer
      
         - Remove unused debug functions in the hrtimer and timerlist code"
      
      * tag 'timers-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        time: Prevent undefined behaviour in timespec64_to_ns()
        timers: Remove unused inline funtion debug_timer_free()
        hrtimer: Remove unused inline function debug_hrtimer_free()
        time/sched_clock: Mark sched_clock_read_begin/retry() as notrace
      4312e0e8
    • Linus Torvalds's avatar
      Merge tag 'smp-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 82423b46
      Linus Torvalds authored
      Pull smp fix from Thomas Gleixner:
       "A single fix for stop machine.
      
        Mark functions no trace to prevent a crash caused by recursion when
        enabling or disabling a tracer on RISC-V (probably all architectures
        which patch through stop machine)"
      
      * tag 'smp-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        stop_machine, rcu: Mark functions as notrace
      82423b46
    • Linus Torvalds's avatar
      Merge tag 'locking-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8d99084e
      Linus Torvalds authored
      Pull locking fixes from Thomas Gleixner:
       "A couple of locking fixes:
      
         - Fix incorrect failure injection handling in the fuxtex code
      
         - Prevent a preemption warning in lockdep when tracking
           local_irq_enable() and interrupts are already enabled
      
         - Remove more raw_cpu_read() usage from lockdep which causes state
           corruption on !X86 architectures.
      
         - Make the nr_unused_locks accounting in lockdep correct again"
      
      * tag 'locking-urgent-2020-11-01' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        lockdep: Fix nr_unused_locks accounting
        locking/lockdep: Remove more raw_cpu_read() usage
        futex: Fix incorrect should_fail_futex() handling
        lockdep: Fix preemption WARN for spurious IRQ-enable
      8d99084e
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 31f02006
      Linus Torvalds authored
      Pull char/misc fixes/removals from Greg KH:
       "Here's some small fixes for 5.10-rc2 and a big driver removal.
      
        The fixes are for some reported issues in the interconnect and
        coresight drivers, nothing major.
      
        The "big" driver removal is the MIC drivers have been asked to be
        removed as the hardware never shipped and Intel no longer wants to
        maintain something that no one can use. This is welcomed by many as
        the DMA usage of these drivers was "interesting" and the security
        people were starting to question some issues that were starting to be
        found in the codebase.
      
        Note, one of the subsystems for this driver, the "VOP" code, will
        probably come back in future kernel versions as it was looking to
        potentially solve some PCIe virtualization issues that a number of
        other vendors were wanting to solve. But as-is, this codebase didn't
        work for anyone else so no actual functionality is being removed.
      
        All of these have been in linux-next with no reported issues"
      
      * tag 'char-misc-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        coresight: cti: Initialize dynamic sysfs attributes
        coresight: Fix uninitialised pointer bug in etm_setup_aux()
        coresight: add module license
        misc: mic: remove the MIC drivers
        interconnect: qcom: use icc_sync state for sm8[12]50
        interconnect: qcom: Ensure that the floor bandwidth value is enforced
        interconnect: qcom: sc7180: Init BCMs before creating the nodes
        interconnect: qcom: sdm845: Init BCMs before creating the nodes
        interconnect: Aggregate before setting initial bandwidth
        interconnect: qcom: sdm845: Enable keepalive for the MM1 BCM
      31f02006
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.10-rc2' of... · 9c75b68b
      Linus Torvalds authored
      Merge tag 'driver-core-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core and documentation fixes from Greg KH:
       "Here is one tiny debugfs change to fix up an API where the last user
        was successfully fixed up in 5.10-rc1 (so it couldn't be merged
        earlier), and a much larger Documentation/ABI/ update to the files so
        they can be automatically parsed by our tools.
      
        The Documentation/ABI/ updates are just formatting issues, small ones
        to bring the files into parsable format, and have been acked by
        numerous subsystem maintainers and the documentation maintainer. I
        figured it was good to get this into 5.10-rc2 to help wih the merge
        issues that would arise if these were to stick in linux-next until
        5.11-rc1.
      
        The debugfs change has been in linux-next for a long time, and the
        Documentation updates only for the last linux-next release"
      
      * tag 'driver-core-5.10-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (40 commits)
        scripts: get_abi.pl: assume ReST format by default
        docs: ABI: sysfs-class-led-trigger-pattern: remove hw_pattern duplication
        docs: ABI: sysfs-class-backlight: unify ABI documentation
        docs: ABI: sysfs-c2port: remove a duplicated entry
        docs: ABI: sysfs-class-power: unify duplicated properties
        docs: ABI: unify /sys/class/leds/<led>/brightness documentation
        docs: ABI: stable: remove a duplicated documentation
        docs: ABI: change read/write attributes
        docs: ABI: cleanup several ABI documents
        docs: ABI: sysfs-bus-nvdimm: use the right format for ABI
        docs: ABI: vdso: use the right format for ABI
        docs: ABI: fix syntax to be parsed using ReST notation
        docs: ABI: convert testing/configfs-acpi to ReST
        docs: Kconfig/Makefile: add a check for broken ABI files
        docs: abi-testing.rst: enable --rst-sources when building docs
        docs: ABI: don't escape ReST-incompatible chars from obsolete and removed
        docs: ABI: create a 2-depth index for ABI
        docs: ABI: make it parse ABI/stable as ReST-compatible files
        docs: ABI: sysfs-uevent: make it compatible with ReST output
        docs: ABI: testing: make the files compatible with ReST output
        ...
      9c75b68b