Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753553AbXLaVql (ORCPT ); Mon, 31 Dec 2007 16:46:41 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752293AbXLaVqb (ORCPT ); Mon, 31 Dec 2007 16:46:31 -0500 Received: from namei.org ([69.55.235.186]:57648 "EHLO us.intercode.com.au" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752223AbXLaVqa (ORCPT ); Mon, 31 Dec 2007 16:46:30 -0500 Date: Tue, 1 Jan 2008 08:46:09 +1100 (EST) From: James Morris X-X-Sender: jmorris@us.intercode.com.au To: Paul Moore cc: Valdis.Kletnieks@vt.edu, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, sds@tycho.nsa.gov, netdev@vger.kernel.org Subject: Re: 2.6.24-rc6-mm1 - git-lblnet.patch and networking horkage In-Reply-To: <200712311506.15230.paul.moore@hp.com> Message-ID: References: <3281504256.5618888@mail.hp.com> <200712311213.32515.paul.moore@hp.com> <200712311506.15230.paul.moore@hp.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1229 Lines: 33 On Mon, 31 Dec 2007, Paul Moore wrote: > I'm pretty certain this is an uninitialized value problem now and not a > use-after-free issue. The invalid/garbage ->iif value seems to only happen > on packets that are generated locally and sent back into the stack for local > consumption, e.g. loopback. These local packets also need to have been > cloned at some point, either on the output or input path. I think we need to find out exactly what's happening, first. > The problem appears to be a skb_clone() function which does not clear the skb > structure properly and fails to copy the ->iif value from the original skb to > the cloned skb. From what I can tell, there are two possible solutions to > this problem: > > 1. Clear all of the cloned skb fields in skb_clone() via memset() Sounds like it's not going to fly for performance reasons in any case. > 2. Copy the ->iif field in __copy_skb_header() Seems valid. - James -- James Morris -- 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/