From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tushar Dave Subject: [PATCH net-next 1/5] bpf: use __GFP_COMP while allocating page Date: Tue, 11 Sep 2018 21:38:00 +0200 Message-ID: <1536694684-3200-2-git-send-email-tushar.n.dave@oracle.com> References: <1536694684-3200-1-git-send-email-tushar.n.dave@oracle.com> To: ast@kernel.org, daniel@iogearbox.net, davem@davemloft.net, santosh.shilimkar@oracle.com, jakub.kicinski@netronome.com, quentin.monnet@netronome.com, jiong.wang@netronome.com, sandipan@linux.vnet.ibm.com, john.fastabend@gmail.com, kafai@fb.com, rdna@fb.com, yhs@fb.com, netdev@vger.kernel.org, rds-devel@oss.oracle.com, sowmini.varadhan@oracle.com Return-path: Received: from aserp2120.oracle.com ([141.146.126.78]:53454 "EHLO aserp2120.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726981AbeILAkK (ORCPT ); Tue, 11 Sep 2018 20:40:10 -0400 In-Reply-To: <1536694684-3200-1-git-send-email-tushar.n.dave@oracle.com> Sender: netdev-owner@vger.kernel.org List-ID: Helper bpg_msg_pull_data() can allocate multiple pages while linearizing multiple scatterlist elements into one shared page. However, if the shared page has size > PAGE_SIZE, using copy_page_to_iter() causes below warning. e.g. [ 6367.019832] WARNING: CPU: 2 PID: 7410 at lib/iov_iter.c:825 page_copy_sane.part.8+0x0/0x8 To avoid above warning, use __GFP_COMP while allocating multiple contiguous pages. Signed-off-by: Tushar Dave --- net/core/filter.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/core/filter.c b/net/core/filter.c index d301134..0b40f95 100644 --- a/net/core/filter.c +++ b/net/core/filter.c @@ -2344,7 +2344,8 @@ struct sock *do_msg_redirect_map(struct sk_msg_buff *msg) if (unlikely(bytes_sg_total > copy)) return -EINVAL; - page = alloc_pages(__GFP_NOWARN | GFP_ATOMIC, get_order(copy)); + page = alloc_pages(__GFP_NOWARN | GFP_ATOMIC | __GFP_COMP, + get_order(copy)); if (unlikely(!page)) return -ENOMEM; p = page_address(page); -- 1.8.3.1