qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH 4/6] ftrace: Allow stealing pages from pipe


From: Steven Rostedt
Subject: Re: [Qemu-devel] [RFC PATCH 4/6] ftrace: Allow stealing pages from pipe buffer
Date: Mon, 30 Jul 2012 18:12:21 -0400

On Tue, 2012-07-24 at 11:37 +0900, Yoshihiro YUNOMAE wrote:
> From: Masami Hiramatsu <address@hidden>
> 
> Use generic steal operation on pipe buffer to allow stealing
> ring buffer's read page from pipe buffer.
> 
> Note that this could reduce the performance of splice on the
> splice_write side operation without affinity setting.
> Since the ring buffer's read pages are allocated on the
> tracing-node, but the splice user does not always execute
> splice write side operation on the same node. In this case,
> the page will be accessed from the another node.
> Thus, it is strongly recommended to assign the splicing
> thread to corresponding node.
> 
> Signed-off-by: Masami Hiramatsu <address@hidden>

Acked-by: Steven Rostedt <address@hidden>

-- Steve


> Cc: Frederic Weisbecker <address@hidden>
> Cc: Ingo Molnar <address@hidden>
> ---
> 
>  kernel/trace/trace.c |    8 +-------
>  1 files changed, 1 insertions(+), 7 deletions(-)
> 
> diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
> index a120f98..ae01930 100644
> --- a/kernel/trace/trace.c
> +++ b/kernel/trace/trace.c
> @@ -4194,12 +4194,6 @@ static void buffer_pipe_buf_release(struct 
> pipe_inode_info *pipe,
>       buf->private = 0;
>  }
>  
> -static int buffer_pipe_buf_steal(struct pipe_inode_info *pipe,
> -                              struct pipe_buffer *buf)
> -{
> -     return 1;
> -}
> -
>  static void buffer_pipe_buf_get(struct pipe_inode_info *pipe,
>                               struct pipe_buffer *buf)
>  {
> @@ -4215,7 +4209,7 @@ static const struct pipe_buf_operations 
> buffer_pipe_buf_ops = {
>       .unmap                  = generic_pipe_buf_unmap,
>       .confirm                = generic_pipe_buf_confirm,
>       .release                = buffer_pipe_buf_release,
> -     .steal                  = buffer_pipe_buf_steal,
> +     .steal                  = generic_pipe_buf_steal,
>       .get                    = buffer_pipe_buf_get,
>  };
>  
> 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]