Re: [RFC 7/7] net: don't check for active hrtimer after adding it

Chris Redpath
2014-07-09T10:48:22Z

On 09/07/14 11:44, Viresh Kumar wrote:
> Hi Chris,
>
> On 9 July 2014 16:02, Chris Redpath <Chris.Redpath@arm.com> wrote:
>
>>> diff --git a/net/core/pktgen.c b/net/core/pktgen.c
>>> index fc17a9d..f911acd 100644
>>> --- a/net/core/pktgen.c
>>> +++ b/net/core/pktgen.c
>>> @@ -2186,8 +2186,6 @@ static void spin(struct pktgen_dev *pkt_dev, ktime_t
>>> spin_until)
>>> do {
>>> set_current_state(TASK_INTERRUPTIBLE);
>>> hrtimer_start_expires(&t.timer, HRTIMER_MODE_ABS);
>>> - if (!hrtimer_active(&t.timer))
>>> - t.task = NULL;
>>>
>>> if (likely(t.task))
>>> schedule();
>>
>>
>> I think this if condition can also be removed. hrtimer_init_sleeper copies
>> the supplied task_struct * to the timer, which in this case is 'current'.
>> The check is likely to be there in case of !active case you removed.
>
> Yeah, it looks like we can get rid of this. Also,
>
> } while (t.task && pkt_dev->running && !signal_pending(current));
>
> is present in the closing "}" of do-while loop and probably we
> don't need to check t.task here as well.
>
> And this review comment applies to patch 2/7 as well:
> hrtimer: don't check for active hrtimer after adding it
>
> I would still wait for somebody to prove us wrong :), and will resend
> it next week only.
>
> Thanks.
>

Yeah, no worries. I just happened to read it and not knowing any of the
APIs had to look up what is going on.

BTW, I *will* get back to you about that broadcast stuff when I get back
to it myself. Other priorities at the moment again.

--Chris