Re: [PATCH v7u1 26/31] x86: Don't enable swiotlb if there is notenough ram for it

From: Yinghai Lu
Date: Tue Jan 08 2013 - 19:55:51 EST


On Tue, Jan 8, 2013 at 4:43 PM, Konrad Rzeszutek Wilk
<konrad.wilk@xxxxxxxxxx> wrote:
> The swiotlb_full check I don't believe is neccessary. You won't ever get
> to that unless swiotlb_map_page has at least provided a bounce buffer.

yes, the code get there, when I boot the kernel with
"memmap=4095M$1M intel_iommu=off"

please check the call trace:

[ 209.878091] usb 1-3: new high-speed USB device number 2 using ehci-pci
[ 209.878096] DMA: Out of SW-IOMMU space for 8 bytes at device 0000:00:1a.7
[ 209.878117] Kernel panic - not syncing: DMA: Random memory could be DMA read
[ 209.878117]
[ 209.878120] Pid: 2057, comm: khubd Not tainted
3.8.0-rc2-yh-00443-g262039c-dirty #1091
[ 209.878121] Call Trace:
[ 209.878132] [<ffffffff8214a607>] panic+0xc0/0x1ce
[ 209.878143] [<ffffffff814dc013>] swiotlb_full+0xa3/0xc0
[ 209.878147] [<ffffffff814dccf3>] swiotlb_map_page+0x93/0xe0
[ 209.878157] [<ffffffff81c6800d>] usb_hcd_map_urb_for_dma+0xcd/0x510
[ 209.878166] [<ffffffff810eb758>] ? lockdep_init_map+0x518/0x570
[ 209.878170] [<ffffffff81c68a0d>] usb_hcd_submit_urb+0x5bd/0x690
[ 209.878174] [<ffffffff81c699b6>] usb_submit_urb+0x306/0x3c0
[ 209.878179] [<ffffffff81c6abb2>] usb_start_wait_urb+0x82/0x120
[ 209.878183] [<ffffffff81c69f7e>] ? usb_alloc_urb+0x1e/0x60
[ 209.878187] [<ffffffff81c6aeae>] usb_control_msg+0xde/0x130
[ 209.878194] [<ffffffff81196f80>] ? kmem_cache_alloc_trace+0x60/0x150
[ 209.878198] [<ffffffff81c62ad7>] hub_port_init+0x2a7/0xa10
[ 209.878203] [<ffffffff81c65542>] hub_port_connect_change+0x492/0x9c0
[ 209.878211] [<ffffffff82163f4e>] ? mutex_unlock+0xe/0x10
[ 209.878215] [<ffffffff81c65f9b>] hub_thread+0x52b/0x830
[ 209.878222] [<ffffffff810c3f94>] ? local_clock+0x34/0x60
[ 209.878229] [<ffffffff810afa00>] ? wake_up_bit+0x40/0x40
[ 209.878233] [<ffffffff81c65a70>] ? hub_port_connect_change+0x9c0/0x9c0
[ 209.878237] [<ffffffff810af088>] kthread+0xe8/0xf0
[ 209.878241] [<ffffffff810aefa0>] ? __init_kthread_worker+0x70/0x70
[ 209.878248] [<ffffffff8216f59c>] ret_from_fork+0x7c/0xb0
[ 209.878251] [<ffffffff810aefa0>] ? __init_kthread_worker+0x70/0x70
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/