git: 9fa8d1582b44 - main - Put bandaid for nhgrp_dump_sysctl() malloc KASSERT().
Cy Schubert
Cy.Schubert at cschubert.com
Mon Mar 29 23:32:37 UTC 2021
In message <202103292315.12TNFFmZ050152 at gitrepo.freebsd.org>, "Alexander V.
Che
rnikov" writes:
> The branch main has been updated by melifaro:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=9fa8d1582b44b4850d40699c9adb1047
> 32328b7d
>
> commit 9fa8d1582b44b4850d40699c9adb104732328b7d
> Author: Alexander V. Chernikov <melifaro at FreeBSD.org>
> AuthorDate: 2021-03-29 23:12:11 +0000
> Commit: Alexander V. Chernikov <melifaro at FreeBSD.org>
> CommitDate: 2021-03-29 23:12:11 +0000
>
> Put bandaid for nhgrp_dump_sysctl() malloc KASSERT().
>
> Recent rtsock changes widened epoch and covered nhgrp_dump_sysctl(),
> resulting in `netstat -4On` triggering with KASSERT.
>
> MFC after: 1 day
> ---
> sys/net/route/nhgrp_ctl.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/sys/net/route/nhgrp_ctl.c b/sys/net/route/nhgrp_ctl.c
> index b228c3bcee37..2896730458b5 100644
> --- a/sys/net/route/nhgrp_ctl.c
> +++ b/sys/net/route/nhgrp_ctl.c
> @@ -806,7 +806,9 @@ nhgrp_dump_sysctl(struct rib_head *rh, struct sysctl_req
> *w)
> sz = sizeof(struct rt_msghdr) + sizeof(struct nhgrp_external);
> sz += 2 * sizeof(struct nhgrp_container);
> sz += 2 * sizeof(struct nhgrp_nhop_external) * RIB_MAX_MPATH_WIDTH;
> - buffer = malloc(sz, M_TEMP, M_WAITOK);
> + buffer = malloc(sz, M_TEMP, M_MOWAIT);
^
This appears to be a typo.
> + if (buffer == NULL)
> + return (ENOMEM);
>
> NET_EPOCH_ENTER(et);
> NHOPS_RLOCK(ctl);
>
--
Cheers,
Cy Schubert <Cy.Schubert at cschubert.com>
FreeBSD UNIX: <cy at FreeBSD.org> Web: https://FreeBSD.org
NTP: <cy at nwtime.org> Web: https://nwtime.org
The need of the many outweighs the greed of the few.
More information about the dev-commits-src-all
mailing list