Messages in this thread | | | From | Daniel Palmer <> | Date | Wed, 29 Sep 2021 21:56:36 +0900 | Subject | Re: [PATCH][next] rtc: msc313: Fix unintentional sign extension issue on left shift of a u16 |
| |
Hi Romain,
On Tue, 28 Sept 2021 at 22:55, Romain Perier <romain.perier@gmail.com> wrote: > > Hi, > > Le mar. 28 sept. 2021 à 15:31, Daniel Palmer <daniel@0x0f.com> a écrit : > The crazy stuff being, I ran rtctest from selftests and rtc-range (1) > that tests a variety > of dates including 2038 and 2106 for example. Both tests passed :) (probably > because *this case* specifically did not happen while running the test)
I suspect it works because for reading the time because seconds is a u32 not unsigned long like the other functions. So if the high word of the register is read, is promoted to a wider type and sign extended it doesn't actually matter because it gets truncated to 32 bits so the sign extended part is gone.
Cheers,
Daniel
| |