This commit is contained in:
purplerain 2023-05-13 14:25:18 +00:00
parent f609457dcf
commit 62073e0295
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
318 changed files with 8112 additions and 4346 deletions

View file

@ -1,4 +1,4 @@
/* $OpenBSD: uipc_mbuf.c,v 1.284 2022/08/14 01:58:28 jsg Exp $ */
/* $OpenBSD: uipc_mbuf.c,v 1.285 2023/05/05 01:19:51 bluhm Exp $ */
/* $NetBSD: uipc_mbuf.c,v 1.15.4.1 1996/06/13 17:11:44 cgd Exp $ */
/*
@ -1776,6 +1776,14 @@ mq_hdatalen(struct mbuf_queue *mq)
return (hdatalen);
}
void
mq_set_maxlen(struct mbuf_queue *mq, u_int maxlen)
{
mtx_enter(&mq->mq_mtx);
mq->mq_maxlen = maxlen;
mtx_leave(&mq->mq_mtx);
}
int
sysctl_mq(int *name, u_int namelen, void *oldp, size_t *oldlenp,
void *newp, size_t newlen, struct mbuf_queue *mq)
@ -1793,11 +1801,8 @@ sysctl_mq(int *name, u_int namelen, void *oldp, size_t *oldlenp,
case IFQCTL_MAXLEN:
maxlen = mq->mq_maxlen;
error = sysctl_int(oldp, oldlenp, newp, newlen, &maxlen);
if (!error && maxlen != mq->mq_maxlen) {
mtx_enter(&mq->mq_mtx);
mq->mq_maxlen = maxlen;
mtx_leave(&mq->mq_mtx);
}
if (!error && maxlen != mq->mq_maxlen)
mq_set_maxlen(mq, maxlen);
return (error);
case IFQCTL_DROPS:
return (sysctl_rdint(oldp, oldlenp, newp, mq_drops(mq)));