You can get diagnostic information about SHRUB.
Determining Which Controllers Are Running
To determine which controllers are running, you can list which processes are running:
$ pgrep -af shrub_controller
98940 /sbin/shrub_controller -c 1 -D -K
Alternatively you can check which controllers have created domain sockets:
$ ls /run/onload/
controller-1
Using onload_shrubdump
You can use onload_shrubdump to output diagnostic information.
The output below is an example of the output from onload_shrubdump
for Onload-9.1. The format and details provided are likely to
change in future releases. In the event of problems with SHRUB, open a technical
support case via support-nic@amd.com and include this output.
At present, the dump must be run for a specified controller number.
$ onload_shrubdump -i 1
---------------------------------------------------------
shrub controller
name: controller-1
dir: /run/onload/controller-1/
config socket: /run/onload/controller-1/shrub_config
---------------------------------------------------------
shrub server
ifindex: 23 hwports: 5
buffer count: 4 client count: 6 token: 2
vi: 512 active_qs: 0
---------------------------------------------------------
shrub server
ifindex: 22 hwports: 4
buffer count: 4 client count: 6 token: 1
vi: 512 active_qs: 1
rxq[0]: hw: 0
sbseq: 2297215 free_head: -1 fifo_head: 1
tail_hw: -1 tail_sw: -1 count_hw: 0 count_sw: 0
---------------------------------------------------------
controller statistics:
client negotiation failures: 0
accept failures: 0
response send failures: 0
incompatible clients detected: 0