mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-03-27 14:06:21 +03:00
Allow setting bootfs on any pool
The vdev_is_bootable() restrictions are no longer necessary with recent GRUB2 code. FreeBSD has implemented the same change, except that I moved the Solaris comment to be inside the #ifdef __sun__ block. Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Issue #317
This commit is contained in:
parent
08d08ebba2
commit
57a4eddc4d
@ -3053,13 +3053,17 @@ vdev_set_state(vdev_t *vd, boolean_t isopen, vdev_state_t state, vdev_aux_t aux)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Check the vdev configuration to ensure that it's capable of supporting
|
* Check the vdev configuration to ensure that it's capable of supporting
|
||||||
* a root pool. Currently, we do not support RAID-Z or partial configuration.
|
* a root pool.
|
||||||
* In addition, only a single top-level vdev is allowed and none of the leaves
|
|
||||||
* can be wholedisks.
|
|
||||||
*/
|
*/
|
||||||
boolean_t
|
boolean_t
|
||||||
vdev_is_bootable(vdev_t *vd)
|
vdev_is_bootable(vdev_t *vd)
|
||||||
{
|
{
|
||||||
|
#if defined(__sun__) || defined(__sun)
|
||||||
|
/*
|
||||||
|
* Currently, we do not support RAID-Z or partial configuration.
|
||||||
|
* In addition, only a single top-level vdev is allowed and none of the
|
||||||
|
* leaves can be wholedisks.
|
||||||
|
*/
|
||||||
int c;
|
int c;
|
||||||
|
|
||||||
if (!vd->vdev_ops->vdev_op_leaf) {
|
if (!vd->vdev_ops->vdev_op_leaf) {
|
||||||
@ -3080,6 +3084,7 @@ vdev_is_bootable(vdev_t *vd)
|
|||||||
if (!vdev_is_bootable(vd->vdev_child[c]))
|
if (!vdev_is_bootable(vd->vdev_child[c]))
|
||||||
return (B_FALSE);
|
return (B_FALSE);
|
||||||
}
|
}
|
||||||
|
#endif /* __sun__ || __sun */
|
||||||
return (B_TRUE);
|
return (B_TRUE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user