diff options
author | hselasky <hselasky@FreeBSD.org> | 2018-05-19 19:09:41 +0000 |
---|---|---|
committer | Luiz Souza <luiz@netgate.com> | 2018-05-29 15:29:56 -0300 |
commit | d7fea2429d3ab9292921b2c44b2dec15085e04d0 (patch) | |
tree | 83a263190eb232e2d024097eb7e5a3ad16efb71a | |
parent | 84d94ff0f4572549f04f75dcaf69b66e9a928be4 (diff) | |
download | FreeBSD-src-d7fea2429d3ab9292921b2c44b2dec15085e04d0.zip FreeBSD-src-d7fea2429d3ab9292921b2c44b2dec15085e04d0.tar.gz |
MFC r333623:
Add support for setting type of service, TOS, for outgoing RDMA connections
in the krping kernel test utility.
Approved by: re (gjb)
Sponsored by: Mellanox Technologies
-rw-r--r-- | sys/contrib/rdma/krping/krping.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/contrib/rdma/krping/krping.c b/sys/contrib/rdma/krping/krping.c index 20cd1c5..e975883 100644 --- a/sys/contrib/rdma/krping/krping.c +++ b/sys/contrib/rdma/krping/krping.c @@ -96,6 +96,7 @@ static const struct krping_option krping_opts[] = { {"rlat", OPT_NOPARAM, 'L'}, {"bw", OPT_NOPARAM, 'B'}, {"duplex", OPT_NOPARAM, 'd'}, + {"tos", OPT_INT, 't'}, {"txdepth", OPT_INT, 'T'}, {"poll", OPT_NOPARAM, 'P'}, {"local_dma_lkey", OPT_NOPARAM, 'Z'}, @@ -234,6 +235,7 @@ struct krping_cb { int txdepth; /* SQ depth */ int local_dma_lkey; /* use 0 for lkey */ int frtest; /* reg test */ + int tos; /* type of service */ /* CM stuff */ struct rdma_cm_id *cm_id; /* connection on client side,*/ @@ -1918,6 +1920,10 @@ static void krping_run_client(struct krping_cb *cb) struct ib_recv_wr *bad_wr; int ret; + /* set type of service, if any */ + if (cb->tos != 0) + rdma_set_service_type(cb->cm_id, cb->tos); + ret = krping_bind_client(cb); if (ret) return; @@ -2097,6 +2103,10 @@ int krping_doit(char *cmd) case 'I': cb->server_invalidate = 1; break; + case 't': + cb->tos = optint; + DEBUG_LOG("type of service, tos=%d\n", (int) cb->tos); + break; case 'T': cb->txdepth = optint; DEBUG_LOG("txdepth %d\n", (int) cb->txdepth); |