svn commit: r229963 - head/sys/contrib/pf/net
Gleb Smirnoff
glebius at FreeBSD.org
Wed Jan 11 14:19:04 UTC 2012
Author: glebius
Date: Wed Jan 11 14:19:04 2012
New Revision: 229963
URL: http://svn.freebsd.org/changeset/base/229963
Log:
Add necessary locking in pfsync_in_ureq().
Modified:
head/sys/contrib/pf/net/if_pfsync.c
Modified: head/sys/contrib/pf/net/if_pfsync.c
==============================================================================
--- head/sys/contrib/pf/net/if_pfsync.c Wed Jan 11 14:13:42 2012 (r229962)
+++ head/sys/contrib/pf/net/if_pfsync.c Wed Jan 11 14:19:04 2012 (r229963)
@@ -1433,6 +1433,9 @@ pfsync_in_ureq(struct pfsync_pkt *pkt, s
}
ura = (struct pfsync_upd_req *)(mp->m_data + offp);
+#ifdef __FreeBSD__
+ PF_LOCK();
+#endif
for (i = 0; i < count; i++) {
ur = &ura[i];
@@ -1450,11 +1453,12 @@ pfsync_in_ureq(struct pfsync_pkt *pkt, s
if (ISSET(st->state_flags, PFSTATE_NOSYNC))
continue;
- PF_LOCK();
pfsync_update_state_req(st);
- PF_UNLOCK();
}
}
+#ifdef __FreeBSD__
+ PF_UNLOCK();
+#endif
return (len);
}
@@ -2975,7 +2979,7 @@ pfsync_bulk_start(void)
printf("pfsync: received bulk update request\n");
#ifdef __FreeBSD__
- PF_LOCK();
+ PF_LOCK_ASSERT();
if (TAILQ_EMPTY(&V_state_list))
#else
if (TAILQ_EMPTY(&state_list))
@@ -2994,9 +2998,6 @@ pfsync_bulk_start(void)
pfsync_bulk_status(PFSYNC_BUS_START);
callout_reset(&sc->sc_bulk_tmo, 1, pfsync_bulk_update, sc);
}
-#ifdef __FreeBSD__
- PF_UNLOCK();
-#endif
}
void
More information about the svn-src-head
mailing list