Only attempt to restore from saved state if it exists.
Without this, oxenstored immediately exits with an exception if the
--restart option is provided but the state file is not present.
(The time-of-check to time-of-use race isn't a concern as oxenstored is
the only thing that should write the state file.)
Signed-off-by: Jonathan Davies <jonathan.davies@citrix.com>
Reviewed-by: Wei Liu <wei.liu2@citrix.com>
Reviewed-by: Christian Lindig <christian.lindig@citrix.com>
Release-acked-by: Julien Grall <julien.grall@arm.com>
Logging.init_xenstored_log();
- if cf.restart then (
- DB.from_file store domains cons (Paths.xen_run_stored ^ "/db");
+ let filename = Paths.xen_run_stored ^ "/db" in
+ if cf.restart && Sys.file_exists filename then (
+ DB.from_file store domains cons filename;
Event.bind_dom_exc_virq eventchn
) else (
if !Disk.enable then (