Re: [PATCH 8/8] rtc: remove struct rtc_task

From: Arnd Bergmann
Date: Mon Aug 06 2018 - 05:06:26 EST


On Thu, Jul 26, 2018 at 3:42 PM Alexandre Belloni
<alexandre.belloni@xxxxxxxxxxx> wrote:
>
> Include rtc_task members directly in rtc_timer member.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>
> ---
> drivers/rtc/interface.c | 8 ++++----
> include/linux/rtc.h | 9 ++-------
> 2 files changed, 6 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/rtc/interface.c b/drivers/rtc/interface.c
> index d0983ed6c842..a962540faf2e 100644
> --- a/drivers/rtc/interface.c
> +++ b/drivers/rtc/interface.c
> @@ -912,8 +912,8 @@ void rtc_timer_do_work(struct work_struct *work)
> timerqueue_del(&rtc->timerqueue, &timer->node);
> trace_rtc_timer_dequeue(timer);
> timer->enabled = 0;
> - if (timer->task.func)
> - timer->task.func(timer->task.private_data);
> + if (timer->func)
> + timer->func(timer->private_data);
>
> trace_rtc_timer_fired(timer);
> /* Re-add/fwd periodic timers */
> @@ -968,8 +968,8 @@ void rtc_timer_init(struct rtc_timer *timer, void (*f)(void *p), void *data)
> {
> timerqueue_init(&timer->node);
> timer->enabled = 0;
> - timer->task.func = f;
> - timer->task.private_data = data;
> + timer->func = f;
> + timer->private_data = data;
> }

>From what I can see, all remaining users pass the rtc_device pointer as
'private_data', so maybe make that explicit now instead of the void pointer?

Arnd