On Fri, 14 Nov 2014 23:59:06 -0500
  
>       /*
> @@ -4575,20 +4575,33 @@ static size_t
>  tracing_fill_pipe_page(size_t rem, struct trace_iterator *iter)
>  {
>       size_t count;
> +     int save_len;
>       int ret;
>  
>       /* Seq buffer is page-sized, exactly what we need. */
>       for (;;) {
> -             count = iter->seq.seq.len;
> +             save_len = iter->seq.seq.len;
>               ret = print_trace_line(iter);
> -             count = iter->seq.seq.len - count;
> -             if (rem < count) {
> -                     rem = 0;
> -                     iter->seq.seq.len -= count;
> +
> +             if (trace_seq_has_overflowed(&iter->seq)) {
> +                     iter->seq.seq.len = save_len;
>                       break;
>               }
> +
> +             /*
> +              * This should not be hit, because it should only
> +              * be set if the iter->seq overflowed. But check it
> +              * anyway to be safe.
> +              */
>               if (ret == TRACE_TYPE_PARTIAL_LINE) {
> -                     iter->seq.seq.len -= count;
> +                     iter->seq.seq.len = save_len;
> +                     break;
> +             }
> +
> +             count = trace_seq_used(&iter->seq) - save_len;
> +             if (rem < count) {
> +                     rem = 0;
> +                     iter->seq.seq.len = save_len;;
>                       break;
>               }
>  

I don't like the fact that I did a code structure change with this
patch. This patch should be just a simple conversion of len to
seq_buf_used(). I'm going to strip this change out and put it before
this patch.

-- Steve

--
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