1. 23 Feb, 2021 1 commit
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpufreq' and 'pm-opp' · 08c2a406
      Rafael J. Wysocki authored
      * pm-cpufreq:
        cpufreq: Fix typo in kerneldoc comment
        cpufreq: schedutil: Remove update_lock comment from struct sugov_policy definition
        cpufreq: schedutil: Remove needless sg_policy parameter from ignore_dl_rate_limit()
        cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known
        cpufreq: qcom-hw: drop devm_xxx() calls from init/exit hooks
      
      * pm-opp:
        opp: Don't skip freq update for different frequency
      08c2a406
  2. 19 Feb, 2021 3 commits
  3. 18 Feb, 2021 5 commits
    • Rafael J. Wysocki's avatar
      Merge branch 'cpufreq/arm/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm · cbf8363e
      Rafael J. Wysocki authored
      Pull ARM cpufreq fix for 5.12 from Viresh Kumar:
      
      "Single patch to fix issue with cpu hotplug and policy recreation for
       qcom-cpufreq-hw driver."
      
      * 'cpufreq/arm/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm:
        cpufreq: qcom-hw: drop devm_xxx() calls from init/exit hooks
      cbf8363e
    • Rafael J. Wysocki's avatar
      cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known · 538b0188
      Rafael J. Wysocki authored
      Commit 3c55e94c ("cpufreq: ACPI: Extend frequency tables to cover
      boost frequencies") attempted to address a performance issue involving
      acpi-cpufreq, the schedutil governor and scale-invariance on x86 by
      extending the frequency tables created by acpi-cpufreq to cover the
      entire range of "turbo" (or "boost") frequencies, but that caused
      frequencies reported via /proc/cpuinfo and the scaling_cur_freq
      attribute in sysfs to change which may confuse users and monitoring
      tools.
      
      For this reason, revert the part of commit 3c55e94c adding the
      extra entry to the frequency table and use the observation that
      in principle cpuinfo.max_freq need not be equal to the maximum
      frequency listed in the frequency table for the given policy.
      
      Namely, modify cpufreq_frequency_table_cpuinfo() to allow cpufreq
      drivers to set their own cpuinfo.max_freq above that frequency and
      change  acpi-cpufreq to set cpuinfo.max_freq to the maximum boost
      frequency found via CPPC.
      
      This should be sufficient to let all of the cpufreq subsystem know
      the real maximum frequency of the CPU without changing frequency
      reporting.
      
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=211305
      Fixes: 3c55e94c ("cpufreq: ACPI: Extend frequency tables to cover boost frequencies")
      Reported-by: default avatarMatt McDonald <gardotd426@gmail.com>
      Tested-by: default avatarMatt McDonald <gardotd426@gmail.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Tested-by: default avatarGiovanni Gherdovich <ggherdovich@suse.cz>
      Tested-by: default avatarMichael Larabel <Michael@phoronix.com>
      Cc: 5.11+ <stable@vger.kernel.org> # 5.11+
      538b0188
    • Rafael J. Wysocki's avatar
      Merge branch 'opp/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm · 8521ce52
      Rafael J. Wysocki authored
      Pull an operating performance points (OPP) framework fix for 5.12
      from Viresh Kumar:
      
      "Single patch to fix an issue where a frequency update may get
       skipped."
      
      * 'opp/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm:
        opp: Don't skip freq update for different frequency
      8521ce52
    • Shawn Guo's avatar
      cpufreq: qcom-hw: drop devm_xxx() calls from init/exit hooks · 67fc209b
      Shawn Guo authored
      Commit f17b3e44 ("cpufreq: qcom-hw: Use
      devm_platform_ioremap_resource() to simplify code") introduces
      a regression on platforms using the driver, by failing to initialise
      a policy, when one is created post hotplug.
      
      When all the CPUs of a policy are hoptplugged out, the call to .exit()
      and later to devm_iounmap() does not release the memory region that was
      requested during devm_platform_ioremap_resource().  Therefore,
      a subsequent call to .init() will result in the following error, which
      will prevent a new policy to be initialised:
      
      [ 3395.915416] CPU4: shutdown
      [ 3395.938185] psci: CPU4 killed (polled 0 ms)
      [ 3399.071424] CPU5: shutdown
      [ 3399.094316] psci: CPU5 killed (polled 0 ms)
      [ 3402.139358] CPU6: shutdown
      [ 3402.161705] psci: CPU6 killed (polled 0 ms)
      [ 3404.742939] CPU7: shutdown
      [ 3404.765592] psci: CPU7 killed (polled 0 ms)
      [ 3411.492274] Detected VIPT I-cache on CPU4
      [ 3411.492337] GICv3: CPU4: found redistributor 400 region 0:0x0000000017ae0000
      [ 3411.492448] CPU4: Booted secondary processor 0x0000000400 [0x516f802d]
      [ 3411.503654] qcom-cpufreq-hw 17d43000.cpufreq: can't request region for resource [mem 0x17d45800-0x17d46bff]
      
      With that being said, the original code was tricky and skipping memory
      region request intentionally to hide this issue.  The true cause is that
      those devm_xxx() device managed functions shouldn't be used for cpufreq
      init/exit hooks, because &pdev->dev is alive across the hooks and will
      not trigger auto resource free-up.  Let's drop the use of device managed
      functions and manually allocate/free resources, so that the issue can be
      fixed properly.
      
      Cc: v5.10+ <stable@vger.kernel.org> # v5.10+
      Fixes: f17b3e44 ("cpufreq: qcom-hw: Use devm_platform_ioremap_resource() to simplify code")
      Suggested-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
      Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
      Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      67fc209b
    • Jonathan Marek's avatar
      opp: Don't skip freq update for different frequency · de04241a
      Jonathan Marek authored
      We skip the OPP update if the current and target OPPs are same. This is
      fine for the devices that don't support frequency but may cause issues
      for the ones that need to program frequency.
      
      An OPP entry doesn't really signify a single operating frequency but
      rather the highest frequency at which the other properties of the OPP
      entry apply. And we may reach here with different frequency values,
      while all of them would point to the same OPP entry in the OPP table.
      
      We just need to update the clock frequency in that case, though in order
      to not add special exit points we reuse the code flow from a normal
      path.
      
      While at it, rearrange the conditionals in the 'if' statement to check
      'enabled' flag at the end.
      
      Fixes: 81c4d8a3 ("opp: Keep track of currently programmed OPP")
      Signed-off-by: default avatarJonathan Marek <jonathan@marek.ca>
      [ Viresh: Improved commit log and subject, rename current_freq as
      	  current_rate, document it, remove local variable and rearrange
      	  code. ]
      Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      de04241a
  4. 15 Feb, 2021 5 commits
    • Rafael J. Wysocki's avatar
      Merge branches 'powercap' and 'pm-misc' · a9a939cb
      Rafael J. Wysocki authored
      * powercap:
        powercap: intel_rapl: Use topology interface in rapl_init_domains()
        powercap: intel_rapl: Use topology interface in rapl_add_package()
        powercap/intel_rapl: add support for AlderLake Mobile
        powercap/drivers/dtpm: Fix size of object being allocated
        powercap/drivers/dtpm: Fix an IS_ERR() vs NULL check
        powercap/drivers/dtpm: Fix some missing unlock bugs
        powercap/drivers/dtpm: Fix a double shift bug
        powercap/drivers/dtpm: Fix __udivdi3 and __aeabi_uldivmod unresolved symbols
        powercap/drivers/dtpm: Add CPU energy model based support
        powercap/drivers/dtpm: Add API for dynamic thermal power management
        Documentation/powercap/dtpm: Add documentation for dtpm
        units: Add Watt units
      
      * pm-misc:
        PM: Kconfig: remove unneeded "default n" options
        PM: EM: update Kconfig description and drop "default n" option
      a9a939cb
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-devfreq' and 'pm-tools' · 332fd900
      Rafael J. Wysocki authored
      * pm-devfreq:
        PM / devfreq: rk3399_dmc: Remove unneeded semicolon
        PM / devfreq: Replace devfreq->dev.parent as dev in devfreq_add_device
        PM / devfreq: Correct spelling in a comment
      
      * pm-tools:
        cpupower: Add cpuid cap flag for MSR_AMD_HWCR support
        cpupower: Remove family arg to decode_pstates()
        cpupower: Condense pstate enabled bit checks in decode_pstates()
        cpupower: Update family checks when decoding HW pstates
        cpupower: Remove unused pscur variable.
        cpupower: Add CPUPOWER_CAP_AMD_HW_PSTATE cpuid caps flag
        cpupower: Correct macro name for CPB caps flag
        cpupower: Update msr_pstate union struct naming
        cpupower: add Makefile dependencies for install targets
      332fd900
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-opp' into pm · f5c233c8
      Rafael J. Wysocki authored
      * pm-opp: (37 commits)
        PM / devfreq: Add required OPPs support to passive governor
        PM / devfreq: Cache OPP table reference in devfreq
        OPP: Add function to look up required OPP's for a given OPP
        opp: Replace ENOTSUPP with EOPNOTSUPP
        opp: Fix "foo * bar" should be "foo *bar"
        opp: Don't ignore clk_get() errors other than -ENOENT
        opp: Update bandwidth requirements based on scaling up/down
        opp: Allow lazy-linking of required-opps
        opp: Remove dev_pm_opp_set_bw()
        devfreq: tegra30: Migrate to dev_pm_opp_set_opp()
        drm: msm: Migrate to dev_pm_opp_set_opp()
        cpufreq: qcom: Migrate to dev_pm_opp_set_opp()
        opp: Implement dev_pm_opp_set_opp()
        opp: Update parameters of  _set_opp_custom()
        opp: Allow _generic_set_opp_clk_only() to work for non-freq devices
        opp: Allow _generic_set_opp_regulator() to work for non-freq devices
        opp: Allow _set_opp() to work for non-freq devices
        opp: Split _set_opp() out of dev_pm_opp_set_rate()
        opp: Keep track of currently programmed OPP
        opp: No need to check clk for errors
        ...
      f5c233c8
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-sleep', 'pm-core', 'pm-domains' and 'pm-clk' · 6621cd2d
      Rafael J. Wysocki authored
      * pm-sleep:
        PM: sleep: Constify static struct attribute_group
        PM: sleep: Use dev_printk() when possible
        PM: sleep: No need to check PF_WQ_WORKER in thaw_kernel_threads()
      
      * pm-core:
        PM: runtime: Fix typos and grammar
        PM: runtime: Fix resposible -> responsible in runtime.c
      
      * pm-domains:
        PM: domains: Simplify the calculation of variables
        PM: domains: Add "performance" column to debug summary
        PM: domains: Make of_genpd_add_subdomain() return -EPROBE_DEFER
        PM: domains: Make set_performance_state() callback optional
        PM: domains: use device's next wakeup to determine domain idle state
        PM: domains: inform PM domain of a device's next wakeup
      
      * pm-clk:
        PM: clk: make PM clock layer compatible with clocks that must sleep
      6621cd2d
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpuidle' and 'pm-cpufreq' · acc3a645
      Rafael J. Wysocki authored
      * pm-cpuidle:
        MAINTAINERS: cpuidle: exynos: include header in file pattern
        intel_idle: remove definition of DEBUG
      
      * pm-cpufreq:
        cpufreq: Remove unused flag CPUFREQ_PM_NO_WARN
        cpufreq: Remove CPUFREQ_STICKY flag
        cpufreq: intel_pstate: Remove repeated word
        cpufreq: remove tango driver
        cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove()
        cpufreq: brcmstb-avs-cpufreq: Free resources in error path
        cpufreq: qcom-hw: enable boost support
        cpufreq: tegra20: Use resource-managed API
        cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if available
        cpufreq: intel_pstate: Rename two functions
        cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument
        cpufreq: intel_pstate: Always read hwp_cap_cached with READ_ONCE()
      acc3a645
  5. 12 Feb, 2021 6 commits
  6. 10 Feb, 2021 1 commit
  7. 09 Feb, 2021 1 commit
  8. 08 Feb, 2021 5 commits
    • Rafael J. Wysocki's avatar
      Merge tag 'linux-cpupower-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux · a51d1856
      Rafael J. Wysocki authored
      Pull cpupower utility update for v5.12-rc1 from Shuah Khan:
      
      "This cpupower update for Linux 5.12-rc1 consists of:
      
       - Updates to the cpupower command to add support for AMD family 0x19
         and cleanup the code to remove many of the family checks to make
         future family updates easier.
      
       - Adding Makefile dependencies for install targets to allow building
         cpupower in parallel rather than serially."
      
      * tag 'linux-cpupower-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux:
        cpupower: Add cpuid cap flag for MSR_AMD_HWCR support
        cpupower: Remove family arg to decode_pstates()
        cpupower: Condense pstate enabled bit checks in decode_pstates()
        cpupower: Update family checks when decoding HW pstates
        cpupower: Remove unused pscur variable.
        cpupower: Add CPUPOWER_CAP_AMD_HW_PSTATE cpuid caps flag
        cpupower: Correct macro name for CPB caps flag
        cpupower: Update msr_pstate union struct naming
        cpupower: add Makefile dependencies for install targets
      a51d1856
    • Rafael J. Wysocki's avatar
      Merge branch 'cpufreq/arm/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm · 7ac839a0
      Rafael J. Wysocki authored
      Pull ARM cpufreq changes for v5.12 from Viresh Kumar:
      
      "- Removal of Tango driver as the platform got removed (Arnd Bergmann).
      
       - Use resource managed APIs for tegra20 (Dmitry Osipenko).
      
       - Generic cleanups for brcmstb (Christophe JAILLET).
      
       - Enable boost support for qcom-hw (Shawn Guo)."
      
      * 'cpufreq/arm/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm:
        cpufreq: remove tango driver
        cpufreq: brcmstb-avs-cpufreq: Fix resource leaks in ->remove()
        cpufreq: brcmstb-avs-cpufreq: Free resources in error path
        cpufreq: qcom-hw: enable boost support
        cpufreq: tegra20: Use resource-managed API
      7ac839a0
    • Rafael J. Wysocki's avatar
      Merge branch 'opp/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm · 992b9ff1
      Rafael J. Wysocki authored
      Pull operating performance points (OPP) changes for v5.12 from Viresh
      Kumar:
      
      "- Generic cleanups across the OPP core (Dmitry Osipenko, Viresh
         Kumar).
      
       - New OPP helpers dev_pm_opp_find_level_ceil(),
         dev_pm_opp_get_required_pstate(), dev_pm_opp_sync_regulators(),
         devm_pm_opp_register_set_opp_helper(),
         dev_pm_opp_of_add_table_noclk() and devm_pm_opp_attach_genpd()
         (Dmitry Osipenko, Viresh Kumar).
      
       - Allow required OPPs to be used for devfreq devices and related
         changes to devfreq governor (Saravana Kannan).
      
       - Significant code changes to allow a new OPP helper,
         dev_pm_opp_set_opp() (Viresh Kumar).
      
       - Remove dev_pm_opp_set_bw() and update related drivers (Viresh
         Kumar).
      
       - Allow lazy linking of required-OPPs (Viresh Kumar)."
      
      * 'opp/linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/vireshk/pm: (37 commits)
        PM / devfreq: Add required OPPs support to passive governor
        PM / devfreq: Cache OPP table reference in devfreq
        OPP: Add function to look up required OPP's for a given OPP
        opp: Replace ENOTSUPP with EOPNOTSUPP
        opp: Fix "foo * bar" should be "foo *bar"
        opp: Don't ignore clk_get() errors other than -ENOENT
        opp: Update bandwidth requirements based on scaling up/down
        opp: Allow lazy-linking of required-opps
        opp: Remove dev_pm_opp_set_bw()
        devfreq: tegra30: Migrate to dev_pm_opp_set_opp()
        drm: msm: Migrate to dev_pm_opp_set_opp()
        cpufreq: qcom: Migrate to dev_pm_opp_set_opp()
        opp: Implement dev_pm_opp_set_opp()
        opp: Update parameters of  _set_opp_custom()
        opp: Allow _generic_set_opp_clk_only() to work for non-freq devices
        opp: Allow _generic_set_opp_regulator() to work for non-freq devices
        opp: Allow _set_opp() to work for non-freq devices
        opp: Split _set_opp() out of dev_pm_opp_set_rate()
        opp: Keep track of currently programmed OPP
        opp: No need to check clk for errors
        ...
      992b9ff1
    • Rafael J. Wysocki's avatar
      cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not there · d11a1d08
      Rafael J. Wysocki authored
      If the maximum performance level taken for computing the
      arch_max_freq_ratio value used in the x86 scale-invariance code is
      higher than the one corresponding to the cpuinfo.max_freq value
      coming from the acpi_cpufreq driver, the scale-invariant utilization
      falls below 100% even if the CPU runs at cpuinfo.max_freq or slightly
      faster, which causes the schedutil governor to select a frequency
      below cpuinfo.max_freq.  That frequency corresponds to a frequency
      table entry below the maximum performance level necessary to get to
      the "boost" range of CPU frequencies which prevents "boost"
      frequencies from being used in some workloads.
      
      While this issue is related to scale-invariance, it may be amplified
      by commit db865272 ("cpufreq: Avoid configuring old governors as
      default with intel_pstate") from the 5.10 development cycle which
      made it extremely easy to default to schedutil even if the preferred
      driver is acpi_cpufreq as long as intel_pstate is built too, because
      the mere presence of the latter effectively removes the ondemand
      governor from the defaults.  Distro kernels are likely to include
      both intel_pstate and acpi_cpufreq on x86, so their users who cannot
      use intel_pstate or choose to use acpi_cpufreq may easily be
      affectecd by this issue.
      
      If CPPC is available, it can be used to address this issue by
      extending the frequency tables created by acpi_cpufreq to cover the
      entire available frequency range (including "boost" frequencies) for
      each CPU, but if CPPC is not there, acpi_cpufreq has no idea what
      the maximum "boost" frequency is and the frequency tables created by
      it cannot be extended in a meaningful way, so in that case make it
      ask the arch scale-invariance code to to use the "nominal" performance
      level for CPU utilization scaling in order to avoid the issue at hand.
      
      Fixes: db865272 ("cpufreq: Avoid configuring old governors as default with intel_pstate")
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Reviewed-by: default avatarGiovanni Gherdovich <ggherdovich@suse.cz>
      Acked-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
      d11a1d08
    • Rafael J. Wysocki's avatar
      cpufreq: ACPI: Extend frequency tables to cover boost frequencies · 3c55e94c
      Rafael J. Wysocki authored
      A severe performance regression on AMD EPYC processors when using
      the schedutil scaling governor was discovered by Phoronix.com and
      attributed to the following commits:
      
        41ea6672 ("x86, sched: Calculate frequency invariance for AMD
        systems")
      
        976df7e5 ("x86, sched: Use midpoint of max_boost and max_P for
        frequency invariance on AMD EPYC")
      
      The source of the problem is that the maximum performance level taken
      for computing the arch_max_freq_ratio value used in the x86 scale-
      invariance code is higher than the one corresponding to the
      cpuinfo.max_freq value coming from the acpi_cpufreq driver.
      
      This effectively causes the scale-invariant utilization to fall below
      100% even if the CPU runs at cpuinfo.max_freq or slightly faster, so
      the schedutil governor selects a frequency below cpuinfo.max_freq
      then.  That frequency corresponds to a frequency table entry below
      the maximum performance level necessary to get to the "boost" range
      of CPU frequencies.
      
      However, if the cpuinfo.max_freq value coming from acpi_cpufreq was
      higher, the schedutil governor would select higher frequencies which
      in turn would allow acpi_cpufreq to set more adequate performance
      levels and to get to the "boost" range of CPU frequencies more often.
      
      This issue affects any systems where acpi_cpufreq is used and the
      "boost" (or "turbo") frequencies are enabled, not just AMD EPYC.
      Moreover, commit db865272 ("cpufreq: Avoid configuring old
      governors as default with intel_pstate") from the 5.10 development
      cycle made it extremely easy to default to schedutil even if the
      preferred driver is acpi_cpufreq as long as intel_pstate is built
      too, because the mere presence of the latter effectively removes the
      ondemand governor from the defaults.  Distro kernels are likely to
      include both intel_pstate and acpi_cpufreq on x86, so their users
      who cannot use intel_pstate or choose to use acpi_cpufreq may
      easily be affectecd by this issue.
      
      To address this issue, extend the frequency table constructed by
      acpi_cpufreq for each CPU to cover the entire range of available
      frequencies (including the "boost" ones) if CPPC is available and
      indicates that "boost" (or "turbo") frequencies are enabled.  That
      causes cpuinfo.max_freq to become the maximum "boost" frequency of
      the given CPU (instead of the maximum frequency returned by the ACPI
      _PSS object that corresponds to the "nominal" performance level).
      
      Fixes: 41ea6672 ("x86, sched: Calculate frequency invariance for AMD systems")
      Fixes: 976df7e5 ("x86, sched: Use midpoint of max_boost and max_P for frequency invariance on AMD EPYC")
      Fixes: db865272 ("cpufreq: Avoid configuring old governors as default with intel_pstate")
      Link: https://www.phoronix.com/scan.php?page=article&item=linux511-amd-schedutil&num=1
      Link: https://lore.kernel.org/linux-pm/20210203135321.12253-2-ggherdovich@suse.cz/Reported-by: default avatarMichael Larabel <Michael@phoronix.com>
      Diagnosed-by: default avatarGiovanni Gherdovich <ggherdovich@suse.cz>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Tested-by: default avatarGiovanni Gherdovich <ggherdovich@suse.cz>
      Reviewed-by: default avatarGiovanni Gherdovich <ggherdovich@suse.cz>
      Tested-by: default avatarMichael Larabel <Michael@phoronix.com>
      3c55e94c
  9. 07 Feb, 2021 9 commits
    • Linus Torvalds's avatar
      Linux 5.11-rc7 · 92bf2261
      Linus Torvalds authored
      92bf2261
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-fixes-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · b75dba7f
      Linus Torvalds authored
      Pull libnvdimm fixes from Dan Williams:
       "A fix for a crash scenario that has been present since the initial
        merge, a minor regression in sysfs attribute visibility, and a fix for
        some flexible array warnings.
      
        The bulk of this pull is an update to the libnvdimm unit test
        infrastructure to test non-ACPI platforms. Given there is zero
        regression risk for test updates, and the tests enable validation of
        bits headed towards the next merge window, I saw no reason to hold the
        new tests back. Santosh originally submitted this before the v5.11
        window opened.
      
        Summary:
      
         - Fix a crash when sysfs accesses race 'dimm' driver probe/remove.
      
         - Fix a regression in 'resource' attribute visibility necessary for
           mapping badblocks and other physical address interrogations.
      
         - Fix some flexible array warnings
      
         - Expand the unit test infrastructure for non-ACPI platforms"
      
      * tag 'libnvdimm-fixes-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        libnvdimm/dimm: Avoid race between probe and available_slots_show()
        ndtest: Add papr health related flags
        ndtest: Add nvdimm control functions
        ndtest: Add regions and mappings to the test buses
        ndtest: Add dimm attributes
        ndtest: Add dimms to the two buses
        ndtest: Add compatability string to treat it as PAPR family
        testing/nvdimm: Add test module for non-nfit platforms
        libnvdimm/namespace: Fix visibility of namespace resource attribute
        libnvdimm/pmem: Remove unused header
        ACPI: NFIT: Fix flexible_array.cocci warnings
      b75dba7f
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-5.11-2' of git://git.infradead.org/users/hch/dma-mapping · ff92acb2
      Linus Torvalds authored
      Pull dma-mapping fix from Christoph Hellwig:
       "Fix a 32 vs 64-bit padding issue in the new benchmark code (Barry
        Song)"
      
      * tag 'dma-mapping-5.11-2' of git://git.infradead.org/users/hch/dma-mapping:
        dma-mapping: benchmark: use u8 for reserved field in uAPI structure
      ff92acb2
    • Linus Torvalds's avatar
      Merge tag 'irq_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · fc6c0ae5
      Linus Torvalds authored
      Pull irq fixes from Borislav Petkov:
      
       - Prevent device managed IRQ allocation helpers from returning IRQ 0
      
       - A fix for MSI activation of PCI endpoints with multiple MSIs
      
      * tag 'irq_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        genirq: Prevent [devm_]irq_alloc_desc from returning irq 0
        genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set
      fc6c0ae5
    • Linus Torvalds's avatar
      Merge tag 'core_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c6792d44
      Linus Torvalds authored
      Pull syscall entry fixes from Borislav Petkov:
      
       - For syscall user dispatch, separate prctl operation from syscall
         redirection range specification before the API has been made official
         in 5.11.
      
       - Ensure tasks using the generic syscall code do trap after returning
         from a syscall when single-stepping is requested.
      
      * tag 'core_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        entry: Use different define for selector variable in SUD
        entry: Ensure trap after single-step on system call return
      c6792d44
    • Linus Torvalds's avatar
      Merge tag 'sched_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6fed85df
      Linus Torvalds authored
      Pull scheduler fix from Borislav Petkov:
       "Revert an attempt to not spread IRQ threads on isolated CPUs which has
        a bunch of problems"
      
      * tag 'sched_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        Revert "lib: Restrict cpumask_local_spread to houskeeping CPUs"
      6fed85df
    • Linus Torvalds's avatar
      Merge tag 'timers_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 814daadb
      Linus Torvalds authored
      Pull timer fixes from Borislav Petkov:
       "Two more timers-related fixes for v5.11:
      
         - Use a freezable workqueue for RTC sync because the sync can happen
           at any time and trigger suspend assertion checks in the i2c
           subsystem.
      
         - Correct a previous RTC validation change to check only bit 6 in
           register D because some Intel machines use bits 0-5"
      
      * tag 'timers_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        ntp: Use freezable workqueue for RTC synchronization
        rtc: mc146818: Dont test for bit 0-5 in Register D
      814daadb
    • Linus Torvalds's avatar
      Merge tag 'x86_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e24f9c5f
      Linus Torvalds authored
      Pull x86 fixes from Borislav Petkov:
       "I hope this is the last batch of x86/urgent updates for this round:
      
         - Remove superfluous EFI PGD range checks which lead to those
           assertions failing with certain kernel configs and LLVM.
      
         - Disable setting breakpoints on facilities involved in #DB exception
           handling to avoid infinite loops.
      
         - Add extra serialization to non-serializing MSRs (IA32_TSC_DEADLINE
           and x2 APIC MSRs) to adhere to SDM's recommendation and avoid any
           theoretical issues.
      
         - Re-add the EPB MSR reading on turbostat so that it works on older
           kernels which don't have the corresponding EPB sysfs file.
      
         - Add Alder Lake to the list of CPUs which support split lock.
      
         - Fix %dr6 register handling in order to be able to set watchpoints
           with gdb again.
      
         - Disable CET instrumentation in the kernel so that gcc doesn't add
           ENDBR64 to kernel code and thus confuse tracing"
      
      * tag 'x86_urgent_for_v5.11_rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/efi: Remove EFI PGD build time checks
        x86/debug: Prevent data breakpoints on cpu_dr7
        x86/debug: Prevent data breakpoints on __per_cpu_offset
        x86/apic: Add extra serialization for non-serializing MSRs
        tools/power/turbostat: Fallback to an MSR read for EPB
        x86/split_lock: Enable the split lock feature on another Alder Lake CPU
        x86/debug: Fix DR6 handling
        x86/build: Disable CET instrumentation in the kernel
      e24f9c5f
    • Linus Torvalds's avatar
      Merge tag 'kbuild-fixes-v5.11-2' of... · 2db138bb
      Linus Torvalds authored
      Merge tag 'kbuild-fixes-v5.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
      
      Pull Kbuild fixes from Masahiro Yamada:
      
       - Use the 'python3' command to invoke python scripts because some
         distributions do not provide the 'python' command any more.
      
       - Clean-up and update documents
      
       - Use pkg-config to search libcrypto
      
       - Fix duplicated debug flags
      
       - Ignore some more stubs in scripts/kallsyms.c
      
      * tag 'kbuild-fixes-v5.11-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kallsyms: fix nonconverging kallsyms table with lld
        kbuild: fix duplicated flags in DEBUG_CFLAGS
        scripts/clang-tools: switch explicitly to Python 3
        kbuild: remove PYTHON variable
        Documentation/llvm: Add a section about supported architectures
        Revert "checkpatch: add check for keyword 'boolean' in Kconfig definitions"
        scripts: use pkg-config to locate libcrypto
        kconfig: mconf: fix HOSTCC call
        doc: gcc-plugins: update gcc-plugins.rst
        kbuild: simplify GCC_PLUGINS enablement in dummy-tools/gcc
        Documentation/Kbuild: Remove references to gcc-plugin.sh
        scripts: switch explicitly to Python 3
      2db138bb
  10. 06 Feb, 2021 4 commits
    • Linus Torvalds's avatar
      Merge tag '5.11-rc6-smb3' of git://git.samba.org/sfrench/cifs-2.6 · 825b5991
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Three small smb3 fixes for stable"
      
      * tag '5.11-rc6-smb3' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: report error instead of invalid when revalidating a dentry fails
        smb3: fix crediting for compounding when only one request in flight
        smb3: Fix out-of-bounds bug in SMB2_negotiate()
      825b5991
    • Linus Torvalds's avatar
      Merge tag 'riscv-for-linus-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux · f7455e5d
      Linus Torvalds authored
      Pull RISC-V fixes from Palmer Dabbelt:
       "A handful of fixes for this week:
      
         - A fix to avoid evalating the VA twice in virt_addr_valid, which
           fixes some WARNs under DEBUG_VIRTUAL.
      
         - Two fixes related to STRICT_KERNEL_RWX: one that fixes some
           permissions when strict is disabled, and one to fix some alignment
           issues when strict is enabled.
      
         - A fix to disallow the selection of MAXPHYSMEM_2GB on RV32, which
           isn't valid any more but may still show up in some oldconfigs.
      
        We still have the HiFive Unleashed ethernet phy reset regression, so
        there will likely be something coming next week"
      
      * tag 'riscv-for-linus-5.11-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux:
        RISC-V: Define MAXPHYSMEM_1GB only for RV32
        riscv: Align on L1_CACHE_BYTES when STRICT_KERNEL_RWX
        RISC-V: Fix .init section permission update
        riscv: virt_addr_valid must check the address belongs to linear mapping
      f7455e5d
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.11-7' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · f06279ea
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
      
       - A fix for a change we made to __kernel_sigtramp_rt64() which confused
         glibc's backtrace logic, and also changed the semantics of that
         symbol, which was arguably an ABI break.
      
       - A fix for a stack overwrite in our VSX instruction emulation.
      
       - A couple of fixes for the Makefile logic in the new C VDSO.
      
      Thanks to Masahiro Yamada, Naveen N.  Rao, Raoni Fassina Firmino, and
      Ravi Bangoria.
      
      * tag 'powerpc-5.11-7' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/64/signal: Fix regression in __kernel_sigtramp_rt64() semantics
        powerpc/vdso64: remove meaningless vgettimeofday.o build rule
        powerpc/vdso: fix unnecessary rebuilds of vgettimeofday.o
        powerpc/sstep: Fix array out of bound warning
      f06279ea
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm · 4a7859ea
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
      
       - Fix latent bug with DC21285 (Footbridge PCI bridge) configuration
         accessors that affects GCC >= 4.9.2
      
       - Fix misplaced tegra_uart_config in decompressor
      
       - Ensure signal page contents are initialised
      
       - Fix kexec oops
      
      * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: kexec: fix oops after TLB are invalidated
        ARM: ensure the signal page contains defined contents
        ARM: 9043/1: tegra: Fix misplaced tegra_uart_config in decompressor
        ARM: footbridge: fix dc21285 PCI configuration accessors
      4a7859ea