Skip to content

If previous zpool data exists, new zpool creation fails due to the gnop device disappearing #92

Open
@cb22

Description

@cb22

When configuring a fresh host for the first time, everything worked perfectly. However, after playing around a bit more, and later re-bootstrapping and attempting to reconfigure, ploy configure would fail with:

< TASK: jails_host | Setup data zpool >
 ------------------------------------- 
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||


failed: [sarah] => {"failed": true}
msg: Failed to create zpool with the following arguments:
create -o version=28 -m none tank mirror gpt/tank_ada0.nop gpt/tank_ada1.nop                                                         
cannot open 'gpt/tank_ada1.nop': no such GEOM provider                                                                               
must be a full path or shorthand device name                                                                                         


FATAL: all hosts have already failed -- aborting                                                                                     

This seemed to correspond with the tank_ada1.nop device disappearing (on the kernel messages). Debugging a little bit, it seems like it was caused by the zpool import -f call in the zpool module.

It seems like that call triggers a write, or some sort of access which causes FreeBSD to remove the gnop device, and thus the later call that tries to create the pool to fail. A simple way to fix this is to zero out the first few and last few sectors of the partition, and verify that zpool can't find any pools by running zpool import manually.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions