iproute2/man/man8
Dmytro Linkin 6c70aca76e devlink: Add port func rate support
Implement user commands to manage devlink port func rate objects.
List all rate commands:

    $ devlink port func rate help

or just

    $ devlink port func rate

To list all OR particular rate object:

    $ devlink port func rate show
    pci/0000:03:00.0/some_group: type node
    pci/0000:03:00.0/0: type leaf
    pci/0000:03:00.0/1: type leaf

    $ devlink prot func rate show pci/0000:03:00.0/1
    pci/0000:03:00.0/0: type leaf

    $ devlink prot func rate show pci/0000:03:00.0/some_group
    pci/0000:03:00.0/some_group: type node

Rate object of type "leaf" created by it's driver where name is the name
of corresponding devlink port. Rate object of type "node" represents
rate group created by the user using commands:

    $ devlink port func rate add pci/0000:03:00.0/some_group

or with defining tx rate limits

    $ devlink port func rate add pci/0000:03:00.0/some_group \
        tx_shara 10kbit tx_max 100mbit

NOTE: node name cannot be a decimal value because it conflicts with
devlink port indexes.

To delete node object:

    $ devlink port func rate del pci/0000:03:00.0/some_group

Set rate limits of existing rate object:

    $ devlink prot func rate set pci/0000:03:00.0/0 \
        tx_share 5MBps tx_max 25GBps

    $ devlink prot func rate set pci/0000:03:00.0/some_group \
        tx_share 0

Both SET and ADD commands accept any units of rates defined in IEC
60027-2 standard.

NOTE: rate value 0 means that rate is unlimited. Such value is also
ommited in show command output.

NOTE: In SHOW command output rate values will be printed with suffixes
as well, but in JSON output they are always units of Bps.

Set or unset parent of existing rate object:

    $ devlink prot func rate set pci/0000:03:00.0/0 parent some_group

    $ devlink port func rate set pci/0000:03:00.0/0 noparent

NOTE: Setting parent to empty ("") name due to kernel logic means unset
parent and shouldn't be used to avoid unexpected parent unsets.

