Print this page
expandable RAID-Z

@@ -841,13 +841,16 @@
                                 mc->mc_rotor = mg->mg_next;
                                 mc->mc_allocated = 0;
                         }
 
                         DVA_SET_VDEV(&dva[d], vd->vdev_id);
-                        DVA_SET_OFFSET(&dva[d], offset);
-                        DVA_SET_GANG(&dva[d], 0);
+                        if (vd->vdev_ops->vdev_op_grid != NULL)
+                                DVA_SET_GRID(&dva[d],
+                                    vd->vdev_ops->vdev_op_grid(vd);
                         DVA_SET_ASIZE(&dva[d], asize);
+                        DVA_SET_GANG(&dva[d], 0);
+                        DVA_SET_OFFSET(&dva[d], offset);
 
                         return (0);
                 }
 next:
                 mc->mc_rotor = mg->mg_next;