lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 13 Feb 2009 11:48:02 -0800
From:	Jesse Brandeburg <jesse.brandeburg@...il.com>
To:	Joerg Roedel <joro@...tes.org>
Cc:	David Woodhouse <dwmw2@...radead.org>,
	Joerg Roedel <joerg.roedel@....com>,
	fujita.tomonori@....ntt.co.jp, iommu@...ts.linux-foundation.org,
	mingo@...hat.com, linux-kernel@...r.kernel.org,
	davem@...emloft.net, Jesse Brandeburg <jesse.brandeburg@...el.com>
Subject: Re: [PATCH 08/16] dma-debug: add core checking functions

On Thu, Feb 12, 2009 at 6:49 AM, Joerg Roedel <joro@...tes.org> wrote:
> On Thu, Feb 05, 2009 at 09:07:59PM +0000, David Woodhouse wrote:
>> On Mon, 2009-01-19 at 15:46 +0100, Joerg Roedel wrote:
>> >
>> > +       if (ref->type != entry->type) {
>> > +               err_printk(ref->dev, "DMA-API: device driver frees "
>> > +                          "DMA memory with wrong function "
>> > +                          "[device address=0x%016llx] [size=%llu bytes] "
>> > +                          "[mapped as %s] [unmapped as %s]\n",
>> > +                          ref->dev_addr, ref->size,
>> > +                          type2name[entry->type], type2name[ref->type]);
>>
>> e1000e 0000:00:19.0: DMA-API: device driver frees DMA memory with wrong
>> function [device address=0x00000000ffedc002] [size=90 bytes] [mapped as
>> single] [unmapped as page]
>>
>>
>> <davem> That debug check is excessive, substituting those two things
>> works for every DMA API implementation I am aware of
>
> True. Buts it is an API violation, isn't it?

I have a fix for this, for both e1000 and e1000e, the patches are not
(deeply) tested and are RFC right now.
Both e1000e patches must be applied for the actual bug fix to apply cleanly
01 - e1000e_remove_old_workarounds
02 - e1000e_fix_dma_unmap

Jesse

View attachment "e1000e_remove_old_workarounds.patch" of type "text/x-patch" (1500 bytes)

View attachment "e1000_fix_dma_unmap.patch" of type "text/x-patch" (3288 bytes)

View attachment "e1000e_fix_dma_unmap.patch" of type "text/x-patch" (3383 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