diff options
Diffstat (limited to 'src/shared/acpi-fpdt.c')
-rw-r--r-- | src/shared/acpi-fpdt.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/shared/acpi-fpdt.c b/src/shared/acpi-fpdt.c index af58c7cca6..75648b4d86 100644 --- a/src/shared/acpi-fpdt.c +++ b/src/shared/acpi-fpdt.c @@ -146,6 +146,11 @@ int acpi_get_boot_usec(usec_t *loader_start, usec_t *loader_exit) { if (brec.type != ACPI_FPDT_BOOT_REC) return -EINVAL; + if (brec.startup_start == 0 || brec.exit_services_exit < brec.startup_start) + return -EINVAL; + if (brec.exit_services_exit > NSEC_PER_HOUR) + return -EINVAL; + if (loader_start) *loader_start = brec.startup_start / 1000; if (loader_exit) |