Re: [PATCH v2 2/3] rtc: Add Realtek RTD1295

From: Alexandre Belloni
Date: Sun Aug 27 2017 - 04:27:23 EST


On 27/08/2017 at 04:30:08 +0200, Andreas Färber wrote:
> Am 27.08.2017 um 04:05 schrieb Andrew Lunn:
> > n Sun, Aug 27, 2017 at 02:33:27AM +0200, Andreas Färber wrote:
> >> +struct rtd119x_rtc {
> >> + void __iomem *base;
> >> + struct clk *clk;
> >> + struct rtc_device *rtcdev;
> >> + unsigned base_year;
> >> + spinlock_t lock;
> >
> > Where is this lock initialised? I would expect a call to
> > spin_lock_init() somewhere.
>
> Hm, the spinlock in my irq mux series doesn't have that call either; my
> reset driver did have it. The zero initialization appears to work OK,
> but you're probably right that it should be there.
>
> > I also wonder what this lock is protecting, which rtc->ops_lock does
> > not protect?
>
> By that same argument we could ask why so many drivers (and mine, too)
> are calling rtc_valid_tm() when __rtc_read_time() calls it again...
>

Most of them probably predates the introduction of the check in
__rtc_read_time().


--
Alexandre Belloni, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com