Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'net-remove-unused-function-parameters-in-skbuff-c'

Michal Luczaj says:

====================
net: Remove unused function parameters in skbuff.c

Couple of cleanup patches to get rid of unused function parameters around
skbuff.c, plus little things spotted along the way.

Offshoot of my question in [1], but way more contained. Found by adding
"-Wunused-parameter -Wno-error" to KBUILD_CFLAGS and grepping for specific
skbuff.c warnings.

[1]: https://lore.kernel.org/netdev/972af569-0c90-4585-9e1f-f2266dab6ec6@rbox.co/

v2: https://lore.kernel.org/20250626-splice-drop-unused-v2-0-3268fac1af89@rbox.co
v1: https://lore.kernel.org/20250624-splice-drop-unused-v1-0-cf641a676d04@rbox.co
====================

Link: https://patch.msgid.link/20250702-splice-drop-unused-v3-0-55f68b60d2b7@rbox.co
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

+20 -33
+1 -2
drivers/net/ethernet/chelsio/inline_crypto/chtls/chtls_io.c
··· 1096 1096 copy = size; 1097 1097 1098 1098 if (msg->msg_flags & MSG_SPLICE_PAGES) { 1099 - err = skb_splice_from_iter(skb, &msg->msg_iter, copy, 1100 - sk->sk_allocation); 1099 + err = skb_splice_from_iter(skb, &msg->msg_iter, copy); 1101 1100 if (err < 0) { 1102 1101 if (err == -EMSGSIZE) 1103 1102 goto new_buf;
+1 -1
include/linux/skbuff.h
··· 5265 5265 } 5266 5266 5267 5267 ssize_t skb_splice_from_iter(struct sk_buff *skb, struct iov_iter *iter, 5268 - ssize_t maxsize, gfp_t gfp); 5268 + ssize_t maxsize); 5269 5269 5270 5270 #endif /* __KERNEL__ */ 5271 5271 #endif /* _LINUX_SKBUFF_H */
+13 -20
net/core/skbuff.c
··· 384 384 skb_set_kcov_handle(skb, kcov_common_handle()); 385 385 } 386 386 387 - static inline void *__slab_build_skb(struct sk_buff *skb, void *data, 388 - unsigned int *size) 387 + static inline void *__slab_build_skb(void *data, unsigned int *size) 389 388 { 390 389 void *resized; 391 390 ··· 417 418 return NULL; 418 419 419 420 memset(skb, 0, offsetof(struct sk_buff, tail)); 420 - data = __slab_build_skb(skb, data, &size); 421 + data = __slab_build_skb(data, &size); 421 422 __finalize_skb_around(skb, data, size); 422 423 423 424 return skb; ··· 434 435 * using slab buffer should use slab_build_skb() instead. 435 436 */ 436 437 if (WARN_ONCE(size == 0, "Use slab_build_skb() instead")) 437 - data = __slab_build_skb(skb, data, &size); 438 + data = __slab_build_skb(data, &size); 438 439 439 440 __finalize_skb_around(skb, data, size); 440 441 } ··· 3059 3060 /* 3060 3061 * Fill page/offset/length into spd, if it can hold more pages. 3061 3062 */ 3062 - static bool spd_fill_page(struct splice_pipe_desc *spd, 3063 - struct pipe_inode_info *pipe, struct page *page, 3064 - unsigned int *len, unsigned int offset, 3065 - bool linear, 3063 + static bool spd_fill_page(struct splice_pipe_desc *spd, struct page *page, 3064 + unsigned int *len, unsigned int offset, bool linear, 3066 3065 struct sock *sk) 3067 3066 { 3068 3067 if (unlikely(spd->nr_pages == MAX_SKB_FRAGS)) ··· 3088 3091 unsigned int plen, unsigned int *off, 3089 3092 unsigned int *len, 3090 3093 struct splice_pipe_desc *spd, bool linear, 3091 - struct sock *sk, 3092 - struct pipe_inode_info *pipe) 3094 + struct sock *sk) 3093 3095 { 3094 3096 if (!*len) 3095 3097 return true; ··· 3107 3111 do { 3108 3112 unsigned int flen = min(*len, plen); 3109 3113 3110 - if (spd_fill_page(spd, pipe, page, &flen, poff, 3111 - linear, sk)) 3114 + if (spd_fill_page(spd, page, &flen, poff, linear, sk)) 3112 3115 return true; 3113 3116 poff += flen; 3114 3117 plen -= flen; ··· 3125 3130 unsigned int *offset, unsigned int *len, 3126 3131 struct splice_pipe_desc *spd, struct sock *sk) 3127 3132 { 3128 - int seg; 3129 3133 struct sk_buff *iter; 3134 + int seg; 3130 3135 3131 3136 /* map the linear part : 3132 3137 * If skb->head_frag is set, this 'linear' part is backed by a ··· 3138 3143 skb_headlen(skb), 3139 3144 offset, len, spd, 3140 3145 skb_head_is_locked(skb), 3141 - sk, pipe)) 3146 + sk)) 3142 3147 return true; 3143 3148 3144 3149 /* ··· 3155 3160 3156 3161 if (__splice_segment(skb_frag_page(f), 3157 3162 skb_frag_off(f), skb_frag_size(f), 3158 - offset, len, spd, false, sk, pipe)) 3163 + offset, len, spd, false, sk)) 3159 3164 return true; 3160 3165 } 3161 3166 ··· 6758 6763 /* carve out the first eat bytes from skb's frag_list. May recurse into 6759 6764 * pskb_carve() 6760 6765 */ 6761 - static int pskb_carve_frag_list(struct sk_buff *skb, 6762 - struct skb_shared_info *shinfo, int eat, 6766 + static int pskb_carve_frag_list(struct skb_shared_info *shinfo, int eat, 6763 6767 gfp_t gfp_mask) 6764 6768 { 6765 6769 struct sk_buff *list = shinfo->frag_list; ··· 6863 6869 skb_clone_fraglist(skb); 6864 6870 6865 6871 /* split line is in frag list */ 6866 - if (k == 0 && pskb_carve_frag_list(skb, shinfo, off - pos, gfp_mask)) { 6872 + if (k == 0 && pskb_carve_frag_list(shinfo, off - pos, gfp_mask)) { 6867 6873 /* skb_frag_unref() is not needed here as shinfo->nr_frags = 0. */ 6868 6874 if (skb_has_frag_list(skb)) 6869 6875 kfree_skb_list(skb_shinfo(skb)->frag_list); ··· 7228 7234 * @skb: The buffer to add pages to 7229 7235 * @iter: Iterator representing the pages to be added 7230 7236 * @maxsize: Maximum amount of pages to be added 7231 - * @gfp: Allocation flags 7232 7237 * 7233 7238 * This is a common helper function for supporting MSG_SPLICE_PAGES. It 7234 7239 * extracts pages from an iterator and adds them to the socket buffer if ··· 7238 7245 * insufficient space in the buffer to transfer anything. 7239 7246 */ 7240 7247 ssize_t skb_splice_from_iter(struct sk_buff *skb, struct iov_iter *iter, 7241 - ssize_t maxsize, gfp_t gfp) 7248 + ssize_t maxsize) 7242 7249 { 7243 7250 size_t frag_limit = READ_ONCE(net_hotdata.sysctl_max_skb_frags); 7244 7251 struct page *pages[8], **ppages = pages;
+1 -2
net/ipv4/ip_output.c
··· 1222 1222 if (WARN_ON_ONCE(copy > msg->msg_iter.count)) 1223 1223 goto error; 1224 1224 1225 - err = skb_splice_from_iter(skb, &msg->msg_iter, copy, 1226 - sk->sk_allocation); 1225 + err = skb_splice_from_iter(skb, &msg->msg_iter, copy); 1227 1226 if (err < 0) 1228 1227 goto error; 1229 1228 copy = err;
+1 -2
net/ipv4/tcp.c
··· 1295 1295 if (!copy) 1296 1296 goto wait_for_space; 1297 1297 1298 - err = skb_splice_from_iter(skb, &msg->msg_iter, copy, 1299 - sk->sk_allocation); 1298 + err = skb_splice_from_iter(skb, &msg->msg_iter, copy); 1300 1299 if (err < 0) { 1301 1300 if (err == -EMSGSIZE) { 1302 1301 tcp_mark_push(tp, skb);
+1 -2
net/ipv6/ip6_output.c
··· 1762 1762 if (WARN_ON_ONCE(copy > msg->msg_iter.count)) 1763 1763 goto error; 1764 1764 1765 - err = skb_splice_from_iter(skb, &msg->msg_iter, copy, 1766 - sk->sk_allocation); 1765 + err = skb_splice_from_iter(skb, &msg->msg_iter, copy); 1767 1766 if (err < 0) 1768 1767 goto error; 1769 1768 copy = err;
+1 -2
net/kcm/kcmsock.c
··· 835 835 if (!sk_wmem_schedule(sk, copy)) 836 836 goto wait_for_memory; 837 837 838 - err = skb_splice_from_iter(skb, &msg->msg_iter, copy, 839 - sk->sk_allocation); 838 + err = skb_splice_from_iter(skb, &msg->msg_iter, copy); 840 839 if (err < 0) { 841 840 if (err == -EMSGSIZE) 842 841 goto wait_for_memory;
+1 -2
net/unix/af_unix.c
··· 2388 2388 2389 2389 if (unlikely(msg->msg_flags & MSG_SPLICE_PAGES)) { 2390 2390 skb->ip_summed = CHECKSUM_UNNECESSARY; 2391 - err = skb_splice_from_iter(skb, &msg->msg_iter, size, 2392 - sk->sk_allocation); 2391 + err = skb_splice_from_iter(skb, &msg->msg_iter, size); 2393 2392 if (err < 0) 2394 2393 goto out_free; 2395 2394