Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932333Ab2HVQAW (ORCPT ); Wed, 22 Aug 2012 12:00:22 -0400 Received: from mail-yx0-f174.google.com ([209.85.213.174]:64464 "EHLO mail-yx0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754155Ab2HVQAS (ORCPT ); Wed, 22 Aug 2012 12:00:18 -0400 Message-ID: <5035020E.5040806@lwfinger.net> Date: Wed, 22 Aug 2012 11:00:14 -0500 From: Larry Finger User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120713 Thunderbird/14.0 MIME-Version: 1.0 To: Eric Dumazet CC: Neal Cardwell , "David S. Miller" , John W Linville , linux-wireless , LKML Subject: Re: Regression associated with commit c8628155ece3 - "tcp: reduce out_of_order memory use" References: <50345B12.1050600@lwfinger.net> <1345612503.5158.566.camel@edumazet-glaptop> In-Reply-To: <1345612503.5158.566.camel@edumazet-glaptop> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1470 Lines: 37 On 08/22/2012 12:15 AM, Eric Dumazet wrote: > > This particular commit is the start of a patches batch that ended in the > generic TCP coalescing mechanism. > > It is known to have problem on drivers doing skb_clone() in their rx > path. > > Current kernels should be ok, because coalescing doesnt happen if the > destination skb is cloned (skb_cloned(to) in skb_try_coalesce()) > > For 3.4 kernel, I guess I need to backport this skb_cloned(to) check fo > stable 3.4 kernel > > But these skb_clone() in various USB drivers should be killed for good, > they really can kill the box because of skb->truesize lies. Applying your patch to 3.4 does not fix the problem. In addition, all of the problems I noted happen with 3.6-rc2 - current kernels are not OK. Of the drivers I reported, only r8712u in staging/rtl8712/rtl8712_recv.c has a direct call to skb_clone(). As its symptoms are different, the cloning is likely the source of the problems there. In addition, the problem is intermittent. The driver normally allocates a new buffer and copies to it, and the clone only occurs when that skb allocation fails. I will try to fix that. My skb skills are minimal and I will have to do some studying. Thanks, Larry -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/