diff options
author | Yuri Pankov <[email protected]> | 2013-03-06 17:57:09 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2013-10-31 14:57:59 -0700 |
commit | 7011fb6004b2227ff9e89894ed69ab83d36c1696 (patch) | |
tree | df4d1b20b17057400dc270881bf26e57b9675862 | |
parent | d1fada1e6d953e32de4080bd366df17c640de191 (diff) |
Illumos #3517
3517 importing pool with autoreplace=on and "hole" vdevs crashes syseventd
Reviewed by: Albert Lee <[email protected]>
Reviewed by: Jeffry Molanus <[email protected]>
Reviewed by: George Wilson <[email protected]>
Approved by: Christopher Siden <[email protected]>
References:
https://www.illumos.org/issues/3517
illumos/illumos-gate@efb4a871d8fd510a833bdca610528dde5ed69e42
Ported-by: Richard Yao <[email protected]>
Signed-off-by: Brian Behlendorf <[email protected]>
Issue #1775
-rw-r--r-- | module/zfs/spa.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/module/zfs/spa.c b/module/zfs/spa.c index b400896c2..76daaf627 100644 --- a/module/zfs/spa.c +++ b/module/zfs/spa.c @@ -21,8 +21,8 @@ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright 2011 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2012 by Delphix. All rights reserved. + * Copyright 2013 Nexenta Systems, Inc. All rights reserved. */ /* @@ -1597,7 +1597,8 @@ spa_check_removed(vdev_t *vd) for (c = 0; c < vd->vdev_children; c++) spa_check_removed(vd->vdev_child[c]); - if (vd->vdev_ops->vdev_op_leaf && vdev_is_dead(vd)) { + if (vd->vdev_ops->vdev_op_leaf && vdev_is_dead(vd) && + !vd->vdev_ishole) { zfs_ereport_post(FM_EREPORT_RESOURCE_AUTOREPLACE, vd->vdev_spa, vd, NULL, 0, 0); spa_event_notify(vd->vdev_spa, vd, FM_EREPORT_ZFS_DEVICE_CHECK); |