Date: Mon, 21 Jun 2021 14:49:54 GMT From: "George V. Neville-Neil" <gnn@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: c6b2d024d7ee - main - Retore the vnet before returning an error. Message-ID: <202106211449.15LEnsxM086627@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by gnn: URL: https://cgit.FreeBSD.org/src/commit/?id=c6b2d024d7eedbf32f52a17bc029c92f5a4d1a54 commit c6b2d024d7eedbf32f52a17bc029c92f5a4d1a54 Author: George V. Neville-Neil <gnn@FreeBSD.org> AuthorDate: 2021-06-21 14:46:20 +0000 Commit: George V. Neville-Neil <gnn@FreeBSD.org> CommitDate: 2021-06-21 14:46:20 +0000 Retore the vnet before returning an error. Obtained from: Kanndula, Dheeraj <Dheeraj.Kandula@netapp.com> MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D30741 --- sys/net/if_vlan.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/net/if_vlan.c b/sys/net/if_vlan.c index bd3a5335a97f..39f767c2a603 100644 --- a/sys/net/if_vlan.c +++ b/sys/net/if_vlan.c @@ -609,6 +609,7 @@ vlan_setmulti(struct ifnet *ifp) mc = malloc(sizeof(struct vlan_mc_entry), M_VLAN, M_NOWAIT); if (mc == NULL) { IF_ADDR_WUNLOCK(ifp); + CURVNET_RESTORE(); return (ENOMEM); } bcopy(ifma->ifma_addr, &mc->mc_addr, ifma->ifma_addr->sa_len); @@ -619,8 +620,10 @@ vlan_setmulti(struct ifnet *ifp) CK_SLIST_FOREACH (mc, &sc->vlan_mc_listhead, mc_entries) { error = if_addmulti(ifp_p, (struct sockaddr *)&mc->mc_addr, NULL); - if (error) + if (error) { + CURVNET_RESTORE(); return (error); + } } CURVNET_RESTORE();
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202106211449.15LEnsxM086627>