Signed-off-by: Dmytro Linkin <dlinkin@nvidia.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: David Ahern <dsahern@kernel.org>
2021-06-12 04:38:06 +00:00
..
.gitignore man: add ip-netns(8) as generation target 2020-04-20 09:39:27 -07:00
Makefile man: replace $(NETNS_ETC_DIR) and $(NETNS_RUN_DIR) in ip-netns(8) 2020-04-20 09:39:27 -07:00
arpd.8 docs: make spacing consistent 2015-04-07 08:41:36 -07:00
bridge.8 bridge: monitor: add support for vlan monitoring 2021-04-22 05:13:39 +00:00
ctstat.8 iproute2 - Split up manual page installation 2012-04-12 09:47:19 -07:00
dcb-app.8 dcb: Add a subtool for the DCB APP object 2021-01-18 04:09:29 +00:00
dcb-buffer.8 dcb: Add a subtool for the DCB buffer object 2020-12-14 16:42:03 +00:00
dcb-dcbx.8 dcb: Add a subtool for the DCBX object 2021-01-18 04:09:29 +00:00
dcb-ets.8 man: dcb-ets: Remove an unnecessary empty line 2020-12-14 16:41:40 +00:00
dcb-maxrate.8 dcb: Add a subtool for the DCB maxrate object 2020-12-14 16:42:07 +00:00
dcb-pfc.8 dcb: Add a subtool for the DCB PFC object 2020-12-14 16:41:58 +00:00
dcb.8 dcb: Add a subtool for the DCB APP object 2021-01-18 04:09:29 +00:00
devlink-dev.8 devlink: Add devlink reload action and limit options 2020-12-09 02:40:00 +00:00
devlink-dpipe.8 man: add man page for devlink dpipe 2020-04-06 10:06:00 -07:00
devlink-health.8 devlink: Add health reporter test command support 2020-10-07 00:08:53 -06:00
devlink-monitor.8 devlink: Add devlink trap policer set and show commands 2020-03-31 23:24:35 +00:00
devlink-port.8 devlink: Add port func rate support 2021-06-12 04:38:06 +00:00
devlink-rate.8 devlink: Add port func rate support 2021-06-12 04:38:06 +00:00
devlink-region.8 man: Fix unequal number of .RS and .RE macros 2019-12-04 11:13:12 -08:00
devlink-resource.8 man: Fix unequal number of .RS and .RE macros 2019-12-04 11:13:12 -08:00
devlink-sb.8 man: Fix unequal number of .RS and .RE macros 2019-12-04 11:13:12 -08:00
devlink-trap.8 devlink: Document zero policer identifier 2020-07-06 11:14:24 -07:00
devlink.8 devlink.8: Use a single-font macro for a single argument 2020-07-06 11:00:34 -07:00
genl.8 genl: add manpage 2015-11-03 16:27:39 -08:00
ifcfg.8 man: Spelling fixes 2015-11-23 15:39:25 -08:00
ifstat.8 man: ifstat.8: Document --json and --pretty options 2018-08-16 10:25:02 -07:00
ip-address.8.in iproute2: ip addr: Add support for setting 'optimistic' 2020-05-31 23:01:33 +00:00
ip-addrlabel.8 man: ip-*.8: drop any reference to generic ip options 2016-03-02 11:23:53 -08:00
ip-fou.8 ip fou: Support binding FOU ports 2019-04-22 11:42:54 -07:00
ip-gue.8 iproute2: Man pages for fou and gue 2014-11-06 16:17:34 -08:00
ip-l2tp.8 ip/l2tp: remove offset and peer-offset options 2018-04-04 16:41:11 -07:00
ip-link.8.in ip: Add nodst option to macvlan type source 2021-04-28 15:45:59 +00:00
ip-macsec.8 man: fix spelling errors 2020-11-08 10:40:30 -08:00
ip-maddress.8 docs: make spacing consistent 2015-04-07 08:41:36 -07:00
ip-monitor.8 ipmonitor: Mention "nexthop" object in help and man page 2021-01-10 17:17:32 +00:00
ip-mptcp.8 mptcp: add support for event monitoring 2021-04-22 05:10:25 +00:00
ip-mroute.8 man: ip-*.8: drop any reference to generic ip options 2016-03-02 11:23:53 -08:00
ip-neighbour.8 man: fix spelling errors 2020-11-08 10:40:30 -08:00
ip-netconf.8 man: update netconf manual for new attributes 2016-03-21 12:15:58 -07:00
ip-netns.8.in man: replace $(NETNS_ETC_DIR) and $(NETNS_RUN_DIR) in ip-netns(8) 2020-04-20 09:39:27 -07:00
ip-nexthop.8 nexthop: Add support for nexthop buckets 2021-03-19 15:01:25 +00:00
ip-ntable.8 man: ip-ntable.8: Review synopsis section 2016-03-02 11:23:52 -08:00
ip-route.8.in seg6: add counters support for SRv6 Behaviors 2021-05-09 22:20:59 +00:00
ip-rule.8 iprule: Add tun_id filed in the selector 2018-12-31 22:13:13 -08:00
ip-sr.8 man: add documentation for IPv6 SR commands 2017-04-16 10:21:43 -07:00
ip-tcp_metrics.8 iproute2: add support for tcp_metrics 2012-10-08 10:23:07 -07:00
ip-token.8 ip, token: add del command 2016-05-31 12:10:29 -07:00
ip-tunnel.8 doc/man: spelling fixes 2018-10-18 13:15:45 -07:00
ip-vrf.8 ip: do not drop capabilities if net_admin=i is set 2018-05-14 21:07:34 -07:00
ip-xfrm.8 ip: xfrm: add support for tfcpad 2021-03-21 17:15:07 +00:00
ip.8 man: ip.8: add reference to mptcp man-page 2020-04-29 17:36:14 +00:00
lnstat.8 man: drop references to Debian-specific paths 2017-12-30 09:43:47 -08:00
nstat.8 iproute2 - Split up manual page installation 2012-04-12 09:47:19 -07:00
rdma-dev.8 rdma: Document adaptive-moderation 2019-08-02 09:30:56 -07:00
rdma-link.8 rdma: Document counter statistic 2019-07-19 10:51:13 -07:00
rdma-resource.8 rdma: Add SRQ resource tracking information 2021-04-28 15:37:16 +00:00
rdma-statistic.8 rdma: Document the new "pid" criteria for auto mode 2020-08-06 16:26:12 +00:00
rdma-system.8 rdma: Add man pages for rdma system commands 2019-05-31 15:10:31 -07:00
rdma.8 rdma: Add support to get QP in raw format 2020-07-05 18:11:00 +00:00
routef.8 iproute2 - Split up manual page installation 2012-04-12 09:47:19 -07:00
routel.8 man: routel/routef: don't mention filesystem paths 2017-12-30 09:43:47 -08:00
rtacct.8 misc: make the pattern matching case-insensitive 2020-07-20 13:29:55 -07:00
rtmon.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
rtpr.8 man: rtpr: Rename s/bash/shell/ 2018-12-18 10:52:35 -08:00
rtstat.8 iproute2 - Split up manual page installation 2012-04-12 09:47:19 -07:00
ss.8 ss: Add clarification about host conditions with multiple familes to man 2021-02-02 14:30:40 -08:00
tc-actions.8 man/tc-actions: fix formatting 2020-04-06 10:07:54 -07:00
tc-basic.8 tc: add a man page for basic filter 2015-10-23 15:37:26 -07:00
tc-bfifo.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
tc-bpf.8 Update tc-bpf.8 man page examples 2019-04-26 14:05:47 -07:00
tc-cake.8 tc-cake: update docs to include LE diffserv 2021-05-06 14:59:52 +00:00
tc-cbq-details.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
tc-cbq.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
tc-cbs.8 man: Fix typos on tc-cbs 2018-07-07 09:57:45 -07:00
tc-cgroup.8 tc: add a man page for cgroup filter 2015-10-23 15:37:26 -07:00
tc-choke.8 docs: make spacing consistent 2015-04-07 08:41:36 -07:00
tc-codel.8 tc: Add missing documentation for codel and fq_codel parameters 2018-03-13 18:05:35 -07:00
tc-connmark.8 tc: connmark, pedit: Rename BRANCH to CONTROL 2016-03-27 10:34:42 -07:00
tc-csum.8 man: tc-csum.8: Fix inconsistency in example description 2017-11-29 10:14:51 -08:00
tc-ct.8 man: fix spelling errors 2020-11-08 10:40:30 -08:00
tc-ctinfo.8 man: Fix unequal number of .RS and .RE macros 2019-12-04 11:13:12 -08:00
tc-drr.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
tc-ematch.8 man: tc-ematch.8: documented canid() ematch rule 2019-11-17 12:31:04 -08:00
tc-etf.8 tc: etf: Add documentation for skip_sock_check. 2019-07-18 15:47:02 -07:00
tc-ets.8 tc: Add support for ETS Qdisc 2020-01-18 21:54:12 +00:00
tc-flow.8 man/man8/tc-flow.8: minor corrections 2016-07-25 08:19:25 -07:00
tc-flower.8 tc: f_flower: Add option to match on related ct state 2021-05-27 14:39:14 +00:00
tc-fq.8 tc: fq: add support for JSON output 2019-12-29 09:57:27 -08:00
tc-fq_codel.8 tc: Add missing documentation for codel and fq_codel parameters 2018-03-13 18:05:35 -07:00
tc-fq_pie.8 tc: add support for FQ-PIE packet scheduler 2020-02-04 03:24:39 -08:00
tc-fw.8 tc: add a man page for fw filter 2015-10-23 15:37:26 -07:00
tc-gate.8 iproute2-next: add gate action man page 2020-05-13 02:20:12 +00:00
tc-hfsc.8 iproute2: unmangle netdev/my emails in man pages (hfsc, stab) 2016-07-06 21:07:23 -07:00
tc-htb.8 tc/htb: Hierarchical QoS hardware offload 2021-02-04 21:54:13 -07:00
tc-ife.8 man: tc-ife: add default type note 2017-08-30 08:26:46 -07:00
tc-matchall.8 man: fix spelling errors 2020-11-08 10:40:30 -08:00
tc-mirred.8 tc: m_mirred: Add support for ingress redirect/mirror 2016-10-26 11:20:47 -07:00
tc-mpls.8 tc-mpls: fix manpage example and help message string 2020-11-08 10:49:28 -08:00
tc-mqprio.8 man: Change numtc to num_tc 2018-09-10 11:47:11 -07:00
tc-nat.8 man: Add a man page for the nat action 2016-03-04 15:27:51 -08:00
tc-netem.8 man: tc-netem.8: fix URL for netem page 2019-07-02 17:44:51 -07:00
tc-pedit.8 man: tc-pedit: Drop the claim that pedit ex is only for IPv4 2020-04-09 14:39:59 +00:00
tc-pfifo.8 iproute2 - Split up manual page installation 2012-04-12 09:47:19 -07:00
tc-pfifo_fast.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
tc-pie.8 man: fix spelling errors 2020-11-08 10:40:30 -08:00
tc-police.8 police: add support for packet-per-second rate limiting 2021-03-30 03:04:50 +00:00
tc-prio.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
tc-red.8 tc: q_red: Add support for qevents "mark" and "early_drop" 2020-07-05 15:37:49 +00:00
tc-route.8 tc: add a man page for route filter 2015-10-23 15:37:26 -07:00
tc-sample.8 man: Fix unequal number of .RS and .RE macros 2019-12-04 11:13:12 -08:00
tc-sfb.8 man: fix spelling errors 2020-11-08 10:40:30 -08:00
tc-sfq.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
tc-simple.8 man: Fix unequal number of .RS and .RE macros 2019-12-04 11:13:12 -08:00
tc-skbedit.8 tc: document 'mask' parameter in skbedit man page 2019-07-09 17:31:16 -07:00
tc-skbmod.8 man: Fix unequal number of .RS and .RE macros 2019-12-04 11:13:12 -08:00
tc-skbprio.8 Fix warning in tc-skbprio.8 manpage 2018-11-09 08:03:40 -08:00
tc-stab.8 iproute2: unmangle netdev/my emails in man pages (hfsc, stab) 2016-07-06 21:07:23 -07:00
tc-taprio.8 man: tc-taprio.8: document the full offload feature 2021-02-02 14:12:27 -08:00
tc-tbf.8 man8: scrub trailing whitespace 2015-11-23 15:41:37 -08:00
tc-tcindex.8 tc: fix typo in tc-tcindex man page 2017-09-20 18:01:02 -07:00
tc-tunnel_key.8 man: fix spelling errors 2020-11-08 10:40:30 -08:00
tc-u32.8 man: Fix unequal number of .RS and .RE macros 2019-12-04 11:13:12 -08:00
tc-vlan.8 m_mpls: add mac_push action 2020-10-20 08:57:08 -06:00
tc-xt.8 man: Add a man page for the xt action 2016-03-04 15:27:51 -08:00
tc.8 tc: implement support for action terse dump 2020-12-03 03:51:06 +00:00
tipc-bearer.8 tipc: add the ability to get UDP bearer options 2016-09-01 08:34:35 -07:00
tipc-link.8 tipc: add link broadcast man page 2019-03-26 16:09:21 -07:00
tipc-media.8 tipc: add peer remove functionality 2016-08-29 10:33:24 -07:00
tipc-nametable.8 tipc: JSON support for showing nametable 2018-06-13 20:45:38 -07:00
tipc-node.8 tipc: add peer remove functionality 2016-08-29 10:33:24 -07:00
tipc-peer.8 tipc: add peer remove functionality 2016-08-29 10:33:24 -07:00
tipc-socket.8 man: Syntax and warning fixes 2015-11-23 15:39:25 -08:00
tipc.8 tipc: JSON support for showing nametable 2018-06-13 20:45:38 -07:00
vdpa-dev.8 vdpa: Add vdpa tool 2021-02-11 09:09:15 -07:00
vdpa-mgmtdev.8 vdpa: Add vdpa tool 2021-02-11 09:09:15 -07:00
vdpa.8 vdpa: Add vdpa tool 2021-02-11 09:09:15 -07:00