Blame man/man8/devlink-sb.8

Packit d3f73b
.TH DEVLINK\-SB 8 "14 Apr 2016" "iproute2" "Linux"
Packit d3f73b
.SH NAME
Packit d3f73b
devlink-sb \- devlink shared buffer configuration
Packit d3f73b
.SH SYNOPSIS
Packit d3f73b
.sp
Packit d3f73b
.ad l
Packit d3f73b
.in +8
Packit d3f73b
.ti -8
Packit d3f73b
.B devlink
Packit d3f73b
.RI "[ " OPTIONS " ]"
Packit d3f73b
.B sb
Packit d3f73b
.RI  " { " COMMAND " | "
Packit d3f73b
.BR help " }"
Packit d3f73b
.sp
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.IR OPTIONS " := { "
Packit d3f73b
\fB\-V\fR[\fIersion\fR] |
Packit d3f73b
\fB\-n\fR[\fIno-nice-names\fR] }
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BR "devlink sb show "
Packit d3f73b
.RI "[ " DEV " [ "
Packit d3f73b
.B sb
Packit d3f73b
.IR SB_INDEX " ] ]"
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BR "devlink sb pool show "
Packit d3f73b
.RI "[ " DEV " [ "
Packit d3f73b
.B sb
Packit d3f73b
.IR SB_INDEX " ] "
Packit d3f73b
.br
Packit d3f73b
.B pool
Packit d3f73b
.IR POOL_INDEX " ]"
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BI "devlink sb pool set " DEV "
Packit d3f73b
.RB "[ " sb
Packit d3f73b
.IR SB_INDEX " ] "
Packit d3f73b
.br
Packit d3f73b
.BI pool " POOL_INDEX "
Packit d3f73b
.br
Packit d3f73b
.BI size " POOL_SIZE "
Packit d3f73b
.br
Packit d3f73b
.BR thtype " { " static " | " dynamic " }"
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BR "devlink sb port pool show "
Packit d3f73b
.RI "[ " DEV/PORT_INDEX " [ "
Packit d3f73b
.B sb
Packit d3f73b
.IR SB_INDEX " ] "
Packit d3f73b
.br
Packit d3f73b
.B pool
Packit d3f73b
.IR POOL_INDEX " ]"
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BI "devlink sb port pool set " DEV/PORT_INDEX "
Packit d3f73b
.RB "[ " sb
Packit d3f73b
.IR SB_INDEX " ] "
Packit d3f73b
.br
Packit d3f73b
.BI pool " POOL_INDEX "
Packit d3f73b
.br
Packit d3f73b
.BI th " THRESHOLD "
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BR "devlink sb tc bind show "
Packit d3f73b
.RI "[ " DEV/PORT_INDEX " [ "
Packit d3f73b
.B sb
Packit d3f73b
.IR SB_INDEX " ] "
Packit d3f73b
.br
Packit d3f73b
.BI tc " TC_INDEX "
Packit d3f73b
.br
Packit d3f73b
.B type
Packit d3f73b
.RB "{ " ingress " | " egress " } ]"
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BI "devlink sb tc bind set " DEV/PORT_INDEX "
Packit d3f73b
.RB "[ " sb
Packit d3f73b
.IR SB_INDEX " ] "
Packit d3f73b
.br
Packit d3f73b
.BI tc " TC_INDEX "
Packit d3f73b
.br
Packit d3f73b
.BR type " { " ingress " | " egress " }"
Packit d3f73b
.br
Packit d3f73b
.BI pool " POOL_INDEX "
Packit d3f73b
.br
Packit d3f73b
.BI th " THRESHOLD "
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BR "devlink sb occupancy show "
Packit d3f73b
.RI "{ " DEV " | " DEV/PORT_INDEX " } [ "
Packit d3f73b
.B sb
Packit d3f73b
.IR SB_INDEX " ] "
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BR "devlink sb occupancy snapshot "
Packit d3f73b
.IR DEV " [ "
Packit d3f73b
.B sb
Packit d3f73b
.IR SB_INDEX " ]"
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.BR "devlink sb occupancy clearmax "
Packit d3f73b
.IR DEV " [ "
Packit d3f73b
.B sb
Packit d3f73b
.IR SB_INDEX " ]"
Packit d3f73b
Packit d3f73b
.ti -8
Packit d3f73b
.B devlink sb help
Packit d3f73b
Packit d3f73b
.SH "DESCRIPTION"
Packit d3f73b
.SS devlink sb show - display available shared buffers and their attributes
Packit d3f73b
Packit d3f73b
.PP
Packit d3f73b
.I "DEV"
Packit d3f73b
- specifies the devlink device to show shared buffers.
Packit d3f73b
If this argument is omitted all shared buffers of all devices are listed.
Packit d3f73b
Packit d3f73b
.PP
Packit d3f73b
.I "SB_INDEX"
Packit d3f73b
- specifies the shared buffer.
Packit d3f73b
If this argument is omitted shared buffer with index 0 is selected.
Packit d3f73b
Behaviour of this argument it the same for every command.
Packit d3f73b
Packit d3f73b
.SS devlink sb pool show - display available pools and their attributes
Packit d3f73b
Packit d3f73b
.PP
Packit d3f73b
.I "DEV"
Packit d3f73b
- specifies the devlink device to show pools.
Packit d3f73b
If this argument is omitted all pools of all devices are listed.
Packit d3f73b
Packit d3f73b
Display available pools listing their
Packit d3f73b
.B type, size, thtype
Packit d3f73b
and
Packit d3f73b
.B cell_size. cell_size
Packit d3f73b
is the allocation granularity of memory within the shared buffer. Drivers
Packit d3f73b
may round up, round down or reject
Packit d3f73b
.B size
Packit d3f73b
passed to the set command if it is not multiple of
Packit d3f73b
.B cell_size.
Packit d3f73b
Packit d3f73b
.SS devlink sb pool set - set attributes of pool
Packit d3f73b
Packit d3f73b
.PP
Packit d3f73b
.I "DEV"
Packit d3f73b
- specifies the devlink device to set pool.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BI size " POOL_SIZE"
Packit d3f73b
size of the pool in Bytes.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BR thtype " { " static " | " dynamic " } "
Packit d3f73b
pool threshold type.
Packit d3f73b
Packit d3f73b
.I static
Packit d3f73b
- Threshold values for the pool will be passed in Bytes.
Packit d3f73b
Packit d3f73b
.I dynamic
Packit d3f73b
- Threshold values ("to_alpha") for the pool will be used to compute alpha parameter according to formula:
Packit d3f73b
.br
Packit d3f73b
.in +16
Packit d3f73b
alpha = 2 ^ (to_alpha - 10)
Packit d3f73b
.in -16
Packit d3f73b
Packit d3f73b
.in +10
Packit d3f73b
The range of the passed value is between 0 to 20. The computed alpha is used to determine the maximum usage of the flow:
Packit d3f73b
.in -10
Packit d3f73b
.br
Packit d3f73b
.in +16
Packit d3f73b
max_usage = alpha / (1 + alpha) * Free_Buffer
Packit d3f73b
.in -16
Packit d3f73b
Packit d3f73b
.SS devlink sb port pool show - display port-pool combinations and threshold for each
Packit d3f73b
.I "DEV/PORT_INDEX"
Packit d3f73b
- specifies the devlink port.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BI pool " POOL_INDEX"
Packit d3f73b
pool index.
Packit d3f73b
Packit d3f73b
.SS devlink sb port pool set - set port-pool threshold
Packit d3f73b
.I "DEV/PORT_INDEX"
Packit d3f73b
- specifies the devlink port.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BI pool " POOL_INDEX"
Packit d3f73b
pool index.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BI th " THRESHOLD"
Packit d3f73b
threshold value. Type of the value is either Bytes or "to_alpha", depends on
Packit d3f73b
.B thtype
Packit d3f73b
set for the pool.
Packit d3f73b
Packit d3f73b
.SS devlink sb tc bind show - display port-TC to pool bindings and threshold for each
Packit d3f73b
Packit d3f73b
.I "DEV/PORT_INDEX"
Packit d3f73b
- specifies the devlink port.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BI tc " TC_INDEX"
Packit d3f73b
index of either ingress or egress TC, usually in range 0 to 8 (depends on device).
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BR type " { " ingress " | " egress " } "
Packit d3f73b
TC type.
Packit d3f73b
Packit d3f73b
.SS devlink sb tc bind set - set port-TC to pool binding with specified threshold
Packit d3f73b
Packit d3f73b
.I "DEV/PORT_INDEX"
Packit d3f73b
- specifies the devlink port.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BI tc " TC_INDEX"
Packit d3f73b
index of either ingress or egress TC, usually in range 0 to 8 (depends on device).
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BR type " { " ingress " | " egress " } "
Packit d3f73b
TC type.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BI pool " POOL_INDEX"
Packit d3f73b
index of pool to bind this to.
Packit d3f73b
Packit d3f73b
.TP
Packit d3f73b
.BI th " THRESHOLD"
Packit d3f73b
threshold value. Type of the value is either Bytes or "to_alpha", depends on
Packit d3f73b
.B thtype
Packit d3f73b
set for the pool.
Packit d3f73b
Packit d3f73b
.SS devlink sb occupancy show - display shared buffer occupancy values for device or port
Packit d3f73b
Packit d3f73b
.PP
Packit d3f73b
This command is used to browse shared buffer occupancy values. Values are showed for every port-pool combination as well as for all port-TC combinations (with pool this port-TC is bound to). Format of value is:
Packit d3f73b
.br
Packit d3f73b
.in +16
Packit d3f73b
current_value/max_value
Packit d3f73b
.in -16
Packit d3f73b
Note that before showing values, one has to issue
Packit d3f73b
.B occupancy snapshot
Packit d3f73b
command first.
Packit d3f73b
Packit d3f73b
.PP
Packit d3f73b
.I "DEV"
Packit d3f73b
- specifies the devlink device to show occupancy values for.
Packit d3f73b
Packit d3f73b
.I "DEV/PORT_INDEX"
Packit d3f73b
- specifies the devlink port to show occupancy values for.
Packit d3f73b
Packit d3f73b
.SS devlink sb occupancy snapshot - take occupancy snapshot of shared buffer for device
Packit d3f73b
This command is used to take a snapshot of shared buffer occupancy values. After that, the values can be showed using
Packit d3f73b
.B occupancy show
Packit d3f73b
command.
Packit d3f73b
Packit d3f73b
.PP
Packit d3f73b
.I "DEV"
Packit d3f73b
- specifies the devlink device to take occupancy snapshot on.
Packit d3f73b
Packit d3f73b
.SS devlink sb occupancy clearmax - clear occupancy watermarks of shared buffer for device
Packit d3f73b
This command is used to reset maximal occupancy values reached for whole device. Note that before browsing reset values, one has to issue
Packit d3f73b
.B occupancy snapshot
Packit d3f73b
command.
Packit d3f73b
Packit d3f73b
.PP
Packit d3f73b
.I "DEV"
Packit d3f73b
- specifies the devlink device to clear occupancy watermarks on.
Packit d3f73b
Packit d3f73b
.SH "EXAMPLES"
Packit d3f73b
.PP
Packit d3f73b
devlink sb show
Packit d3f73b
.RS 4
Packit d3f73b
List available share buffers.
Packit d3f73b
.RE
Packit d3f73b
.PP
Packit d3f73b
devlink sb pool show
Packit d3f73b
.RS 4
Packit d3f73b
List available pools and their config.
Packit d3f73b
.RE
Packit d3f73b
.PP
Packit d3f73b
devlink sb port pool show pci/0000:03:00.0/1 pool 0
Packit d3f73b
.RS 4
Packit d3f73b
Show port-pool setup for specified port and pool.
Packit d3f73b
.RE
Packit d3f73b
.PP
Packit d3f73b
sudo devlink sb port pool set pci/0000:03:00.0/1 pool 0 th 15
Packit d3f73b
.RS 4
Packit d3f73b
Change threshold for port specified port and pool.
Packit d3f73b
.RE
Packit d3f73b
.PP
Packit d3f73b
devlink sb tc bind show pci/0000:03:00.0/1 tc 0 type ingress
Packit d3f73b
.RS 4
Packit d3f73b
Show pool binding and threshold for specified port and TC.
Packit d3f73b
.RE
Packit d3f73b
.PP
Packit d3f73b
sudo devlink sb tc bind set pci/0000:03:00.0/1 tc 0 type ingress pool 0 th 9
Packit d3f73b
.RS 4
Packit d3f73b
Set pool binding and threshold for specified port and TC.
Packit d3f73b
.RE
Packit d3f73b
.PP
Packit d3f73b
sudo devlink sb occupancy snapshot pci/0000:03:00.0
Packit d3f73b
.RS 4
Packit d3f73b
Make a snapshot of occupancy of shared buffer for specified devlink device.
Packit d3f73b
.RE
Packit d3f73b
.PP
Packit d3f73b
devlink sb occupancy show pci/0000:03:00.0/1
Packit d3f73b
.RS 4
Packit d3f73b
Show occupancy for specified port from the snapshot.
Packit d3f73b
.RE
Packit d3f73b
.PP
Packit d3f73b
sudo devlink sb occupancy clearmax pci/0000:03:00.0
Packit d3f73b
.RS 4
Packit d3f73b
Clear watermarks for shared buffer of specified devlink device.
Packit d3f73b
Packit d3f73b
Packit d3f73b
.SH SEE ALSO
Packit d3f73b
.BR devlink (8),
Packit d3f73b
.BR devlink-dev (8),
Packit d3f73b
.BR devlink-port (8),
Packit d3f73b
.BR devlink-monitor (8),
Packit d3f73b
.br
Packit d3f73b
Packit d3f73b
.SH AUTHOR
Packit d3f73b
Jiri Pirko <jiri@mellanox.com>