On Wed, Jun 10, 2020 at 2:43 PM Davide Caratti <dcara...@redhat.com> wrote:
> +static void gate_setup_timer(struct tcf_gate *gact, u64 basetime,
> +                            enum tk_offsets tko, s32 clockid,
> +                            bool do_init)
> +{
> +       bool timer_change = basetime != gact->param.tcfg_basetime ||
> +                           tko != gact->tk_offset ||
> +                           clockid != gact->param.tcfg_clockid;
> +
> +       if (!do_init) {
> +               if (timer_change) {
> +                       spin_unlock_bh(&gact->tcf_lock);
> +                       hrtimer_cancel(&gact->hitimer);
> +                       spin_lock_bh(&gact->tcf_lock);
> +                       goto init_hitimer;
> +               }
> +               return;
> +       }
> +
> +init_hitimer:
> +       gact->param.tcfg_basetime = basetime;
> +       gact->param.tcfg_clockid = clockid;
> +       gact->tk_offset = tko;
> +       hrtimer_init(&gact->hitimer, clockid, HRTIMER_MODE_ABS_SOFT);
> +       gact->hitimer.function = gate_timer_func;
> +}

This function would be more readable if you rewrite it like this:

if (!do_init && !timer_change)
  return;
if (timer_change) {
...
}
...

The rest looks good to me.

Thanks.

Reply via email to