From: Kefu Chai Date: Sat, 29 Apr 2017 05:26:36 +0000 (+0800) Subject: msg/async: refactor NetHandler::set_priority() to sync with msg/simple X-Git-Tag: v12.0.3~160^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=9658ff21f067b66b6bcb69958cf53b21fb737736;p=ceph-ci.git msg/async: refactor NetHandler::set_priority() to sync with msg/simple so it's sync'ed with Pipe::set_socket_options() Signed-off-by: Kefu Chai --- diff --git a/src/msg/async/net_handler.cc b/src/msg/async/net_handler.cc index d43e6a45a01..5a138d9a5b6 100644 --- a/src/msg/async/net_handler.cc +++ b/src/msg/async/net_handler.cc @@ -132,25 +132,24 @@ void NetHandler::set_priority(int sd, int prio, int domain) #ifdef IPTOS_CLASS_CS6 int iptos = IPTOS_CLASS_CS6; int r = -1; - if (domain == AF_INET) { + switch (domain) { + case AF_INET: r = ::setsockopt(sd, IPPROTO_IP, IP_TOS, &iptos, sizeof(iptos)); - if (r < 0) { - r = errno; - ldout(cct,0) << "couldn't set IP_TOS to " << iptos - << ": " << cpp_strerror(r) << dendl; - } - } else if (domain == AF_INET6) { + break; + case AF_INET6: r = ::setsockopt(sd, IPPROTO_IPV6, IPV6_TCLASS, &iptos, sizeof(iptos)); - if (r < 0) { - r = errno; - ldout(cct,0) << "couldn't set IPV6_TCLASS to " << iptos - << ": " << cpp_strerror(r) << dendl; - } - } else { + break; + default: lderr(cct) << "couldn't set ToS of unknown family (" << domain << ")" << " to " << iptos << dendl; return; } + if (r < 0) { + r = errno; + ldout(cct,0) << "couldn't set TOS to " << iptos + << ": " << cpp_strerror(r) << dendl; + } + #endif // IPTOS_CLASS_CS6 // setsockopt(IPTOS_CLASS_CS6) sets the priority of the socket as 0. // See http://goo.gl/QWhvsD and http://goo.gl/laTbjT