`gmirror label -hvb prefer test /dev/gpt/test1 /dev/gpt/test2` gmirror sets priority by default: /dev/gpt/test1 -> 0 /dev/gpt/test2 -> 1 when you run `dd if=/dev/mirror/test of=/dev/null` you can see in gstat/iostat, that /dev/gpt/test2 is loaded for read. then after `gmirror configure -p 5 test /dev/gpt/test1`, running `dd if=/dev/mirror/test of=/dev/null` you can see, that /dev/gpt/test2 is still used for read. after reboot, changes take effect, and /dev/gpt/test1 really starts to be used for read operations. there are no way to reload gmirror to apply changes without reboot, except this strange way, when you remake mirror with the "right" devices order: `gmirror stop test; gmirror label -hvb prefer test /dev/gpt/test2 /dev/gpt/test1`