When exporting ifnet via sysctl, add ifqueue(9) drop count to the

ifi_oqdrops. This is a temporary workaround until ifqueue(9) vanishes.

While here, remove the pointless ifi_vhid assignment. It has
sense only when we are exporting ifaddrs, not ifnets.

Sponsored by:	Netflix
Sponsored by:	Nginx, Inc.
This commit is contained in:
Gleb Smirnoff 2014-03-19 06:08:03 +00:00
parent d7ac87d3a3
commit 2d70c0ded1
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=263333

View File

@ -1598,9 +1598,8 @@ sysctl_iflist_ifml(struct ifnet *ifp, struct rt_addrinfo *info,
*ifd = ifp->if_data;
/* Fixup if_data carp(4) vhid. */
if (carp_get_vhid_p != NULL)
ifd->ifi_vhid = (*carp_get_vhid_p)(ifp->if_addr);
/* Some drivers still use ifqueue(9), add its stats. */
ifd->ifi_oqdrops += ifp->if_snd.ifq_drops;
return (SYSCTL_OUT(w->w_req, (caddr_t)ifm, len));
}
@ -1633,9 +1632,9 @@ sysctl_iflist_ifm(struct ifnet *ifp, struct rt_addrinfo *info,
}
*ifd = ifp->if_data;
/* Fixup if_data carp(4) vhid. */
if (carp_get_vhid_p != NULL)
ifd->ifi_vhid = (*carp_get_vhid_p)(ifp->if_addr);
/* Some drivers still use ifqueue(9), add its stats. */
ifd->ifi_oqdrops += ifp->if_snd.ifq_drops;
return (SYSCTL_OUT(w->w_req, (caddr_t)ifm, len));
}