summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Lim <Michael.Lim@Sun.COM>2010-05-10 17:53:24 -0700
committerMichael Lim <Michael.Lim@Sun.COM>2010-05-10 17:53:24 -0700
commit3b132919bc64fe4496e5b282129832928afb0c8c (patch)
treeaacea9d73d395875cb3325abd801b65cae894c5c
parent08a0f9b044f01fb540a861b94b63d77dd3d576ee (diff)
downloadillumos-gate-3b132919bc64fe4496e5b282129832928afb0c8c.tar.gz
6936526 pool_conf_commit returing pool_error() value = 8 - System error : after introduction of 6889685
-rw-r--r--usr/src/uts/common/os/pool.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/usr/src/uts/common/os/pool.c b/usr/src/uts/common/os/pool.c
index 4b4337b3a2..86a119fdea 100644
--- a/usr/src/uts/common/os/pool.c
+++ b/usr/src/uts/common/os/pool.c
@@ -20,8 +20,7 @@
*/
/*
- * Copyright 2010 Sun Microsystems, Inc. All rights reserved.
- * Use is subject to license terms.
+ * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
*/
#include <sys/pool.h>
@@ -675,13 +674,14 @@ pool_xtransfer(int type, id_t src_pset, id_t dst_pset, uint_t size, id_t *ids)
case PREC_PSET:
ret = pool_pset_xtransfer((psetid_t)src_pset,
(psetid_t)dst_pset, size, ids);
-
- if ((src_pool = pool_lookup_id_by_pset(src_pset)) == -1)
- return (EINVAL);
- if ((dst_pool = pool_lookup_id_by_pset(dst_pset)) == -1)
- return (EINVAL);
- pool_event_dispatch(POOL_E_CHANGE, src_pool);
- pool_event_dispatch(POOL_E_CHANGE, dst_pool);
+ if (ret == 0) {
+ if ((src_pool = pool_lookup_id_by_pset(src_pset)) !=
+ POOL_INVALID)
+ pool_event_dispatch(POOL_E_CHANGE, src_pool);
+ if ((dst_pool = pool_lookup_id_by_pset(dst_pset)) !=
+ POOL_INVALID)
+ pool_event_dispatch(POOL_E_CHANGE, dst_pool);
+ }
break;
default:
ret = EINVAL;