Hi Neal, > -----Original Message----- > From: Neal Cardwell [mailto:[email protected]] > Sent: Thursday, April 6, 2017 10:01 PM > To: Gao Feng <[email protected]> > Cc: David Miller <[email protected]>; Alexey Kuznetsov > <[email protected]>; James Morris <[email protected]>; Patrick McHardy > <[email protected]>; Netdev <[email protected]>; Gao Feng > <[email protected]> > Subject: Re: [PATCH net 1/1] net: tcp: Don't increase the TCP_MIB_OUTRSTS > when fail to transmit RST > > On Thu, Apr 6, 2017 at 9:35 AM, <[email protected]> wrote: > > From: Gao Feng <[email protected]> > > > > When fail to transmit RST, don't increase TCP_MIB_OUTRSTS in func > > tcp_send_active_reset like the case that it only increases > > LINUX_MIB_TCPABORTFAILED when fail to alloc skb. > > > > Signed-off-by: Gao Feng <[email protected]> > > --- > > I would be concerned that this is a change in the semantics of > TCP_MIB_OUTRSTS that might break user-space monitoring tools that rely on > the current semantics. Counting attempted RSTs could be an important signal > to monitor, and it could be quite bad if that signal is lost or hidden > because the > machine is so overloaded that the transmission of the RSTs fails. > > Also it would seem to muddy the semantics a bit, since both > tcp_v4_send_reset() and tcp_v6_send_response() currently increment > TCP_MIB_OUTRSTS without regard to whether the transmit actually succeeded > or not. > > neal If so, we should increase the TCP_MIB_OUTRSTS too when fail to alloc skb. When machine is overloaded and mem is exhausted, it may fail to alloc skb.
Regards Feng
