Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[linux-6.6.y] update ITMT support patch for Zhaoxin CPUs #530

Conversation

leoliu-oc
Copy link
Contributor

Include 3 patches:

0001-Revert-cpufreq-ACPI-add-ITMT-support-when-CPPC-enabl.patch
0002-cpufreq-ACPI-add-ITMT-support-when-CPPC-enabled.patch
0003-cpufreq-acpi-cpufreq-Zhaoxin-fix-incorrect-max-freq-.patch

Roll back the previous old patch, update to the new patch version,
and fix the issue of mismatched max freq.

The _CPC method can get per-core highest frequency.
The highest frequency may varies between cores which mean cores can
running at different max frequency, so can use it as a core priority
and give a hint to scheduler in order to put critical task to the
higher priority core.

Signed-off-by: LeoLiu-oc <[email protected]>
Workaround for incorrect max frequency calculation on Zhaoxin/Centaur CPUs.

Signed-off-by: LeoLiu-oc <[email protected]>
@deepin-ci-robot
Copy link

Hi @leoliu-oc. Thanks for your PR.

I'm waiting for a deepin-community member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Copy link
Member

@opsiff opsiff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@deepin-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: opsiff

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@deepin-ci-robot
Copy link

deepin pr auto review

代码审查意见:

  1. acpi-cpufreq.c文件中,get_max_boost_ratio函数中增加了对boot_cpu_data.x86_vendor的检查,这是一个好的做法,可以避免在某些特定厂商的CPU上执行不必要的操作。

  2. acpi-cpufreq.c文件中,get_max_boost_ratio函数的注释被修改了,现在更清晰地说明了函数的返回值和用途。这是一个改进,有助于其他开发者理解代码。

  3. acpi-cpufreq.c文件中,cppc_get_highest_nominal_perf函数被替换为cppc_get_highest_perf函数,这可能是为了简化代码或修复之前的错误。如果这个函数确实被替换,那么应该确保新的函数能够正确地获取所需的数据。

  4. acpi-cpufreq.c文件中,cpufreq_set_itmt_prio函数被替换为core_set_itmt_prio函数,并且增加了对boot_cpu_data.x86_vendor的检查。这可能是为了修复之前的错误或增加对特定CPU厂商的支持。

  5. acpi-cpufreq.c文件中,cpufreq_sched_itmt_work_fn函数被替换为sched_itmt_work_fn函数,并且sched_itmt_work工作项被声明为DECLARE_WORK。这可能是为了修复之前的错误或增加对特定CPU厂商的支持。

  6. acpi-cpufreq.c文件中,cppc_highest_perf_diff变量被替换为cppc_highest_perf_diff变量,并且core_prior_mask变量被替换为core_prio_cpumask变量。这可能是为了修复之前的错误或增加对特定CPU厂商的支持。

  7. acpi-cpufreq.c文件中,cpumask_equal函数被用于比较core_prior_maskcpu_online_mask,以及core_prio_cpumaskcpu_online_mask。这是一个好的做法,可以确保在CPU在线时正确地设置ITMT优先级。

  8. acpi-cpufreq.c文件中,schedule_work函数被用于在CPU在线时设置ITMT支持。这是一个好的做法,可以避免在CPU热插拔锁下执行操作。

总体来说,这些修改都是为了修复之前的错误,增加对特定CPU厂商的支持,并确保在CPU在线时正确地设置ITMT优先级。这些修改都是合理的,可以提高代码的稳定性和可维护性。

@leoliu-oc leoliu-oc closed this Dec 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants