On Thu, 23 Oct 2014 13:45:12 +0300, Adrian Hunter wrote:
> +static void thread_stack__pop(struct thread_stack *ts, u64 ret_addr)
> +{
> +     if (!ts->cnt)
> +             return;
> +
> +     if (ts->stack[ts->cnt - 1].ret_addr == ret_addr) {
> +             ts->cnt -= 1;
> +     } else {
> +             size_t i = ts->cnt - 1;
> +
> +             while (i--) {
> +                     if (ts->stack[i].ret_addr == ret_addr) {
> +                             ts->cnt = i;
> +                             return;
> +                     }
> +             }
> +     }
> +}

Why not making it a single loop like:

        int i;

        for (i = ts->cnt - 1; i >= 0; i--) {
                if (ts->stack[i].ret_addr == ret_addr) {
                        ts->cnt = i;
                        return;
                }
        }

Thanks,
Namhyung
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to