[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201805230804.KP8LODgK%fengguang.wu@intel.com>
Date: Wed, 23 May 2018 08:30:33 +0800
From: kbuild test robot <lkp@...el.com>
To: Eric Dumazet <edumazet@...gle.com>
Cc: kbuild-all@...org, "David S . Miller" <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>, Van Jacobson <vanj@...gle.com>,
Neal Cardwell <ncardwell@...gle.com>,
Yuchung Cheng <ycheng@...gle.com>,
Soheil Hassas Yeganeh <soheil@...gle.com>,
Eric Dumazet <edumazet@...gle.com>,
Eric Dumazet <eric.dumazet@...il.com>
Subject: Re: [PATCH net-next 1/2] tcp: add max_quickacks param to
tcp_incr_quickack and tcp_enter_quickack_mode
Hi Eric,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on net/master]
[also build test ERROR on v4.17-rc6 next-20180517]
[cannot apply to net-next/master]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Eric-Dumazet/tcp-add-max_quickacks-param-to-tcp_incr_quickack-and-tcp_enter_quickack_mode/20180523-075103
config: i386-randconfig-x012-201820 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-16) 7.3.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
net//ipv4/tcp_input.c: In function 'tcp_data_queue':
>> net//ipv4/tcp_input.c:4656:2: error: too few arguments to function 'tcp_enter_quickack_mode'
tcp_enter_quickack_mode(sk);
^~~~~~~~~~~~~~~~~~~~~~~
net//ipv4/tcp_input.c:199:13: note: declared here
static void tcp_enter_quickack_mode(struct sock *sk, unsigned int max_quickacks)
^~~~~~~~~~~~~~~~~~~~~~~
vim +/tcp_enter_quickack_mode +4656 net//ipv4/tcp_input.c
292e8d8c8 Pavel Emelyanov 2012-05-10 4577
^1da177e4 Linus Torvalds 2005-04-16 4578 static void tcp_data_queue(struct sock *sk, struct sk_buff *skb)
^1da177e4 Linus Torvalds 2005-04-16 4579 {
^1da177e4 Linus Torvalds 2005-04-16 4580 struct tcp_sock *tp = tcp_sk(sk);
5357f0bd4 Eric Dumazet 2017-08-01 4581 bool fragstolen;
5357f0bd4 Eric Dumazet 2017-08-01 4582 int eaten;
^1da177e4 Linus Torvalds 2005-04-16 4583
532182cd6 Eric Dumazet 2016-04-01 4584 if (TCP_SKB_CB(skb)->seq == TCP_SKB_CB(skb)->end_seq) {
532182cd6 Eric Dumazet 2016-04-01 4585 __kfree_skb(skb);
532182cd6 Eric Dumazet 2016-04-01 4586 return;
532182cd6 Eric Dumazet 2016-04-01 4587 }
f84af32cb Eric Dumazet 2010-04-28 4588 skb_dst_drop(skb);
155c6e1ad Peter Pan(潘卫平 2014-09-24 4589) __skb_pull(skb, tcp_hdr(skb)->doff * 4);
^1da177e4 Linus Torvalds 2005-04-16 4590
735d38311 Florian Westphal 2014-09-29 4591 tcp_ecn_accept_cwr(tp, skb);
^1da177e4 Linus Torvalds 2005-04-16 4592
^1da177e4 Linus Torvalds 2005-04-16 4593 tp->rx_opt.dsack = 0;
^1da177e4 Linus Torvalds 2005-04-16 4594
^1da177e4 Linus Torvalds 2005-04-16 4595 /* Queue data for delivery to the user.
^1da177e4 Linus Torvalds 2005-04-16 4596 * Packets in sequence go to the receive queue.
^1da177e4 Linus Torvalds 2005-04-16 4597 * Out of sequence packets to the out_of_order_queue.
^1da177e4 Linus Torvalds 2005-04-16 4598 */
^1da177e4 Linus Torvalds 2005-04-16 4599 if (TCP_SKB_CB(skb)->seq == tp->rcv_nxt) {
^1da177e4 Linus Torvalds 2005-04-16 4600 if (tcp_receive_window(tp) == 0)
^1da177e4 Linus Torvalds 2005-04-16 4601 goto out_of_window;
^1da177e4 Linus Torvalds 2005-04-16 4602
^1da177e4 Linus Torvalds 2005-04-16 4603 /* Ok. In sequence. In window. */
^1da177e4 Linus Torvalds 2005-04-16 4604 queue_and_out:
76dfa6082 Eric Dumazet 2015-05-15 4605 if (skb_queue_len(&sk->sk_receive_queue) == 0)
76dfa6082 Eric Dumazet 2015-05-15 4606 sk_forced_mem_schedule(sk, skb->truesize);
76dfa6082 Eric Dumazet 2015-05-15 4607 else if (tcp_try_rmem_schedule(sk, skb, skb->truesize))
^1da177e4 Linus Torvalds 2005-04-16 4608 goto drop;
5357f0bd4 Eric Dumazet 2017-08-01 4609
b081f85c2 Eric Dumazet 2012-05-02 4610 eaten = tcp_queue_rcv(sk, skb, 0, &fragstolen);
bdd1f9eda Eric Dumazet 2015-04-28 4611 tcp_rcv_nxt_update(tp, TCP_SKB_CB(skb)->end_seq);
^1da177e4 Linus Torvalds 2005-04-16 4612 if (skb->len)
9e412ba76 Ilpo Järvinen 2007-04-20 4613 tcp_event_data_recv(sk, skb);
155c6e1ad Peter Pan(潘卫平 2014-09-24 4614) if (TCP_SKB_CB(skb)->tcp_flags & TCPHDR_FIN)
20c4cb792 Eric Dumazet 2011-10-20 4615 tcp_fin(sk);
^1da177e4 Linus Torvalds 2005-04-16 4616
9f5afeae5 Yaogong Wang 2016-09-07 4617 if (!RB_EMPTY_ROOT(&tp->out_of_order_queue)) {
^1da177e4 Linus Torvalds 2005-04-16 4618 tcp_ofo_queue(sk);
^1da177e4 Linus Torvalds 2005-04-16 4619
^1da177e4 Linus Torvalds 2005-04-16 4620 /* RFC2581. 4.2. SHOULD send immediate ACK, when
^1da177e4 Linus Torvalds 2005-04-16 4621 * gap in queue is filled.
^1da177e4 Linus Torvalds 2005-04-16 4622 */
9f5afeae5 Yaogong Wang 2016-09-07 4623 if (RB_EMPTY_ROOT(&tp->out_of_order_queue))
463c84b97 Arnaldo Carvalho de Melo 2005-08-09 4624 inet_csk(sk)->icsk_ack.pingpong = 0;
^1da177e4 Linus Torvalds 2005-04-16 4625 }
^1da177e4 Linus Torvalds 2005-04-16 4626
^1da177e4 Linus Torvalds 2005-04-16 4627 if (tp->rx_opt.num_sacks)
^1da177e4 Linus Torvalds 2005-04-16 4628 tcp_sack_remove(tp);
^1da177e4 Linus Torvalds 2005-04-16 4629
31770e34e Florian Westphal 2017-08-30 4630 tcp_fast_path_check(sk);
31770e34e Florian Westphal 2017-08-30 4631
923dd347b Eric Dumazet 2012-05-02 4632 if (eaten > 0)
923dd347b Eric Dumazet 2012-05-02 4633 kfree_skb_partial(skb, fragstolen);
1d57f1953 Eric Dumazet 2012-09-17 4634 if (!sock_flag(sk, SOCK_DEAD))
676d23690 David S. Miller 2014-04-11 4635 sk->sk_data_ready(sk);
^1da177e4 Linus Torvalds 2005-04-16 4636 return;
^1da177e4 Linus Torvalds 2005-04-16 4637 }
^1da177e4 Linus Torvalds 2005-04-16 4638
^1da177e4 Linus Torvalds 2005-04-16 4639 if (!after(TCP_SKB_CB(skb)->end_seq, tp->rcv_nxt)) {
^1da177e4 Linus Torvalds 2005-04-16 4640 /* A retransmit, 2nd most common case. Force an immediate ack. */
c10d9310e Eric Dumazet 2016-04-29 4641 NET_INC_STATS(sock_net(sk), LINUX_MIB_DELAYEDACKLOST);
1ed834655 Pavel Emelyanov 2008-07-16 4642 tcp_dsack_set(sk, TCP_SKB_CB(skb)->seq, TCP_SKB_CB(skb)->end_seq);
^1da177e4 Linus Torvalds 2005-04-16 4643
^1da177e4 Linus Torvalds 2005-04-16 4644 out_of_window:
265e9de2c Eric Dumazet 2018-05-21 4645 tcp_enter_quickack_mode(sk, TCP_MAX_QUICKACKS);
463c84b97 Arnaldo Carvalho de Melo 2005-08-09 4646 inet_csk_schedule_ack(sk);
^1da177e4 Linus Torvalds 2005-04-16 4647 drop:
532182cd6 Eric Dumazet 2016-04-01 4648 tcp_drop(sk, skb);
^1da177e4 Linus Torvalds 2005-04-16 4649 return;
^1da177e4 Linus Torvalds 2005-04-16 4650 }
^1da177e4 Linus Torvalds 2005-04-16 4651
^1da177e4 Linus Torvalds 2005-04-16 4652 /* Out of window. F.e. zero window probe. */
^1da177e4 Linus Torvalds 2005-04-16 4653 if (!before(TCP_SKB_CB(skb)->seq, tp->rcv_nxt + tcp_receive_window(tp)))
^1da177e4 Linus Torvalds 2005-04-16 4654 goto out_of_window;
^1da177e4 Linus Torvalds 2005-04-16 4655
463c84b97 Arnaldo Carvalho de Melo 2005-08-09 @4656 tcp_enter_quickack_mode(sk);
^1da177e4 Linus Torvalds 2005-04-16 4657
^1da177e4 Linus Torvalds 2005-04-16 4658 if (before(TCP_SKB_CB(skb)->seq, tp->rcv_nxt)) {
^1da177e4 Linus Torvalds 2005-04-16 4659 /* Partial packet, seq < rcv_next < end_seq */
^1da177e4 Linus Torvalds 2005-04-16 4660 SOCK_DEBUG(sk, "partial packet: rcv_next %X seq %X - %X\n",
^1da177e4 Linus Torvalds 2005-04-16 4661 tp->rcv_nxt, TCP_SKB_CB(skb)->seq,
^1da177e4 Linus Torvalds 2005-04-16 4662 TCP_SKB_CB(skb)->end_seq);
^1da177e4 Linus Torvalds 2005-04-16 4663
1ed834655 Pavel Emelyanov 2008-07-16 4664 tcp_dsack_set(sk, TCP_SKB_CB(skb)->seq, tp->rcv_nxt);
^1da177e4 Linus Torvalds 2005-04-16 4665
^1da177e4 Linus Torvalds 2005-04-16 4666 /* If window is closed, drop tail of packet. But after
^1da177e4 Linus Torvalds 2005-04-16 4667 * remembering D-SACK for its head made in previous line.
^1da177e4 Linus Torvalds 2005-04-16 4668 */
^1da177e4 Linus Torvalds 2005-04-16 4669 if (!tcp_receive_window(tp))
^1da177e4 Linus Torvalds 2005-04-16 4670 goto out_of_window;
^1da177e4 Linus Torvalds 2005-04-16 4671 goto queue_and_out;
^1da177e4 Linus Torvalds 2005-04-16 4672 }
^1da177e4 Linus Torvalds 2005-04-16 4673
e86b29196 Eric Dumazet 2012-03-18 4674 tcp_data_queue_ofo(sk, skb);
^1da177e4 Linus Torvalds 2005-04-16 4675 }
^1da177e4 Linus Torvalds 2005-04-16 4676
:::::: The code at line 4656 was first introduced by commit
:::::: 463c84b97f24010a67cd871746d6a7e4c925a5f9 [NET]: Introduce inet_connection_sock
:::::: TO: Arnaldo Carvalho de Melo <acme@...stprotocols.net>
:::::: CC: David S. Miller <davem@...set.davemloft.net>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (33476 bytes)
Powered by blists - more mailing lists