From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Miller Subject: Re: [Patch net] net: drop skb on failure in ip_check_defrag() Date: Thu, 01 Nov 2018 13:56:13 -0700 (PDT) Message-ID: <20181101.135613.701401963609601871.davem@davemloft.net> References: <20181101190237.10830-1-xiyou.wangcong@gmail.com> Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: netdev@vger.kernel.org, edumazet@google.com To: xiyou.wangcong@gmail.com Return-path: Received: from shards.monkeyblade.net ([23.128.96.9]:46608 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726070AbeKBGBB (ORCPT ); Fri, 2 Nov 2018 02:01:01 -0400 In-Reply-To: <20181101190237.10830-1-xiyou.wangcong@gmail.com> Sender: netdev-owner@vger.kernel.org List-ID: From: Cong Wang Date: Thu, 1 Nov 2018 12:02:37 -0700 > Most callers of pskb_trim_rcsum() simply drop the skb when > it fails, however, ip_check_defrag() still continues to pass > the skb up to stack. This is suspicious. > > In ip_check_defrag(), after we learn the skb is an IP fragment, > passing the skb to callers makes no sense, because callers expect > fragments are defrag'ed on success. So, dropping the skb when we > can't defrag it is reasonable. > > Note, prior to commit 88078d98d1bb, this is not a big problem as > checksum will be fixed up anyway. After it, the checksum is not > correct on failure. > > Found this during code review. > > Fixes: 88078d98d1bb ("net: pskb_trim_rcsum() and CHECKSUM_COMPLETE are friends") > Cc: Eric Dumazet > Signed-off-by: Cong Wang Applied and queued up for -stable, thanks!