+
So Actually each hardware has a clock on its motherboard that keeps track of time even though computer is off.
Windows assumes the time is stored in local time, while Linux assumes the time is stored in UTC time and applies an-offset. This leads one of OS show incorrect time.
To solve this problem there are 2 options
Follow only one of instruction
timedatectl set-local-rtc 1
Go into Date and Time Settings
And turn off Set time automatically.