On Wed, 11 Mar 2009, Dave Jones wrote:
> Fedora rawhide kernels have been carrying a set of DMA debugging patches
> from dwmw2 for a while.  I just booted up a box which contains two of these..
> 
> 01:00.0 Ethernet controller: Intel Corporation 82575EB Gigabit Network 
> Connection (rev 02)
> 01:00.1 Ethernet controller: Intel Corporation 82575EB Gigabit Network 
> Connection (rev 02)
> 
> And got the following trace in dmesg..
> 
> [   33.553105] ------------[ cut here ]------------
> [   33.553109] WARNING: at lib/dma-debug.c:461 check_unmap+0xd4/0x3dd() (Not 
> tainted)
> [   33.553112] Hardware name: X8DTN
> [   33.553115] igb 0000:01:00.0: DMA-API: device driver tries to free DMA 
> memory it has not allocated [device address=0x00000004b6c61130] [size=342 
> bytes]
> [   33.553119] Modules linked in: sunrpc cpufreq_ondemand acpi_cpufreq 
> freq_table snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq 
> snd_seq_device snd_pcm_oss igb snd_mixer_oss snd_pcm snd_timer shpchp snd 
> iTCO_wdt soundcore dca iTCO_vendor_support snd_page_alloc serio_raw 
> pata_jmicron i2c_i801 irda pcspkr crc_ccitt ata_generic pata_acpi radeon drm 
> i2c_algo_bit i2c_core [last unloaded: microcode]
> [   33.553159] Pid: 3435, comm: rsyslogd Not tainted 
> 2.6.29-0.218.rc7.git2.fc11.x86_64 #1
> [   33.553162] Call Trace:
> [   33.553164]  <IRQ>  [<ffffffff8104baa3>] warn_slowpath+0xbc/0xf0
> [   33.553176]  [<ffffffff813967f8>] ? _spin_lock_irqsave+0x7d/0x8b
> [   33.553181]  [<ffffffff811a6865>] ? get_hash_bucket+0x28/0x34
> [   33.553185]  [<ffffffff811a520d>] ? swiotlb_virt_to_bus+0x1f/0x23
> [   33.553190]  [<ffffffff811a6f30>] check_unmap+0xd4/0x3dd
> [   33.553196]  [<ffffffff8106f5d7>] ? mark_lock+0x28/0x37f
> [   33.553200]  [<ffffffff811a7386>] debug_dma_unmap_page+0x50/0x52
> [   33.553211]  [<ffffffffa01753d6>] pci_unmap_page+0x4e/0x57 [igb]
> [   33.553219]  [<ffffffffa017540e>] igb_unmap_and_free_tx_resource+0x2f/0x58 
> [igb]
> [   33.553227]  [<ffffffffa0175540>] igb_clean_tx_irq+0xbf/0x32b [igb]
> [   33.553231]  [<ffffffff8106fbb9>] ? trace_hardirqs_on+0xd/0xf
> [   33.553238]  [<ffffffff8101781b>] ? native_sched_clock+0x2d/0x5a
> [   33.553246]  [<ffffffffa01757e7>] igb_msix_tx+0x3b/0x66 [igb]
> [   33.553252]  [<ffffffff81098723>] handle_IRQ_event+0x27/0x63
> [   33.553256]  [<ffffffff8109a051>] handle_edge_irq+0xe0/0x129
> [   33.553261]  [<ffffffff81013c04>] do_IRQ+0xd9/0x151
> [   33.553265]  [<ffffffff81011e93>] ret_from_intr+0x0/0x2e
> [   33.553267]  <EOI> <4>---[ end trace 642821cb9679d140 ]---
> [   33.560735] dhclient[3855]: segfault at 49b82b94 ip 00000000004279a0 sp 
> 00007fffac150b80 error 4 in dhclient[400000+7f000]
> 
> Is this a useful trace ?

yes thank you, we have a bunch of similar reports in kerneloops.org for 
e1000/e1000e.

> >From a quick eyeball of the code, I'm not entirely sure what goes on here,
> so figured I'd share it before I dive deeper.

no need to dive, I've already developed patches for e1000 and e1000e to 
fix this same issue.

Its not truly an issue I don't think, but nonetheless the driver is 
incorrectly calling pci_unmap_page on a buffer it allocated with 
pci_map_single.  In this case we've had this code in the drivers for a 
very long time running on systems like pseries with IOMMUs and we've never 
had reported issues.

I can probably post something tomorrow that is a possible fix, but we 
definitely need to run some validation to make sure that we don't 
introduce any new false tx hangs, want to do some validation in rawhide?

how raw do you want it :-)

anyways, thanks for the report, it is very useful.

Jesse

------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
E1000-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/e1000-devel

Reply via email to