W dniu 7.12.2022 o 07:51, Chen, Kane pisze: >> -----Original Message----- >> From: Sasha Levin <sashal@xxxxxxxxxx> >> Sent: Wednesday, December 7, 2022 1:13 PM >> To: Chen, Kane <kane.chen@xxxxxxxxx> >> Cc: stable@xxxxxxxxxxxxxxx >> Subject: Re: [PATCH v1] rtc: cmos: avoid UIP when writing/reading alarm time >> >> On Wed, Dec 07, 2022 at 11:57:22AM +0800, Kane Chen wrote: >>> While runnings s0ix cycling test based on rtc alarm wakeup on ADL-P >>> devices, We found the data from CMOS_READ is not reasonable and causes >> RTC wake up fail. >>> With the below changes, we don't see unreasonable data from cmos and >> issue is gone. >> >> Thanks for the analysis, I can queue most of these up. There are two which >> won't go in: >> >>> cd17420: rtc: cmos: avoid UIP when writing alarm time >>> cdedc45: rtc: cmos: avoid UIP when reading alarm time >>> ec5895c: rtc: mc146818-lib: extract mc146818_avoid_UIP >>> ea6fa49: rtc: mc146818-lib: fix RTC presence check >>> 13be2ef: rtc: cmos: Disable irq around direct invocation of >>> cmos_interrupt() >>> 0dd8d6c: rtc: Check return value from mc146818_get_time() >>> e1aba37: rtc: cmos: remove stale REVISIT comments >>> 6950d04: rtc: cmos: Replace spin_lock_irqsave with spin_lock in hard >>> IRQ >> This one fixes a commit which isn't in the 5.10 tree. >> >>> d35786b: rtc: mc146818-lib: change return values of mc146818_get_time() >>> ebb22a0: rtc: mc146818: Dont test for bit 0-5 in Register D >>> 211e5db: rtc: mc146818: Detect and handle broken RTCs >>> dcf257e: rtc: mc146818: Reduce spinlock section in mc146818_set_time() >> This one looks like an optimization. >> >> -- > I'm sorry, > I thought dcf257e and 6950d04, 13be2ef are also required to avoid cherry-pick conflict > After checking again, dcf257e, 6950d04, 13be2ef are not needed. > > Here is the list I would like to pick > cd17420: rtc: cmos: avoid UIP when writing alarm time > cdedc45: rtc: cmos: avoid UIP when reading alarm time > ec5895c: rtc: mc146818-lib: extract mc146818_avoid_UIP > ea6fa49: rtc: mc146818-lib: fix RTC presence check > 0dd8d6c: rtc: Check return value from mc146818_get_time() > e1aba37: rtc: cmos: remove stale REVISIT comments > d35786b: rtc: mc146818-lib: change return values of mc146818_get_time() > ebb22a0: rtc: mc146818: Dont test for bit 0-5 in Register D > 211e5db: rtc: mc146818: Detect and handle broken RTCs > 05a0302: rtc: mc146818: Prevent reading garbage > > Thanks a lot > >> Thanks, >> Sasha >> Hello, I think that you should also pick these patches which fix issues in the series that is prepared for 5.4: 1) commit 7372971c1be5 ("rtc: mc146818-lib: fix signedness bug in mc146818_get_time()") which fixes d35786b: rtc: mc146818-lib: change return values of mc146818_get_time() 2) commit 13be2efc390a ("rtc: cmos: Disable irq around direct invocation of cmos_interrupt()") which fixes 6950d04: rtc: cmos: Replace spin_lock_irqsave with spin_lock in hard IRQ and is not prepared for 5.4 stable even though it was mentioned above. 3) commit 811f5559270f ("rtc: mc146818-lib: fix locking in mc146818_set_time") which fixes dcf257e: rtc: mc146818: Reduce spinlock section in mc146818_set_time() When it comes to these two patches: cd17420: rtc: cmos: avoid UIP when writing alarm time cdedc45: rtc: cmos: avoid UIP when reading alarm time I used to think that the issues they fix were very unlikely to happen in practice, so I did not submit them into stable. So thanks for proving me wrong. Greetings, Mateusz