Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm using CentOS 5.5 x64 on both the dom0 and domU. I am attempting to pass-through a 3-port NIC (Realtek Semiconductor Co., Ltd. RTL-8110SC/8169SC Gigabit Ethernet (rev 10)) to the domU using pciback. However, when the first port on the NIC is brought online, it causes the domU to crash. Any suggestions? (eth0 is the on-board NIC, which works fine).

Edit: By the way, adding 'swiotlb=force' to the domU kernel line (as recommended in the dump) causes the domU to fail with the same error, only it happens immediately upon launching the vm.

Bringing up interface eth0:  
Determining IP information for eth0... done.    [  OK  ]
Bringing up interface eth1:  
Determining IP information for eth1...Fatal DMA error! Please use 'swiotlb=force'
----------- [cut here ] --------- [please bite here ] ---------
Kernel BUG at arch/x86_64/kernel/../../i386/kernel/pci-dma-xen.c:394
invalid opcode: 0000 [1] SMP 
last sysfs file: /class/net/eth1/address
CPU 0 
Modules linked in: be2iscsi ib_iser rdma_cm ib_cm iw_cm ib_sa ib_mad ib_core ib_addr iscsi_tcp bnx2i cnic ipv6 xfrm_nalgo crypto_api uio cxgb3i cxgb3 8021q libiscsi_tcp libiscsi2 scsi_transport_iscsi2 scsi_transport_iscsi loop dm_mirror dm_multipath scsi_dh scsi_mod parport_pc lp parport r8169 mii pcspkr xennet dm_raid45 dm_message dm_region_hash dm_log dm_mod dm_mem_cache xenblk ext3 jbd uhci_hcd ohci_hcd ehci_hcd
Pid: 1359, comm: ip Not tainted 2.6.18-194.el5xen #1
RIP: e030:[<ffffffff802723ff>]  [<ffffffff802723ff>] dma_map_single+0x12d/0x17d
RSP: e02b:ffff880014bedcb8  EFLAGS: 00010282
RAX: 000000000000002f RBX: ffff880014a60012 RCX: ffff880017f01870
RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000000
RBP: 0000000003724012 R08: 000000000000002c R09: ffff880000def000
R10: 000000000000002d R11: ffff880015d091e0 R12: 0000000000003fff
R13: ffff880017f01870 R14: 0000000000000000 R15: 0000000000003fff
FS:  00002ad23cbecaf0(0000) GS:ffffffff805d2000(0000) knlGS:0000000000000000
CS:  e033 DS: 0000 ES: 0000
Process ip (pid: 1359, threadinfo ffff880014bec000, task ffff8800144b77a0)
Stack:  0000000000000002  ffff880015e304c0  ffff880011f61000  0000000000000000 
 0000000000000002  ffffffff8810b474  0000001e00000000  0000000000000100 
 ffff880016f64000  ffff880016f64500 
Call Trace:
 [<ffffffff8810b474>] :r8169:rtl8169_rx_fill+0x11e/0x188
 [<ffffffff8810c6c6>] :r8169:rtl8169_init_ring+0x70/0x9f
 [<ffffffff8810c9a3>] :r8169:rtl8169_open+0x9f/0x1c6
 [<ffffffff80420ace>] dev_open+0x58/0x97
 [<ffffffff8041e9d8>] dev_change_flags+0x5a/0x11a
 [<ffffffff804534d2>] devinet_ioctl+0x235/0x59c
 [<ffffffff804162b2>] sock_ioctl+0x1c1/0x1e5
 [<ffffffff80244265>] do_ioctl+0x21/0x6b
 [<ffffffff80231924>] vfs_ioctl+0x457/0x4b9
 [<ffffffff8024ea38>] sys_ioctl+0x59/0x78
 [<ffffffff80260106>] system_call+0x86/0x8b
 [<ffffffff80260080>] system_call+0x0/0x8b

Code: 0f 0b 68 f6 7e 49 80 c2 8a 01 4d 85 ed 74 11 49 8b 85 18 02 
RIP  [<ffffffff802723ff>] dma_map_single+0x12d/0x17d
 RSP <ffff880014bedcb8>
 <0>Kernel panic - not syncing: Fatal exception
share|improve this question
up vote 0 down vote accepted

The problem was a faulty NIC driver. My research indicates that I could have patched and recompiled the driver, but it was easier to just swap in a different NIC.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.