svn commit: r326898 - head/sys/net

Andrey V. Elsukov ae at FreeBSD.org
Sat Dec 16 14:36:22 UTC 2017


Author: ae
Date: Sat Dec 16 14:36:21 2017
New Revision: 326898
URL: https://svnweb.freebsd.org/changeset/base/326898

Log:
  Fix possible memory leak.
  
  vxlan_ftable entries are sorted in ascending order, due to wrong arguments
  order it is possible to stop search before existing element will be found.
  Then new element will be allocated in vxlan_ftable_update_locked() and can
  be inserted in the list second time or trigger MPASS() assertion with
  enabled INVARIANTS.
  
  PR:		224371
  MFC after:	1 week

Modified:
  head/sys/net/if_vxlan.c

Modified: head/sys/net/if_vxlan.c
==============================================================================
--- head/sys/net/if_vxlan.c	Sat Dec 16 14:26:11 2017	(r326897)
+++ head/sys/net/if_vxlan.c	Sat Dec 16 14:36:21 2017	(r326898)
@@ -782,7 +782,7 @@ vxlan_ftable_entry_lookup(struct vxlan_softc *sc, cons
 	hash = VXLAN_SC_FTABLE_HASH(sc, mac);
 
 	LIST_FOREACH(fe, &sc->vxl_ftable[hash], vxlfe_hash) {
-		dir = vxlan_ftable_addr_cmp(fe->vxlfe_mac, mac);
+		dir = vxlan_ftable_addr_cmp(mac, fe->vxlfe_mac);
 		if (dir == 0)
 			return (fe);
 		if (dir > 0)


More information about the svn-src-head mailing list