goldfish_pipe: fix build warning about using too much stack.

The new goldfish_pipe code used too much stack space in the
transfer_max_buffers() call.  As the function is serialized with a lock,
let's make the buffer static to not use the stack for the large buffer.

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Cc: Yurii Zubrytskyi <zyy@google.com>
Cc: Jin Qian <jinqian@android.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Greg Kroah-Hartman 2017-04-26 11:43:39 +02:00
parent 726ea1a8ea
commit f563dab417

View File

@ -385,7 +385,7 @@ static int transfer_max_buffers(struct goldfish_pipe *pipe,
unsigned long last_page, unsigned int last_page_size,
s32 *consumed_size, int *status)
{
struct page *pages[MAX_BUFFERS_PER_COMMAND];
static struct page *pages[MAX_BUFFERS_PER_COMMAND];
unsigned long first_page = address & PAGE_MASK;
unsigned int iter_last_page_size;
int pages_count = pin_user_pages(first_page, last_page,
@ -409,10 +409,10 @@ static int transfer_max_buffers(struct goldfish_pipe *pipe,
*consumed_size = pipe->command_buffer->rw_params.consumed_size;
mutex_unlock(&pipe->lock);
release_user_pages(pages, pages_count, is_write, *consumed_size);
mutex_unlock(&pipe->lock);
return 0;
}