[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-users] ethernet jumbo frame support in DomU with "real" pci device, possible or not ?



Hello,

I'm trying to use xen 3.0.3 on an amd64

i've got problem inside a DomU, when i want to use a realtek card and
enable jumbo frame


When I do a :
        ifconfig eth1 mtu 7000
inside a DomU (eth1 being the an realtek 8169 card)
i've got the error message from kernel : 

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:308
invalid opcode: 0000 [1] SMP                                        
CPU 0                        
Modules linked in: reiserfs dm_mirror dm_snapshot dm_mod raid1 r8169
processor
Pid: 1275, comm: ifconfig Not tainted 2.6.16.29-xen
#4                        
RIP: e030:[<ffffffff80112157>] <ffffffff80112157>{dma_map_single+373}
RSP: e02b:ffff88000126fc78  EFLAGS: 00010292                         
RAX: 000000000000002f RBX: ffff880007e7e012 RCX: 0000000000001230
RDX: ffff880001250870 RSI: 0000000000000000 RDI: ffffffff8033bd1c
RBP: 00000000217e1012 R08: ffff8800005691f8 R09: 000000000000002d
R10: 0000000000001c1a R11: 000000000000002d R12: 0000000000001b6e
R13: ffff880001250870 R14: ffff880000d304c0 R15: ffff880001250800
FS:  00002ba3d50716d0(0000) GS:ffffffff803a5000(0000)
knlGS:0000000000000000
CS:  e033 DS: 002b ES:
002b                                                 
Process ifconfig (pid: 1275, threadinfo ffff88000126e000, task
ffff88000111d180)
Stack: 0000000000001b6e ffff880008431000 0000000000000000
0000000000000000     
       0000000000001b6e ffffffff880082de 0000000000000100
ffff880000d30000 
       ffff880000d304c0
ffff880000d304c0                                   
Call Trace: <ffffffff880082de>{:r8169:rtl8169_rx_fill+151}
       <ffffffff880092ea>{:r8169:rtl8169_init_ring+112}
<ffffffff8800ab97>{:r8169:rtl8169_change_mtu+103}
       <ffffffff8027e599>{dev_set_mtu+47} <ffffffff80281590>{dev_ioctl
+978}
       <ffffffff8015d08f>{do_wp_page+1026} <ffffffff802777fa>{sock_ioctl
+566}
       <ffffffff801857c9>{do_ioctl+33} <ffffffff80185a65>{vfs_ioctl
+594}     
       <ffffffff80185ad7>{sys_ioctl+89} <ffffffff8019cbf4>{dev_ifsioc
+209}
       <ffffffff8019b183>{compat_sys_ioctl+629}
<ffffffff8011c899>{ia32_sysret+0}
 
Code: 0f 0b 68 2e 84 2f 80 c2 37 01 4d 85 ed 74 11 49 8b 85 f8 01 
RIP <ffffffff80112157>{dma_map_single+373} RSP <ffff88000126fc78> 



i tried "swiotlb=force"  but the option forbid the DomU to boot with
error :
----------- [cut here ] --------- [please bite here ] ---------
Kernel BUG at lib/../arch/i386/kernel/swiotlb.c:162            
invalid opcode: 0000 [1] SMP                       
CPU 0                        
Modules linked in:
Pid: 0, comm: swapper Not tainted 2.6.16.29-xen #4
RIP: e030:[<ffffffff801e2b36>]
<ffffffff801e2b36>{swiotlb_init_with_default_size+160}
RSP: e02b:ffffffff803b5f40  EFLAGS: 00010282
RAX: 00000000fffffff4 RBX: 0000000000000080 RCX: 0000000000000006
RDX: ffffffffff578000 RSI: 0000000000000000 RDI: ffffffff80364fe0
RBP: 0000000004000000 R08: 0000000000001000 R09: ffffffff803fa020
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffffffff803a5000(0000)
knlGS:0000000000000000
CS:  e033 DS: 0000 ES:
0000                                                 
Process swapper (pid: 0, threadinfo ffffffff803b4000, task
ffffffff80337ca0)
Stack: 00000000000002c5 0000000000000800 0000000000000000
ffffffff80115675  
       0000000000000000 ffffffff803c14c4 0000000000000000
0000000000000800 
       0000000000000000
0000000000000000                                   
Call Trace: <ffffffff80115675>{pci_swiotlb_init+9}
<ffffffff803c14c4>{mem_init+94}
       <ffffffff803b76cc>{start_kernel+357}
<ffffffff803b720d>{_sinittext+525}
                                                                              
Code: 0f 0b 68 71 24 30 80 c2 a2 00 48 83 eb 80 48 8b 05 fd 1b 23 
RIP <ffffffff801e2b36>{swiotlb_init_with_default_size+160} RSP
<ffffffff803b5f40>
 <0>Kernel panic - not syncing: Attempted to kill the idle task!



For information, lspci inside DomU :
0000:01:07.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
RTL-8169 Gigabit Ethernet (rev 10)

i've added printk debug inside pci-dma-xen.c
        if (range_straddles_page_boundary(ptr, size)) {
                printk("ptr: %p %zd\n", ptr, size);
        }
        IOMMU_BUG_ON(range_straddles_page_boundary(ptr, size));
        IOMMU_BUG_ON(address_needs_mapping(dev, dma));
and i got :
        ptr: ffff880007e7e012 7022


As i'm planning to use a DomU as an NFS server, i would like to enable
jumbo frame on a dedicated network card
Is it possible ? 


i haven't find document on the web stating clearly status of jumbo frame
support in DomU
i've only found mention of Dom0 jumbo frame in roadmap or old mail from
may 2005 dealing with jumbo frame and memory pages






_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.