svn commit: r304585 - in user/alc/PQ_LAUNDRY/sys: dev/alc netinet
Mark Johnston
markj at FreeBSD.org
Mon Aug 22 03:48:40 UTC 2016
Author: markj
Date: Mon Aug 22 03:48:39 2016
New Revision: 304585
URL: https://svnweb.freebsd.org/changeset/base/304585
Log:
MFH r304584
Modified:
user/alc/PQ_LAUNDRY/sys/dev/alc/if_alcvar.h
user/alc/PQ_LAUNDRY/sys/netinet/sctp_output.c
Directory Properties:
user/alc/PQ_LAUNDRY/ (props changed)
Modified: user/alc/PQ_LAUNDRY/sys/dev/alc/if_alcvar.h
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/dev/alc/if_alcvar.h Mon Aug 22 03:28:06 2016 (r304584)
+++ user/alc/PQ_LAUNDRY/sys/dev/alc/if_alcvar.h Mon Aug 22 03:48:39 2016 (r304585)
@@ -235,7 +235,8 @@ struct alc_softc {
#define ALC_FLAG_APS 0x1000
#define ALC_FLAG_AR816X_FAMILY 0x2000
#define ALC_FLAG_LINK_WAR 0x4000
-#define ALC_FLAG_LINK 0x8000
+#define ALC_FLAG_E2X00 0x8000
+#define ALC_FLAG_LINK 0x10000
struct callout alc_tick_ch;
struct alc_hw_stats alc_stats;
Modified: user/alc/PQ_LAUNDRY/sys/netinet/sctp_output.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/netinet/sctp_output.c Mon Aug 22 03:28:06 2016 (r304584)
+++ user/alc/PQ_LAUNDRY/sys/netinet/sctp_output.c Mon Aug 22 03:48:39 2016 (r304585)
@@ -12639,7 +12639,10 @@ sctp_lower_sosend(struct socket *so,
}
SCTP_INP_RUNLOCK(inp);
} else if (sinfo_assoc_id) {
- stcb = sctp_findassociation_ep_asocid(inp, sinfo_assoc_id, 0);
+ stcb = sctp_findassociation_ep_asocid(inp, sinfo_assoc_id, 1);
+ if (stcb != NULL) {
+ hold_tcblock = 1;
+ }
} else if (addr) {
/*-
* Since we did not use findep we must
@@ -13404,6 +13407,10 @@ skip_preblock:
}
}
SCTP_TCB_SEND_LOCK(stcb);
+ if (stcb->asoc.state & SCTP_STATE_ABOUT_TO_BE_FREED) {
+ SCTP_TCB_SEND_UNLOCK(stcb);
+ goto out_unlocked;
+ }
if (sp) {
if (sp->msg_is_complete == 0) {
strm->last_msg_incomplete = 1;
More information about the svn-src-user
mailing list