Messages in this thread | | | Date | Mon, 13 Apr 2009 17:41:05 -0600 | From | Pete Zaitcev <> | Subject | Re: usb_mon oops Re: tcpdump crashes 2.6.29.1 (and 2.6.29-rc5) |
| |
On Thu, 9 Apr 2009 09:59:31 -0400, "John Stoffel" <john@stoffel.org> wrote:
> Here's a dmesg of bootup:
> [ 0.000000] Linux version 2.6.29.1 (john@sail) (gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4) ) #24 SMP PREEMPT Tue Apr 7 11:30:52 EDT 2009 > [ 0.000999] Checking aperture... > [ 0.000999] No AGP bridge found > [ 0.000999] Node 0: aperture @ 20000000 size 32 MB > [ 0.000999] Aperture pointing to e820 RAM. Ignoring. > [ 0.000999] Your BIOS doesn't leave a aperture memory hole > [ 0.000999] Please enable the IOMMU option in the BIOS setup > [ 0.000999] This costs you 64 MB of RAM > [ 0.000999] Mapping aperture over 65536 KB of RAM @ 20000000
> [ 1396.271782] BUG: unable to handle kernel paging request at ffff880020a15cc0
So 20a15000 is in the aperture. Oh well, I screwed up. I meant to check for this back in 2006 but forgot, and miraclously it worked until now.
Here's the problem:
pg = phys_to_page(dma_addr); map = kmap_atomic(pg, KM_IRQ0); offset = mon_copy_to_buff(rp, offset, map + page_off, step_len); kunmap_atomic(map, KM_IRQ0);
Obviously we don't want the page that's overlayed by the aperture, but the page where IOMMU is pointing.
-- Pete
| |