Skip to content

kernel: disable dynamic preemption to improve performance #13338

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

Open
wants to merge 6 commits into
base: 3.0-dev
Choose a base branch
from

Conversation

mfrw
Copy link
Member

@mfrw mfrw commented Apr 10, 2025

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

  • The toolchain has been rebuilt successfully (or no changes were made to it)
  • The toolchain/worker package manifests are up-to-date
  • Any updated packages successfully build (or no packages were changed)
  • Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
  • Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
  • All package sources are available
  • cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
  • LICENSE-MAP files are up-to-date (./LICENSES-AND-NOTICES/SPECS/data/licenses.json, ./LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md, ./LICENSES-AND-NOTICES/SPECS/LICENSE-EXCEPTIONS.PHOTON)
  • All source files have up-to-date hashes in the *.signatures.json files
  • sudo make go-tidy-all and sudo make go-test-coverage pass
  • Documentation has been updated to match any changes to the build system
  • Ready to merge

Summary

What does the PR accomplish, why was it needed?
Disable CONFIG_PREEMPT_DYNAMIC to check performance improvements
TODO: Add more details about how we currently can set PREEMPTION at boot time

This specific change also inlines spin locks.

Change Log
  • Disable CONFIG_PREEMPT_DYNAMIC
Does this affect the toolchain?

YES

Associated issues
  • NA
Links to CVEs
  • NA
Test Methodology

@microsoft-github-policy-service microsoft-github-policy-service bot added Packaging 3.0-dev PRs Destined for AzureLinux 3.0 labels Apr 10, 2025
mfrw added 4 commits May 7, 2025 08:02
Signed-off-by: Muhammad Falak R Wani <[email protected]>
Signed-off-by: Muhammad Falak R Wani <[email protected]>
Signed-off-by: Muhammad Falak R Wani <[email protected]>
@mfrw mfrw force-pushed the mfrw/kernel-disable-dynamic-preemption branch from 872ce93 to 50ff402 Compare May 7, 2025 02:40
mfrw added 2 commits May 7, 2025 08:14
Signed-off-by: Muhammad Falak R Wani <[email protected]>
Signed-off-by: Muhammad Falak R Wani <[email protected]>
@mfrw mfrw marked this pull request as ready for review May 7, 2025 02:48
@mfrw mfrw requested a review from a team as a code owner May 7, 2025 02:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3.0-dev PRs Destined for AzureLinux 3.0 Packaging
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant