diff options
author | David Howells <dhowells@redhat.com> | 2023-05-22 13:11:11 +0100 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2023-05-23 20:48:27 -0700 |
commit | 96449f90240713bd9bd653d6b15266a1044cfa7b (patch) | |
tree | f9b649089c1dbbabb68eb687ffe61edd2b376631 /net/core | |
parent | net: Declare MSG_SPLICE_PAGES internal sendmsg() flag (diff) | |
download | wireguard-linux-96449f90240713bd9bd653d6b15266a1044cfa7b.tar.xz wireguard-linux-96449f90240713bd9bd653d6b15266a1044cfa7b.zip |
net: Pass max frags into skb_append_pagefrags()
Pass the maximum number of fragments into skb_append_pagefrags() rather
than using MAX_SKB_FRAGS so that it can be used from code that wants to
specify sysctl_max_skb_frags.
Signed-off-by: David Howells <dhowells@redhat.com>
cc: David Ahern <dsahern@kernel.org>
cc: Jens Axboe <axboe@kernel.dk>
cc: Matthew Wilcox <willy@infradead.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/core')
-rw-r--r-- | net/core/skbuff.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index 6724a84ebb09..7f53dcb26ad3 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -4188,13 +4188,13 @@ unsigned int skb_find_text(struct sk_buff *skb, unsigned int from, EXPORT_SYMBOL(skb_find_text); int skb_append_pagefrags(struct sk_buff *skb, struct page *page, - int offset, size_t size) + int offset, size_t size, size_t max_frags) { int i = skb_shinfo(skb)->nr_frags; if (skb_can_coalesce(skb, i, page, offset)) { skb_frag_size_add(&skb_shinfo(skb)->frags[i - 1], size); - } else if (i < MAX_SKB_FRAGS) { + } else if (i < max_frags) { skb_zcopy_downgrade_managed(skb); get_page(page); skb_fill_page_desc_noacc(skb, i, page, offset, size); |