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

Make local APIC timer really local; improve timers initialization; interrupts restore #326

Merged
merged 9 commits into from
Nov 13, 2023

Conversation

wipawel
Copy link
Contributor

@wipawel wipawel commented Nov 8, 2023

No description provided.

@wipawel wipawel added improvement A small enhancement, that makes already implemented features better bugfix This fixes a bug Severity: high Very important bug - fix ASAP labels Nov 8, 2023
@wipawel wipawel requested a review from a team as a code owner November 8, 2023 10:37
Copy link
Contributor

@sktt sktt left a comment

Choose a reason for hiding this comment

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

Nice!

My only question is if READ_ONCE is required for these fields that are declared volatile for ticks and apic_ticks already?

lib/time.c Show resolved Hide resolved
arch/x86/apic.c Outdated Show resolved Hide resolved
arch/x86/apic.c Outdated Show resolved Hide resolved
common/setup.c Show resolved Hide resolved
APIC timer is not a replacement for PIT.

Signed-off-by: Pawel Wieczorkiewicz <[email protected]>
The ticks variable is declared as volatile, and updated only on BSP.
But might be accessed by other CPUs and hence more atomic update.

Signed-off-by: Pawel Wieczorkiewicz <[email protected]>
Detect and record global timers (HPET or PIT) enablement in boot_flags.
Detect and record APIC timer enablement in PERCPU variable.
Check if corresponding timers are on and return -ENODEV otherwise in
msleep() functions.

Signed-off-by: Pawel Wieczorkiewicz <[email protected]>
@wipawel wipawel changed the title Make local APIC timer really local; improve timers initialization Make local APIC timer really local; improve timers initialization; interrupts restore Nov 13, 2023
@wipawel wipawel merged commit a31cc7e into KernelTestFramework:mainline Nov 13, 2023
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugfix This fixes a bug improvement A small enhancement, that makes already implemented features better Severity: high Very important bug - fix ASAP
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants