Messages in this thread |  | | Date | Tue, 8 Jan 2013 16:56:00 -0800 | Subject | Re: [PATCH v7u1 26/31] x86: Don't enable swiotlb if there is not enough ram for it | From | Yinghai Lu <> |
| |
On Tue, Jan 8, 2013 at 4:43 PM, Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> 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
|  |