find snapshot parent?

Ulli Horlacher
2019-07-06T15:53:58Z

Is there a standard way to find the path of the subvolume parent of a
snapshot?

For example:

root@xerus:/test# btrfs sub list /test
ID 269 gen 9818 top level 5 path tux/test
ID 1026 gen 9804 top level 1011 path tmp/xx/ss1
ID 1027 gen 9804 top level 1011 path tmp/xx/ss2

root@xerus:/test# btrfs subvolume show /test/tmp
/test/tmp
Name: tmp
UUID: 5a873eca-9b6c-fc4e-aed5-eb287839d693
Parent UUID: -
Received UUID: -
Creation time: 2019-07-04 00:17:11 +0200
Subvolume ID: 1011
Generation: 9813
Gen at creation: 9749
Parent ID: 5
Top level ID: 5
Flags: -
Snapshot(s):
xx/ss1
xx/ss2

root@xerus:/test# btrfs subvolume show /test/tmp/xx/ss1
/test/tmp/xx/ss1
Name: ss1
UUID: 3641bb81-d1fd-4440-8f29-6f17ff9ec4e1
Parent UUID: 5a873eca-9b6c-fc4e-aed5-eb287839d693
Received UUID: -
Creation time: 2019-07-05 11:13:15 +0200
Subvolume ID: 1026
Generation: 9804
Gen at creation: 9793
Parent ID: 1011
Top level ID: 1011
Flags: readonly
Snapshot(s):

Must I call "btrfs subvolume show" for every subvolume to find the
matching Parent ID/UUID or parse the "Snapshot(s)" section?

And how can I see whether /test/tmp/xx/ss1 is a snapshot at all?
Do all snapshots have a "Parent UUID" and regular subvolumes not?

--
Ullrich Horlacher Server und Virtualisierung
Rechenzentrum TIK
Universitaet Stuttgart E-Mail: horlacher@tik.uni-stuttgart.de
Allmandring 30a Tel: ++49-711-68565868
70569 Stuttgart (Germany) WWW: http://www.tik.uni-stuttgart.de/
REF:<20190706155353.GA13656@tik.uni-stuttgart.de>