diff --git a/CHANGELOG.md b/CHANGELOG.md index 8507e6556a..1de1d1eca1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) leaving this to the guest kernel to do in guest context. - On x86: - Prefer ACPI reboot over UEFI ResetSystem() run time service call. + - Prefer CMOS over EFI_GET_TIME as time source. - Switched the xAPIC flat driver to use physical destination mode for external interrupts instead of logical destination mode. @@ -24,6 +25,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Support for LLC (Last Level Cache) coloring. - On x86: - xl suspend/resume subcommands. + - `wallclock` command line option to select time source. ### Removed - On x86: diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c index 00545c45fd..59129f419d 100644 --- a/xen/arch/x86/time.c +++ b/xen/arch/x86/time.c @@ -1592,16 +1592,16 @@ static void __init probe_wallclock(void) wallclock_source = WALLCLOCK_XEN; return; } - if ( efi_enabled(EFI_RS) && efi_get_time() ) - { - wallclock_source = WALLCLOCK_EFI; - return; - } if ( cmos_rtc_probe() ) { wallclock_source = WALLCLOCK_CMOS; return; } + if ( efi_enabled(EFI_RS) && efi_get_time() ) + { + wallclock_source = WALLCLOCK_EFI; + return; + } panic("No usable wallclock found, probed:%s%s%s\n%s", !opt_cmos_rtc_probe && !efi_enabled(EFI_RS) ? " None" : "",