Date: Tue, 18 Dec 2018 00:24:52 -0500 From: Juan Manuel Palacios <jmpalacios@gmail.com> To: freebsd-geom@freebsd.org Subject: Questions about withering Message-ID: <CAK0kpvFS8b4x7%2ByVTZU9iVPzoY1zw6Gr7cpXZZX-HpMg%2ByrSRg@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Hi,
I'm not only new here, but I'm also pretty new to GEOM, so hopefully my
question wont be too out-of-line and/or uninformed.
I'm on FreeNAS 11.2 (FreeBSD 11.2), and I'm trying to understand the
concept of withering of geoms. Here's how my disks, partitions, and labels
currently look:
-> geom disk status
Name Status Components
ada0 N/A N/A
ada1 N/A N/A
ada2 N/A N/A
ada3 N/A N/A
ada4 N/A N/A
da0 N/A N/A
-> gpart status
Name Status Components
ada0p1 OK ada0
ada0p2 OK ada0
ada1p1 OK ada1
ada1p2 OK ada1
ada2p1 OK ada2
ada2p2 OK ada2
ada3p1 OK ada3
ada3p2 OK ada3
ada4p1 OK ada4
ada4p2 OK ada4
da0p1 OK da0
da0p2 OK da0
zvol/baudrillard/jarp1 OK zvol/baudrillard/jar
-> glabel status
Name Status Components
gptid/d8bd51a6-74dd-11e7-ac3e-ac1f6b1737ba N/A ada0p2
gptid/4b4e423d-6de3-11e8-a335-ac1f6b1737ba N/A ada1p2
gptid/b4743975-d695-11e8-ae82-ac1f6b1737ba N/A ada2p2
gptid/d834fa68-74dd-11e7-ac3e-ac1f6b1737ba N/A ada3p2
gptid/4a35f7d5-6de3-11e8-a335-ac1f6b1737ba N/A ada4p2
gptid/cc1d2cae-f785-11e8-a1dc-ac1f6b1737ba N/A da0p1
label/strawberry N/A zvol/baudrillard/jarp1
gptid/d8b87fab-74dd-11e7-ac3e-ac1f6b1737ba N/A ada0p1
As it's common for FreeNAS, some of those p1 partitions are being consumed
by (encrypted) mirrors used for swap:
-> gmirror status
Name Status Components
mirror/swap0 COMPLETE ada4p1 (ACTIVE)
ada3p1 (ACTIVE)
mirror/swap1 COMPLETE ada2p1 (ACTIVE)
ada1p1 (ACTIVE)
-> swapinfo -h
Device 1K-blocks Used Avail Capacity
/dev/mirror/swap0.eli 2097152 0B 2.0G 0%
/dev/mirror/swap1.eli 2097152 0B 2.0G 0%
Total 4194304 0B 4.0G 0%
And when queried individually to glabel, there's no information found for
them:
-> glabel status ada1p1
glabel: No such geom: ada1p1.
But `gpart list ada1` does show the GPT partition with a "rawuuid"
property, as expected. All the while, the same query to glabel for the
unused ada0p1 partition does succeed:
-> glabel status ada0p1
Name Status Components
gptid/d8b87fab-74dd-11e7-ac3e-ac1f6b1737ba N/A ada0p1
So I'm wondering if that "disappearing" of the labels for p1 partitions for
ada providers 1 through 4 is the effect of withering, given that the swap
mirrors are consuming the partitions directly and not their gptid labels.
And if it's not withering, what is it, then?
Also, shouldn't withering cause entries in the /dev fs to disappear?
-> glabel status zvol/baudrillard/jarp1
Name Status Components
gptid/a7bb1b7f-0183-11e9-b296-ac1f6b1737ba N/A zvol/baudrillard/jarp1
-> glabel label strawberry zvol/baudrillard/jarp1
-> glabel status zvol/baudrillard/jarp1
Name Status Components
label/strawberry N/A zvol/baudrillard/jarp1
gptid/a7bb1b7f-0183-11e9-b296-ac1f6b1737ba N/A zvol/baudrillard/jarp1
-> geli init -s 4096 -l 256 -K /tmp/jar.key -P -B none label/strawberry
-> geli attach -k /tmp/jar.key -p label/strawberry
-> zpool create -R /mnt waffle label/strawberry.eli
-> ls /dev/zvol/baudrillard/jar /dev/zvol/baudrillard/jarp1
/dev/gptid/a7bb1b7f-0183-11e9-b296-ac1f6b1737ba /dev/label/strawberry
ls: /dev/gptid/a7bb1b7f-0183-11e9-b296-ac1f6b1737ba: No such file or
directory
crw-r----- 1 root operator 0xa0 Dec 16 19:00 /dev/label/strawberry
crw-r----- 1 root operator 0x9e Dec 16 18:51 /dev/zvol/baudrillard/jar
crw-r----- 1 root operator 0x9f Dec 16 18:51 /dev/zvol/baudrillard/jarp1
Needless to say, a node for the gptid label did exist in /dev/ before I
created the strawberry label. Is that disappearing also the effect of
withering? And if so, do only equal-rank providers wither away from /dev?
Otherwise, I would expect the disk and partition nodes for the jar zvol to
also disappear from /dev, but a simple `ls` on e.g. `/dev/ada*` shows
that's not the case for any of the disk and partition geoms for my SATA
drives, nor for their corresponding gptid label nodes that are then
consumed by my geli providers that FreeNAS fed to `zpool create` when I
created my encrypted pools.
I'm trying to use my understanding of attachment modes, and what the
various GEOM `list` commands are showing me for that property in these
providers, when trying to understand withering, i.e. an exclusive
attachment to a provider should cause lower and/or equal rank providers to
wither. But I'm getting sorely confused, because what I'm seeing is
directly contradicting a large part of the (obviously wrong and incomplete)
understanding I currently have.
Thanks in advance for the help!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAK0kpvFS8b4x7%2ByVTZU9iVPzoY1zw6Gr7cpXZZX-HpMg%2ByrSRg>
