Package: cryptsetup Version: 2:2.3.7-1+deb11u1 ### Issue description
When creating nested dmcrypt mappings in /etc/crtypttab,
cryptdisks_start processes them from top to bottom.
The means that a some encrypted base device will be unlocked before any
nested encrypted devices based on it.
While this works fine for unlocking the encrypted disks, cryptdisk_stop
tries to remove the dmcrypt mappings in the same order which is clearly
wrong: It tries to remove the base mapping before any mappings bases on
it, which will fail because the base mapping is "busy" at that point.
Steps for reproducing the issue
Here is an example of a crypttab demonstating the issue:
# <target name> <source device>
<key file> <options> swap-myhost-pre4-dec PARTUUID=88888888-02
unused_dummy
plain,noearly,cipher=aes-cbc-plain64,size=128,hash=sha256,keyscript=/etc/libexec/gen_hq_rand_psw
swap-myhost-pre3-dec /dev/mapper/swap-myhost-pre4-dec
unused_dummy
plain,noearly,cipher=blowfish-pcbc-essiv:sha256,size=128,hash=sha256,keyscript=/etc/libexec/gen_hq_rand_psw
swap-myhost-pre2-dec /dev/mapper/swap-myhost-pre3-dec
unused_dummy
plain,noearly,cipher=aes-ctr-plain64,size=128,hash=sha256,keyscript=/etc/libexec/gen_hq_rand_psw
swap-myhost-pre-dec /dev/mapper/swap-myhost-pre2-dec
unused_dummy
plain,noearly,cipher=aes-xts-benbi,size=256,hash=sha256,keyscript=/etc/libexec/gen_hq_rand_psw
swap-myhost-dec /dev/mapper/swap-myhost-pre-dec
unused_dummy
plain,swap,noearly,cipher=serpent-pcbc-essiv:sha256,size=256,hash=sha256,keyscript=/etc/libexec/gen_hq_rand_psw
The referenced key script (/etc/libexec/gen_hq_rand_psw) and another
helper script files used by it
(/etc/libexec/cached/keygen-octets-by-harvesting-entropy) have been
attached to this report.
### Expected behaviour
The cryptdisks_stop script should process the crypttab entries in the
reverse order of how cryptdisks_start processes them.
### External links
The original bug report, delivered to upstream first by mistake:
https://gitlab.com/cryptsetup/cryptsetup/-/issues/719#note_863814204
gen_hq_rand_psw
Description: Binary data
keygen-octets-by-harvesting-entropy
Description: Binary data

