I've been trying to set up 10 network interfaces for the 10 ports on the LS1088ARDB. The first 9 dpni get instantiated but when i try to create a 10th dpni object, i get the error that there no resources left.
I ran the following experiment to determine which resource is the limiting factor. I deleted all the existing network interfaces and created each interface with 2 dpcon objects. Each interface could create sufficient dpbp, dpcmp and dpcon objects, however the last interface could not create a 10th dpni object.
I tried instantiating all the dpni's in my dpl file however i'm getting a similar issue i outlined above. I have attached a my dpl file and system log.
Also, I see there is documentation on how many dpcon objects are supported, but I can't find any resources on the limits of other object types.
已解决! 转到解答。
In order to create more, the DPNIs must be created with fewer entries in WRIOP tables, e.g. fs_entries=1 or use DPNI option DPNI_OPT_NO_FS.
restool dpni create --fs-entries=1
You can add the number of flow steering entries directly to the DPL..
Below is an example:
dpni@1 {
options = "DPNI_OPT_NO_FS";
fs_entries = <0x1>;
};
Thank you,
Now when i try to list my network interfaces or my mac addresses i get this error.
root@OpenWrt:/# ls-listni
[ 225.909216] ------------[ cut here ]------------
[ 225.913837] WARNING: CPU: 3 PID: 2938 at drivers/base/core.c:112 0xffff00000857bebc
[ 225.921486] Modules linked in: pppoe ppp_async pppox ppp_generic nf_conntrack_ipv6 iptable_nat ipt_REJECT ipt_MASQUERADE xt_time xt_tcpudp xt_state xt_nat xt_multiport xt_mark xt_mac xt_limit xt_conntrack xt_comment xt_TCPMSS xt_REDIRECT xt_LOG xt_FLOWOFFLOAD xt_CT slhc nf_reject_ipv4 nf_nat_redirect nf_nat_masquerade_ipv4 nf_conntrack_ipv4 nf_nat_ipv4 nf_nat nf_log_ipv4 nf_flow_table_hw nf_flow_table nf_defrag_ipv6 nf_defrag_ipv4 nf_conntrack_rtcache nf_conntrack iptable_mangle iptable_filter ip_tables crc_ccitt nf_log_ipv6 nf_log_common ip6table_mangle ip6table_filter ip6_tables ip6t_REJECT x_tables nf_reject_ipv6 usb_storage xhci_plat_hcd xhci_pci xhci_hcd dwc3 usbcore usb_common
[ 225.982027] CPU: 3 PID: 2938 Comm: restool Not tainted 4.14.171 #0
[ 225.988200] Hardware name: LS1088A RDB Board (DT)
[ 225.992896] task: ffff80815526e200 task.stack: ffff00000d230000
[ 225.998809] pc : [<ffff00000857bebc>] lr : [<ffff00000857ba9c>] pstate: 60400145
[ 226.006197] sp : ffff00000d233a10
[ 226.009503] x29: ffff00000d233a10 x28: 0000000000000000
[ 226.014809] x27: 0000000000000000 x26: 00000000000041ed
[ 226.020115] x25: 0000000000000006 x24: ffff000008b97000
[ 226.025421] x23: 0000000000000002 x22: ffff808157681800
[ 226.030729] x21: ffff00000857bea8 x20: ffff8081568f8800
[ 226.036034] x19: 0000000000000000 x18: 0000000000000000
[ 226.041340] x17: 0000ffffa40fa580 x16: ffff00000819b390
[ 226.046647] x15: 0000000000000004 x14: 071c71c71c71c71c
[ 226.051953] x13: 000000000000019d x12: 0000000000000115
[ 226.057258] x11: 0000000000000000 x10: 0000000000000810
[ 226.062565] x9 : ffff00000d2338a0 x8 : ffff80815526ea70
[ 226.067871] x7 : 0000000000000000 x6 : 0000000031215155
[ 226.073178] x5 : 0000000000000001 x4 : 0000000000000000
[ 226.078485] x3 : ffff8081568f8800 x2 : 00000000000071b5
[ 226.083791] x1 : ffff8081568f8800 x0 : ffff8081568f8800
[ 226.089097] Call trace:
[ 226.091536] Exception stack(0xffff00000d2338d0 to 0xffff00000d233a10)
[ 226.097971] 38c0: ffff8081568f8800 ffff8081568f8800
[ 226.105796] 38e0: 00000000000071b5 ffff8081568f8800 0000000000000000 0000000000000001
[ 226.113622] 3900: 0000000031215155 0000000000000000 ffff80815526ea70 ffff00000d2338a0
[ 226.121446] 3920: 0000000000000810 0000000000000000 0000000000000115 000000000000019d
[ 226.129271] 3940: 071c71c71c71c71c 0000000000000004 ffff00000819b390 0000ffffa40fa580
[ 226.137096] 3960: 0000000000000000 0000000000000000 ffff8081568f8800 ffff00000857bea8
[ 226.144921] 3980: ffff808157681800 0000000000000002 ffff000008b97000 0000000000000006
[ 226.152745] 39a0: 00000000000041ed 0000000000000000 0000000000000000 ffff00000d233a10
[ 226.160570] 39c0: ffff00000857ba9c ffff00000d233a10 ffff00000857bebc 0000000060400145
[ 226.168395] 39e0: ffff00000d233a10 ffff00000857befc 0000ffffffffffff ffff00000890b06c
[ 226.176219] 3a00: ffff00000d233a10 ffff00000857bebc
[ 226.181089] [<ffff00000857bebc>] 0xffff00000857bebc
[ 226.185959] [<ffff00000857ba9c>] 0xffff00000857ba9c
[ 226.190829] [<ffff00000857bf48>] 0xffff00000857bf48
[ 226.195699] [<ffff00000857d91c>] 0xffff00000857d91c
[ 226.200569] [<ffff0000084a5a08>] 0xffff0000084a5a08
[ 226.205439] [<ffff0000084a8624>] 0xffff0000084a8624
[ 226.210309] [<ffff0000081a1714>] 0xffff0000081a1714
[ 226.215179] [<ffff000008199aec>] 0xffff000008199aec
[ 226.220049] [<ffff00000819aea4>] 0xffff00000819aea4
[ 226.224919] [<ffff0000081ac574>] 0xffff0000081ac574
[ 226.229789] [<ffff0000081adba0>] 0xffff0000081adba0
[ 226.234660] [<ffff00000819b2b0>] 0xffff00000819b2b0
[ 226.239530] [<ffff00000819b3a0>] 0xffff00000819b3a0
[ 226.244400] Exception stack(0xffff00000d233ec0 to 0xffff00000d234000)
[ 226.250835] 3ec0: ffffffffffffff9c 000000000046c748 0000000000121002 0000000000000000
[ 226.258659] 3ee0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[ 226.266484] 3f00: 0000000000000038 000000000000000a 000000000000002d 00000000ffffffff
[ 226.274310] 3f20: 000000006474e552 000000006474e551 0000000000800000 0000000000000004
[ 226.282136] 3f40: 0000000000468fd0 0000ffffa40fa580 0000000000000000 0000000000000038
[ 226.289960] 3f60: 0000ffffa4164b80 0000fffff7053d88 00000000004432a4 00000000000000f8
[ 226.297786] 3f80: 0000ffffa4164000 0000ffffa4164cb0 0000fffff7053d88 0000ffffa4164000
[ 226.305611] 3fa0: 0000ffffa4164000 0000fffff7053c50 0000ffffa4131364 0000fffff7053c50
[ 226.313436] 3fc0: 0000ffffa413084c 0000000040001000 ffffffffffffff9c 0000000000000038
[ 226.321260] 3fe0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[ 226.329083] [<ffff000008083a00>] 0xffff000008083a00
[ 226.333953] ---[ end trace f76003a8eed85472 ]---
[ 226.339137] Could not allocate MC portal
open() failed : Invalid argument
dprc.1/dpni.9 (interface: eth0, end point: dpmac.6)
dprc.1/dpni.8 (interface: eth1, end point: dpmac.5)
dprc.1/dpni.7 (interface: eth2, end point: dpmac.4)
dprc.1/dpni.6 (interface: eth3, end point: dpmac.3)
dprc.1/dpni.5 (interface: eth4, end point: dpmac.10)
dprc.1/dpni.4 (interface: eth5, end point: dpmac.9)
dprc.1/dpni.3 (interface: eth6, end point: dpmac.8)
dprc.1/dpni.2 (interface: eth7, end point: dpmac.7)
dprc.1/dpni.1 (interface: eth8, end point: dpmac.1)
dprc.1/dpni.0 (interface: eth9, end point: dpmac.2)
In order to create more, the DPNIs must be created with fewer entries in WRIOP tables, e.g. fs_entries=1 or use DPNI option DPNI_OPT_NO_FS.
restool dpni create --fs-entries=1
You can add the number of flow steering entries directly to the DPL..
Below is an example:
dpni@1 {
options = "DPNI_OPT_NO_FS";
fs_entries = <0x1>;
};