cxgbetool.8 (59daefd7eb0de158f06f8a4bb3af6d8ba3c487c0) | cxgbetool.8 (1131c927c4c388c75c728d443cab7ff0482a1c50) |
---|---|
1.\" Copyright (c) 2015, Chelsio Inc 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions are met: 6.\" 7.\" 1. Redistributions of source code must retain the above copyright notice, 8.\" this list of conditions and the following disclaimer. --- 17 unchanged lines hidden (view full) --- 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28.\" POSSIBILITY OF SUCH DAMAGE. 29.\" 30.\" * Other names and brands may be claimed as the property of others. 31.\" 32.\" $FreeBSD$ 33.\" | 1.\" Copyright (c) 2015, Chelsio Inc 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions are met: 6.\" 7.\" 1. Redistributions of source code must retain the above copyright notice, 8.\" this list of conditions and the following disclaimer. --- 17 unchanged lines hidden (view full) --- 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28.\" POSSIBILITY OF SUCH DAMAGE. 29.\" 30.\" * Other names and brands may be claimed as the property of others. 31.\" 32.\" $FreeBSD$ 33.\" |
34.Dd March 6, 2017 | 34.Dd April 13, 2018 |
35.Dt CXGBETOOL 8 36.Os 37.Sh NAME 38.Nm cxgbetool 39.Nd Userspace companion to 40.Xr cxgbe 4 41.Sh SYNOPSIS 42.Bl -item -compact --- 16 unchanged lines hidden (view full) --- 59.Nm Ar nexus Cm loadcfg Ar fw-config.txt 60.It 61.Nm Ar nexus Cm loadcfg clear 62.It 63.Nm Ar nexus Cm loadfw Ar fw-image.bin 64.It 65.Nm Ar nexus Cm memdump Ar addr len 66.It | 35.Dt CXGBETOOL 8 36.Os 37.Sh NAME 38.Nm cxgbetool 39.Nd Userspace companion to 40.Xr cxgbe 4 41.Sh SYNOPSIS 42.Bl -item -compact --- 16 unchanged lines hidden (view full) --- 59.Nm Ar nexus Cm loadcfg Ar fw-config.txt 60.It 61.Nm Ar nexus Cm loadcfg clear 62.It 63.Nm Ar nexus Cm loadfw Ar fw-image.bin 64.It 65.Nm Ar nexus Cm memdump Ar addr len 66.It |
67.Nm Ar nexus Cm policy Ar cop.txt 68.It 69.Nm Ar nexus Cm policy clear 70.It |
|
67.Nm Ar nexus Bro Cm reg | reg64 Brc Ar addr Ns Op Ar =val 68.It 69.Nm Ar nexus Cm regdump Op Ar register-block ... 70.It 71.Nm Ar nexus Cm sched-class Ar sub-command Op Ar param Ar value 72.It 73.Nm Ar nexus Cm sched-queue Ar port Ar queue Ar class 74.It --- 298 unchanged lines hidden (view full) --- 373to the card. 374.It Cm memdump Ar addr len 375Display 376.Ar len 377bytes of data of the card's memory starting at 378.Ar addr Ns . 379The card's memory map is available in 380.Va dev.t4nex.%d.misc.meminfo Ns . | 71.Nm Ar nexus Bro Cm reg | reg64 Brc Ar addr Ns Op Ar =val 72.It 73.Nm Ar nexus Cm regdump Op Ar register-block ... 74.It 75.Nm Ar nexus Cm sched-class Ar sub-command Op Ar param Ar value 76.It 77.Nm Ar nexus Cm sched-queue Ar port Ar queue Ar class 78.It --- 298 unchanged lines hidden (view full) --- 377to the card. 378.It Cm memdump Ar addr len 379Display 380.Ar len 381bytes of data of the card's memory starting at 382.Ar addr Ns . 383The card's memory map is available in 384.Va dev.t4nex.%d.misc.meminfo Ns . |
385.It Cm policy Ar cop.txt 386Install the Connection Offload Policy (COP) in 387.Ar cop.txt Ns . 388A COP offers fine-grained control over which connections get offloaded and with 389what parameters. 390Set 391.Cm hw.cxgbe.cop_managed_offloading="1" 392in loader.conf to ensure that t4_tom will not offload any connection before a 393COP is installed. 394Note that t4_tom must be loaded and operational (IFCAP_TOE enabled) as always 395for any kind of offload based on the hardware TOE. 396.Bl -column -offset indent "COP installed" "cop_managed_offloading" "Behavior" 397.It Sy COP installed Ta Sy cop_managed_offloading Ta Sy Behavior 398.It NO Ta 0 Ta offload all [Default] 399.It NO Ta 1 Ta no offload 400.It YES Ta Don't Care Ta Rule based offload 401.El 402.Pp 403The policy file consists of empty lines, comments (lines begining with #) and 404any number of rules. 405Rules are applied in the order they appear in the file and processing stops at 406the first match. 407There is an implicit rule that disables offload for connections that do not 408match anything in the policy. 409.Pp 410Each rule consists of a filter part, which determines what connections the 411rule applies to, and a settings part, which determines whether whether matching 412connections will be offloaded and, if so, with what settings. 413The general form of a rule is 414.Bl -ohang -offset indent 415.It Cm \&[ Ar socket-type Cm \&] Ar pcap-filter Cm => Ar settings 416.Pp 417.Ar socket-type 418is one of the following. 419.Bl -tag -width "X" -compact 420.It Sy A 421Active open. 422Connection is being opened by this host. 423.It Sy P 424Passive open. 425Connection was requested by a peer. 426.It Sy L 427Listen called on a socket. 428Disabling offload in such a rule will prevent a hardware listener from being started. 429.It Sy D 430Don't care. 431Matches all of the above. 432.El 433.Pp 434.Ar pcap-filter 435is an expression that follows the 436.Xr pcap-filter 7 437syntax, or it is the keyword 438.Cm all 439that matches everything. 440.Pp 441.Ar settings 442determine whether connections matching 443.Ar socket-type 444and 445.Ar pcap-filter 446are offloaded and optionally sets some per-connection properties if they are. 447A combination of the following is allowed. 448.Bl -tag -width "timestamp" -compact 449.It Cm offload 450Connection should be offloaded. 451Use 452.Cm !offload 453or 454.Cm not offload 455to disable offload instead. 456.It Cm coalesce 457Enable rx payload coalescing. 458Negate to disable. 459.It Cm timestamp 460Enable TCP timestamp option. 461Negate to disable. 462.It Cm sack 463Enable TCP Selective Acknowledgements (SACK). 464Negate to disable. 465.It Cm nagle 466Enable Nagle's algorithm. 467Negate to disable. 468.It Cm ecn 469Enable Explicit Congestion Notification (ECN). 470Negate to disable. 471.It Cm ddp 472Use Direct Data Placement (zero copy receive) and zero copy transmit on the 473connection to service AIO requests on the socket. 474Negate to disable. 475.It Cm tls 476Set ULP mode to ULP_MODE_TLS. 477.It Cm cong Ar algo 478Use the specified congestion control algorithm. 479.Ar algo 480must be one of 481.Cm reno Ns , Cm tahoe Ns , Cm newreno Ns , or Cm highspeed Ns . 482.It Cm class Ar sc 483Bind the connection to the specified tx scheduling class. 484Valid range is 0 to 14 (for T4) and 0 to 15 (T5 onwards). 485.It Cm rxq Ar qid 486Use the specified offload rx queue. 487.Ar qid 488should be between 0 and nofldrxq for the ifnet. 489.It Cm txq Ar qnum 490Use the specified offload tx queue. 491.Ar qid 492should be between 0 and nofldtxq for the ifnet. 493.It Cm bind Ar qnum 494Shorthand for 495.Cm rxq Ar qnum Cm txq Ar qnum Ns . 496Use only when nofldrxq is the same as nofldtxq. 497.It Cm mss Ar val 498Set the advertised TCP MSS in the SYN for this connection to 499.Ar val 500(in bytes). 501The hardware MTU table must already have an entry that is suitable for the MSS. 502.El 503.Pp 504.It Example of a COP. 505Note that hardware listener for port 22 will be IPv4 only because the rule 506before it will prevent any IPv6 servers other than the first two. Also note 507that outgoing connections to 192.168/16 are the only outgoing connections that 508will get offloaded. 509.Bd -literal 510[L] port 80 => offload 511[L] port 443 => offload 512[L] ip6 => !offload 513[L] port 22 => offload 514[P] dst port 80 => offload cong highspeed !sack !ecn 515[P] dst port 443 => offload tls 516[A] dst net 192.168/16 => offload 517[A] all => !offload 518[D] port 22 => offload !nagle 519.Ed 520.El 521.It Cm policy clear 522Remove the Connection Offload Policy (COP) if one is in use. |
|
381.It Bro Cm reg | reg64 Brc Ar addr Ns Op Ar =val 382.It Cm regdump Op Ar register-block ... 383Display contents of device registers. 384One or more 385.Ar register-block 386can be specified to limit the registers displayed. 387The default is to display registers for all blocks. 388Registers with read side effects are not read during a --- 119 unchanged lines hidden --- | 523.It Bro Cm reg | reg64 Brc Ar addr Ns Op Ar =val 524.It Cm regdump Op Ar register-block ... 525Display contents of device registers. 526One or more 527.Ar register-block 528can be specified to limit the registers displayed. 529The default is to display registers for all blocks. 530Registers with read side effects are not read during a --- 119 unchanged lines hidden --- |