Opened 4 years ago

Closed 2 years ago

#11873 closed bug (no change required)

"Time running" doesn't reset over restart under virtualbox.

Reported by: jstressman Owned by: nobody
Priority: normal Milestone: R1
Component: System/Kernel Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

"Time running" (in "About Haiku") doesn't reset over "restart" under virtualbox, but it does reset if you shutdown and then start up again.

Tested in hrev48828 and alpha4.1.

I'd test in alpha3, but it locks up part way through booting.

Change History (4)

comment:1 Changed 4 years ago by modeenf

Working on Vmware but then restart in wmvare does a powerof and start.

comment:2 Changed 2 years ago by diver

Component: - GeneralSystem/Kernel

Probably kernel should somehow detect it and reset uptime?

comment:3 Changed 2 years ago by axeld

This is just a bug in VirtualBox; Haiku uses the rdtsc instruction to compute the system time on x86. According to the official Intel documentation, this counter should be reset when the CPU is reset (chapter 17.15 in Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 3 from September 2016):

"The time-stamp counter (as implemented in the P6 family, Pentium, Pentium M, Pentium 4, Intel Xeon, Intel Core Solo and Intel Core Duo processors and later processors) is a 64-bit counter that is set to 0 following a RESET of the processor."

While we could work around it by means of resetting the TSC manually, I don't think it's worth it. I'll report the bug to the VirtualBox project.

comment:4 Changed 2 years ago by axeld

Resolution: no change required
Status: newclosed

Tracked as ticket #16643 in the VirtualBox bug tracker.

Note: See TracTickets for help on using tickets.