]> git.proxmox.com Git - mirror_zfs.git/blobdiff - module/zfs/vdev_missing.c
Fix dnode_hold_impl() soft lockup
[mirror_zfs.git] / module / zfs / vdev_missing.c
index b9eb99d18005e33c3ba6dbd6a7480a554f1cc181..d85993bff05246c241e46558fa33f0c4e0760071 100644 (file)
@@ -24,7 +24,7 @@
  */
 
 /*
- * Copyright (c) 2013 by Delphix. All rights reserved.
+ * Copyright (c) 2012, 2016 by Delphix. All rights reserved.
  */
 
 /*
@@ -66,11 +66,11 @@ vdev_missing_close(vdev_t *vd)
 }
 
 /* ARGSUSED */
-static int
+static void
 vdev_missing_io_start(zio_t *zio)
 {
        zio->io_error = SET_ERROR(ENOTSUP);
-       return (ZIO_PIPELINE_CONTINUE);
+       zio_execute(zio);
 }
 
 /* ARGSUSED */
@@ -88,6 +88,9 @@ vdev_ops_t vdev_missing_ops = {
        NULL,
        NULL,
        NULL,
+       NULL,
+       NULL,
+       NULL,
        VDEV_TYPE_MISSING,      /* name of this vdev type */
        B_TRUE                  /* leaf vdev */
 };
@@ -101,6 +104,9 @@ vdev_ops_t vdev_hole_ops = {
        NULL,
        NULL,
        NULL,
+       NULL,
+       NULL,
+       NULL,
        VDEV_TYPE_HOLE,         /* name of this vdev type */
        B_TRUE                  /* leaf vdev */
 };