.lkp_value = "timeout",
.lkp_data_type = NLA_U32
},
+ [LNET_NET_SOCKLND_TUNABLES_ATTR_LND_TOS] = {
+ .lkp_value = "tos",
+ .lkp_data_type = NLA_S16,
+ },
},
};
tun->lnd_tun_u.lnd_sock.lnd_conns_per_peer);
nla_put_u32(msg, LNET_NET_SOCKLND_TUNABLES_ATTR_LND_TIMEOUT,
ksocknal_timeout());
+ nla_put_s16(msg, LNET_NET_SOCKLND_TUNABLES_ATTR_LND_TOS,
+ tun->lnd_tun_u.lnd_sock.lnd_tos);
return 0;
}
case LNET_NET_SOCKLND_TUNABLES_ATTR_LND_TIMEOUT:
num = nla_get_s64(attr);
tunables->lnd_tun_u.lnd_sock.lnd_timeout = num;
+ break;
+ case LNET_NET_SOCKLND_TUNABLES_ATTR_LND_TOS:
+ num = nla_get_s64(attr);
+ clamp_t(s64, num, -1, 0xff);
+ tunables->lnd_tun_u.lnd_sock.lnd_tos = num;
fallthrough;
default:
break;
* response has been sent.
*/
if (rc == 0)
- rc = ksocknal_lib_setup_sock(sock);
+ rc = ksocknal_lib_setup_sock(sock, ni);
write_lock_bh(global_lock);