glabel metadata protection (WAS: ZFS: drive replacement performance)

Dan Naumov dan.naumov at gmail.com
Tue Jul 7 23:20:09 UTC 2009


>> Not to derail this discussion, but can anyone explain if the actual
>> glabel metadata is protected in any way? If I use glabel to label a
>> disk and then create a pool using /dev/label/disklabel, won't ZFS
>> eventually overwrite the glabel metadata in the last sector since the
>> disk in it's entirety is given to the pool? Or is every filesystem
>> used by FreeBSD (ufs, zfs, etc) hardcoded to ignore the last few
>> sectors of any disk and/or partition and not write data to it to avoid
>> such issues?
>
> Disks labeled with glabel lose their last sector to the label.  It is not
> accessible by ZFS.  Disks with bsdlabel partition tables are at risk due to
> the brain dead decision to allow partitions to overlap the first sector,
> but modern designs like glabel avoid this mistake.
>
> -- Brooks

So what happens if I was to do the following (for the same of example):

gpart create -s GPT /dev/ad1
glabel label -v disk01 /dev/ad1
gpart add -b 1 -s <ENTIREDISK> -t freebsd-zfs /dev/ad1

Does "gpart add" automatically somehow recognize that the last sector
of <ENTIREDISK> contains the glabel and automatically re-adjusts this
command to make the freebsd-zfs partition take "entiredisk minus last
sector" ? I can understand the logic of metadata being protected if I
do a: "gpart add -b 1 -s <ENTIREDISK> -t freebsd-zfs
/dev/label/disk01" since gpart will have to go through the actual
label first, but what actually happens if I issue a gpart directly to
the /dev/device?

- Sincerely,
Dan Naumov


More information about the freebsd-stable mailing list