diff options
author | ae <ae@FreeBSD.org> | 2017-01-24 00:38:35 +0000 |
---|---|---|
committer | Luiz Souza <luiz@netgate.com> | 2017-07-15 11:10:18 -0500 |
commit | e3a16f9da60c9a825a5bdb1919015406fd888198 (patch) | |
tree | 5a1ca997e0e6efdec1863fd4d02bfcca5c441f3a | |
parent | 271dd72d566667c516546b8bb298ab52c9a13292 (diff) | |
download | FreeBSD-src-e3a16f9da60c9a825a5bdb1919015406fd888198.zip FreeBSD-src-e3a16f9da60c9a825a5bdb1919015406fd888198.tar.gz |
MFC r312341:
Initialize IPFW static rules rmlock with RM_RECURSE flag.
This lock was replaced from rwlock in r272840. But unlike rwlock, rmlock
doesn't allow recursion on rm_rlock(), so at this time fix this with
RM_RECURSE flag. Later we need to change ipfw to avoid such recursions.
PR: 216171
(cherry picked from commit 1e8f10faa2cf849d9ec5295daecbff4c9f081147)
-rw-r--r-- | sys/netpfil/ipfw/ip_fw_private.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netpfil/ipfw/ip_fw_private.h b/sys/netpfil/ipfw/ip_fw_private.h index e90781a..758479f 100644 --- a/sys/netpfil/ipfw/ip_fw_private.h +++ b/sys/netpfil/ipfw/ip_fw_private.h @@ -412,7 +412,7 @@ struct ipfw_ifc { #define IPFW_PF_RUNLOCK(p) IPFW_RUNLOCK(p) #else /* FreeBSD */ #define IPFW_LOCK_INIT(_chain) do { \ - rm_init(&(_chain)->rwmtx, "IPFW static rules"); \ + rm_init_flags(&(_chain)->rwmtx, "IPFW static rules", RM_RECURSE); \ rw_init(&(_chain)->uh_lock, "IPFW UH lock"); \ } while (0) |