Page MenuHomeFreeBSD

D43501.diff
No OneTemporary

D43501.diff

diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c
--- a/sys/net/if_lagg.c
+++ b/sys/net/if_lagg.c
@@ -83,8 +83,10 @@
#define LAGG_SX_DESTROY(_sc) sx_destroy(&(_sc)->sc_sx)
#define LAGG_XLOCK(_sc) sx_xlock(&(_sc)->sc_sx)
#define LAGG_XUNLOCK(_sc) sx_xunlock(&(_sc)->sc_sx)
-#define LAGG_SXLOCK_ASSERT(_sc) sx_assert(&(_sc)->sc_sx, SA_LOCKED)
#define LAGG_XLOCK_ASSERT(_sc) sx_assert(&(_sc)->sc_sx, SA_XLOCKED)
+#define LAGG_SLOCK(_sc) sx_slock(&(_sc)->sc_sx)
+#define LAGG_SUNLOCK(_sc) sx_sunlock(&(_sc)->sc_sx)
+#define LAGG_SXLOCK_ASSERT(_sc) sx_assert(&(_sc)->sc_sx, SA_LOCKED)
/* Special flags we should propagate to the lagg ports. */
static struct {
@@ -1044,7 +1046,9 @@
break;
}
+ LAGG_SLOCK(sc);
lagg_port2req(lp, rp);
+ LAGG_SUNLOCK(sc);
NET_EPOCH_EXIT(et);
break;
@@ -1581,7 +1585,9 @@
break;
}
+ LAGG_SLOCK(sc);
lagg_port2req(lp, rp);
+ LAGG_SUNLOCK(sc);
NET_EPOCH_EXIT(et);
if_rele(tpif);
break;

File Metadata

Mime Type
text/plain
Expires
Fri, Nov 8, 8:38 AM (22 h, 4 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14531402
Default Alt Text
D43501.diff (965 B)

Event Timeline