Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755477AbXKYBTV (ORCPT ); Sat, 24 Nov 2007 20:19:21 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753226AbXKYBTH (ORCPT ); Sat, 24 Nov 2007 20:19:07 -0500 Received: from electric-eye.fr.zoreil.com ([213.41.134.224]:55082 "EHLO electric-eye.fr.zoreil.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753120AbXKYBTG (ORCPT ); Sat, 24 Nov 2007 20:19:06 -0500 Date: Sun, 25 Nov 2007 02:15:51 +0100 From: Francois Romieu To: Alan Cox Cc: Alistair John Strachan , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: 2.6.24-rc3, 4GB RAM, swiotlb, r8169, out of space Message-ID: <20071125011550.GB30759@electric-eye.fr.zoreil.com> References: <200711242344.49958.alistair@devzero.co.uk> <20071125003910.3e58e3b3@the-village.bc.nu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20071125003910.3e58e3b3@the-village.bc.nu> X-Organisation: Land of Sunshine Inc. User-Agent: Mutt/1.5.17 (2007-11-01) Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1091 Lines: 30 Alan Cox : [...] > You seem to have a leak, which actually isn't suprising > > rtl8169_xmit_frags allocates a set of maps for a fragmented packet > > rtl8169_start_xmit allocates a buffer > > When we finish the transit we free the main buffer (always using skb->len > when sometimes its skb->headlne. We don't seem to free the fragment > buffers at all. > Looks like the unmap path for fragmented packets is broken with any kind > of iommu Are you referring to the pci_unmap part ? There is a 1:1 correspondance between a Tx descriptor entry and {an unfragmented skb or a fragment of a skb}. Afaiks rtl8169_unmap_tx_skb() is issued for each Tx descriptor entry, be it after a Tx completion irq or a general Tx ring cleanup. I'll read it again after some sleep but the leak does not seem clear to me. -- Ueimor - 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/