summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gerdts <mike.gerdts@joyent.com>2020-02-03 06:41:39 -0700
committerJerry Jelinek <jerry.jelinek@joyent.com>2020-02-04 07:09:56 -0700
commit5fe3b0929d8a195dbfa4196d72a3f9b15b745171 (patch)
tree281d55c82ee99a8e16d3a4fd7ae8de3b719e0033
parent8bd53a1ca9fba2d5585cc775422e4d1db161bf96 (diff)
downloadillumos-joyent-5fe3b0929d8a195dbfa4196d72a3f9b15b745171.tar.gz
12084 idm_conn_event_handler mishandles CA_DROP action
Portions contributed by: Jerry Jelinek <jerry.jelinek@joyent.com> Reviewed by: Andy Fiddaman <andy@omniosce.org> Reviewed by: C Fraire <cfraire@me.com> Approved by: Dan McDonald <danmcd@joyent.com>
-rw-r--r--usr/src/uts/common/io/idm/idm_conn_sm.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/usr/src/uts/common/io/idm/idm_conn_sm.c b/usr/src/uts/common/io/idm/idm_conn_sm.c
index 011a1ca784..45ba8872b8 100644
--- a/usr/src/uts/common/io/idm/idm_conn_sm.c
+++ b/usr/src/uts/common/io/idm/idm_conn_sm.c
@@ -23,6 +23,7 @@
* Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2013 by Delphix. All rights reserved.
* Copyright 2017 Nexenta Systems, Inc. All rights reserved.
+ * Copyright 2020 Joyent, Inc.
*/
#include <sys/cpuvar.h>
@@ -341,6 +342,7 @@ idm_conn_event_handler(void *event_ctx_opaque)
*/
IDM_SM_LOG(CE_NOTE, "*** drop PDU %p", (void *) pdu);
idm_pdu_complete(pdu, IDM_STATUS_FAIL);
+ event_ctx->iec_info = (uintptr_t)NULL;
break;
default:
ASSERT(0);
@@ -420,6 +422,10 @@ idm_conn_event_handler(void *event_ctx_opaque)
}
}
break;
+ case CA_DROP:
+ /* Already completed above. */
+ ASSERT3P(event_ctx->iec_info, ==, NULL);
+ break;
default:
ASSERT(0);
break;