Jump to content

Pavel Odintsov

Members
  • Posts

    14
  • Joined

  • Last visited

Posts posted by Pavel Odintsov

  1. Thank you for merging! 

     

    I prepared kernel with AF_XDP enabled and my test application works fine:

     sock0@wan:0 rxdrop 	
                    pps         pkts        1.00       
    rx              9,310       9,323      
    tx              0           0          

    Packet rate aren't impressive but my packet generator works over WIFI and Powerline. I do not expect performance here :)

     

    That's great place for future improvements! 

  2. Well, I noticed one issues with this kernel.  Any chance to enable kernel configuration option CONFIG_XDP_SOCKETS in kernel for EspressoBin? We participated in testing this feature when it was in bpf-next and it worked fine on our ARM64 machines (Thunder X machines from Cavium). I expect that it should work on EspressoBin fine too.

     

    I tried test app for AF_XDP and it does not work:

    libbpf: failed to create map (name: 'xsks_map'): Invalid argument
    libbpf: failed to load object './xdpsock_user_kern.o'

    And dump from strace:

     

    2909  bpf(BPF_MAP_CREATE, {map_type=BPF_MAP_TYPE_ARRAY, key_size=4, value_size=4
    , max_entries=1, map_flags=0, inner_map_fd=0, ...}, 72) = 3
    2909  bpf(BPF_MAP_CREATE, {map_type=0x11 /* BPF_MAP_TYPE_??? */, key_size=4, val
    ue_size=4, max_entries=4, map_flags=0, inner_map_fd=0, ...}, 72) = -1 EINVAL (In
    valid argument)
    2909  write(2, "libbpf: failed to create map (name: 'xsks_map'): Invalid argumen
    t\n", 66) = 66
    2909  close(3)                          = 0
    2909  write(2, "libbpf: failed to load object './xdpsock_user_kern.o'\n", 54) =
    54

    It offers significantly improved logic for network processing and will be useful for network targeted boards like this. 

     

    Thank you!

  3. @Igor thank you so much! It works fine!

    ssh flab2
     _____                                   _     _       
    | ____|___ _ __  _ __ ___  ___ ___  ___ | |__ (_)_ __  
    |  _| / __| '_ \| '__/ _ \/ __/ __|/ _ \| '_ \| | '_ \ 
    | |___\__ \ |_) | | |  __/\__ \__ \ (_) | |_) | | | | |
    |_____|___/ .__/|_|  \___||___/___/\___/|_.__/|_|_| |_|
              |_|                                          
    
    Welcome to ARMBIAN 5.43.180428 nightly Ubuntu 16.04.4 LTS 4.16.5-mvebu64   
    System load:   1.88 0.42 0.14  	Up time:       0 min		
    Memory usage:  5 % of 2001MB 	IP:            192.168.1.11
    Usage of /:    30% of 15G    	
    
    New to Armbian? Check the documentation first: https://docs.armbian.com
    Last login: Fri May  4 08:54:07 2018 from 192.168.1.4
    
    root@espressobin:~# uname -r
    4.16.5-mvebu64

    But I still see "do_csum.part.0" in perf top. Looks like network card has some issues with checksum offload. What is the best way to report this issue to Marvell? 

     

    Screen Shot 2018-05-04 at 10.09.23.png

  4. Also, I noticed significant amount of "do_csum.part.0" in perf top output and hardware checksum offload does not work on mvneta:

     

    ethtool -K eth0 rx on
    Cannot get device udp-fragmentation-offload settings: Operation not supported
    Cannot change rx-checksumming
    Cannot get device udp-fragmentation-offload settings: Operation not supported
    Could not change any device features

    I collected this output with about 8Mbits of incoming UDP traffic. 

    Screen Shot 2018-05-04 at 00.00.18.png

    Also, this patch https://github.com/torvalds/linux/commit/ca5902a6547f662419689ca28b3c29a772446caa#diff-851bfc43b3ca32355b4c07d29dbba7f0 can offer some nice benefits and spread traffic processing to multiple queues. 

  5. Hello!

     

    I have EspressoBin board and I have two different wifi cards. I used Debian mainline from https://www.armbian.com/espressobin/ 

     

    For first wifi:

    00:00.0 Network controller: Qualcomm Atheros AR9485 Wireless Network Adapter

    I have following error in dmesg:

    dmesg|grep ath9k
    [    6.565634] ath9k 0000:00:00.0: enabling device (0000 -> 0002)
    [    6.565774] ath9k 0000:00:00.0: request_irq failed
    [    6.565823] ath9k: probe of 0000:00:00.0 failed with error -22

    For another card:

    00:00.0 Ethernet controller: Qualcomm Atheros AR242x / AR542x Wireless Network Adapter (PCI-Express) (rev 01)

    I have big kernel error:

    [    5.849460] Internal error: : 96000010 [#1] PREEMPT SMP
    [    5.854697] Modules linked in: ath5k(+) ath mac80211 cfg80211 rfkill bridge stp llc ip_tables x_tables
    [    5.864151] CPU: 1 PID: 353 Comm: systemd-udevd Not tainted 4.14.14-mvebu64 #5
    [    5.871883] Hardware name: Globalscale Marvell ESPRESSOBin Board (DT)
    [    5.878633] task: ffffffc07a5a8000 task.stack: ffffff8009f08000
    [    5.884730] PC is at ath5k_hw_read_srev+0xc/0x28 [ath5k]
    [    5.890207] LR is at ath5k_hw_init+0x64/0x758 [ath5k]
    [    5.895291] pc : [<ffffff8000c03884>] lr : [<ffffff8000bfc4bc>] pstate: 20000145
    [    5.902760] sp : ffffff8009f0b980
    [    5.906537] x29: ffffff8009f0b980 x28: ffffff800a108000 
    [    5.911769] x27: ffffff8000c0d450 x26: 00000000014000c0 
    [    5.917169] x25: ffffffc07b176560 x24: ffffffc07ad7b800 
    [    5.922659] x23: ffffffc07b177560 x22: ffffff8000c0a1a8 
    [    5.928418] x21: ffffff800a140000 x20: ffffffc07b175560 
    [    5.933820] x19: ffffffc07b171560 x18: 0000000000000001 
    [    5.939041] x17: 0000007f84f172f0 x16: ffffff8008224b48 
    [    5.944618] x15: ffffffffffffffff x14: 0000000000000000 
    [    5.950377] x13: ff00000000000000 x12: 0000000000000018 
    [    5.955777] x11: 0101010101010101 x10: ffffffff7f7f7f7f 
    [    5.961177] x9 : 0000000000000009 x8 : 0000000000000000 
    [    5.966849] x7 : 000000000000401c x6 : 0000000000004020 
    [    5.972161] x5 : ffffff8008e37000 x4 : 0000000000000704 
    [    5.977653] x3 : 0000000000000003 x2 : 0000000000004020 
    [    5.983411] x1 : ffffff800a144020 x0 : ffffffc07b171560 
    [    5.988465] Process systemd-udevd (pid: 353, stack limit = 0xffffff8009f08000)
    [    5.996294] Call trace:
    [    5.998909] Exception stack(0xffffff8009f0b840 to 0xffffff8009f0b980)
    [    6.005580] b840: ffffffc07b171560 ffffff800a144020 0000000000004020 0000000000000003
    [    6.013419] b860: 0000000000000704 ffffff8008e37000 0000000000004020 000000000000401c
    [    6.021699] b880: 0000000000000000 0000000000000009 ffffffff7f7f7f7f 0101010101010101
    [    6.029801] b8a0: 0000000000000018 ff00000000000000 0000000000000000 ffffffffffffffff
    [    6.037904] b8c0: ffffff8008224b48 0000007f84f172f0 0000000000000001 ffffffc07b171560
    [    6.045914] b8e0: ffffffc07b175560 ffffff800a140000 ffffff8000c0a1a8 ffffffc07b177560
    [    6.054016] b900: ffffffc07ad7b800 ffffffc07b176560 00000000014000c0 ffffff8000c0d450
    [    6.062294] b920: ffffff800a108000 ffffff8009f0b980 ffffff8000bfc4bc ffffff8009f0b980
    [    6.070313] b940: ffffff8000c03884 0000000020000145 ffffff800a140000 ffffff8000c0a1a8
    [    6.078236] b960: 0000008000000000 ffffff8000c0aaa0 ffffff8009f0b980 ffffff8000c03884
    [    6.086473] [<ffffff8000c03884>] ath5k_hw_read_srev+0xc/0x28 [ath5k]
    [    6.092945] [<ffffff8000c00144>] ath5k_init_ah+0x154/0xd40 [ath5k]
    [    6.099244] [<ffffff8000c03798>] ath5k_pci_probe+0x198/0x278 [ath5k]
    [    6.105871] [<ffffff800855ca54>] local_pci_probe+0x3c/0xb0
    [    6.111354] [<ffffff800855e040>] pci_device_probe+0xd0/0x158
    [    6.117474] [<ffffff800864986c>] driver_probe_device+0x22c/0x2d8
    [    6.123771] [<ffffff80086499d0>] __driver_attach+0xb8/0xc0
    [    6.129172] [<ffffff8008647a14>] bus_for_each_dev+0x4c/0x98
    [    6.135111] [<ffffff8008649170>] driver_attach+0x20/0x28
    [    6.140331] [<ffffff8008648cdc>] bus_add_driver+0x1ac/0x218
    [    6.146541] [<ffffff800864a358>] driver_register+0x60/0xf8
    [    6.151861] [<ffffff800855c238>] __pci_register_driver+0x40/0x48
    [    6.158291] [<ffffff8000c16018>] ath5k_pci_driver_init+0x18/0x1000 [ath5k]
    [    6.165096] [<ffffff8008083980>] do_one_initcall+0x38/0x120
    [    6.170942] [<ffffff800814ab68>] do_init_module+0x58/0x1b0
    [    6.176879] [<ffffff8008149824>] load_module+0x1a3c/0x2180
    [    6.182551] [<ffffff800814a1b4>] SyS_finit_module+0xa4/0xb8
    [    6.188040] Exception stack(0xffffff8009f0bec0 to 0xffffff8009f0c000)
    [    6.194969] bec0: 0000000000000012 0000007f99f677b8 0000000000000000 0000000000000012
    [    6.202889] bee0: 0000000000000000 00000055c1921d48 0000000000000041 0000000000000041
    [    6.210722] bf00: 0000000000000111 0000007fc5ce90d0 0000000000000000 0000000000000020
    [    6.219358] bf20: 0000000000000000 0000000000000000 0000000000000004 0000000000000000
    [    6.227376] bf40: 0000007f99f79f88 0000007f99e71790 0000000000000000 00000055c1921ce0
    [    6.235566] bf60: 0000007f99f677b8 0000000000000000 00000055c19190c0 0000000000020000
    [    6.243674] bf80: 0000000000000000 0000000000000000 0000000000000000 0000000000020000
    [    6.251424] bfa0: 0000007fc5cea320 0000007fc5cea190 0000007f99f60d74 0000007fc5cea190
    [    6.259882] bfc0: 0000007f99e717b4 0000000040000000 0000000000000012 0000000000000111
    [    6.267630] bfe0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
    [    6.276091] [<ffffff8008083808>] __sys_trace_return+0x0/0x4
    [    6.281860] Code: ffffff80 f9411801 d2880402 8b020021 (b9400021) 
    [    6.288081] ---[ end trace b63085356c332b53 ]---
    [    6.336127] mvneta d0030000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
    [    6.351844] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
    [    6.438530] mv88e6085 d0032004.mdio-mii:01 lan1: Link is Down

    Kernel:

    uname -a
    Linux espressobin 4.14.14-mvebu64 #5 SMP PREEMPT Thu Jan 25 16:25:11 CET 2018 aarch64 GNU/Linux

    Any ideas about ways to fix them? :( 

×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines