Instrument the IP input queue with two new read-only MIB entries:

net.inet.ip.intr-queue-maxlen (=== ipintrq.ifq_maxlen)
and	net.inet.ip.intr-queue-drops (=== ipintrq.ifq_drops)

There should probably be a standard way of getting the same information
going the other way.
This commit is contained in:
Garrett Wollman 1995-11-01 17:18:27 +00:00
parent 58fe9a2131
commit 054ef37088
2 changed files with 12 additions and 3 deletions

View File

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)in.h 8.3 (Berkeley) 1/3/94
* $Id: in.h,v 1.10 1995/06/13 17:51:08 wollman Exp $
* $Id: in.h,v 1.11 1995/07/18 09:56:42 peter Exp $
*/
#ifndef _NETINET_IN_H_
@ -233,7 +233,9 @@ struct ip_mreq {
#define IPCTL_RTMAXCACHE 7 /* trigger level for dynamic expire */
#define IPCTL_SOURCEROUTE 8 /* may perform source routes */
#define IPCTL_DIRECTEDBROADCAST 9 /* may re-broadcast received packets */
#define IPCTL_MAXID 10
#define IPCTL_INTRQMAXLEN 10 /* max length of netisr queue */
#define IPCTL_INTRQDROPS 11 /* number of netisr q drops */
#define IPCTL_MAXID 12
#define IPCTL_NAMES { \
{ 0, 0 }, \
@ -246,6 +248,8 @@ struct ip_mreq {
{ "rtmaxcache", CTLTYPE_INT }, \
{ "sourceroute", CTLTYPE_INT }, \
{ "directed-broadcast", CTLTYPE_INT }, \
{ "intr-queue-maxlen", CTLTYPE_INT }, \
{ "intr-queue-drops", CTLTYPE_INT }, \
}

View File

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ip_input.c 8.2 (Berkeley) 1/4/94
* $Id: ip_input.c,v 1.25 1995/07/09 14:29:46 davidg Exp $
* $Id: ip_input.c,v 1.26 1995/07/18 09:56:44 peter Exp $
*/
#include <sys/param.h>
@ -1228,6 +1228,11 @@ ip_sysctl(name, namelen, oldp, oldlenp, newp, newlen)
case IPCTL_RTMAXCACHE:
return (sysctl_int(oldp, oldlenp, newp, newlen,
&rtq_toomany));
case IPCTL_INTRQMAXLEN:
return (sysctl_rdint(oldp, oldlenp, newp,
ipintrq.ifq_maxlen));
case IPCTL_INTRQDROPS:
return (sysctl_rdint(oldp, oldlenp, newp, ipintrq.ifq_drops));
default:
return (EOPNOTSUPP);
}