17:21 <mulhern> Because, when I do setup(), whether or not Stratis shut
down cleanly is kind of important. If not shutdown, dm devices
belonging to pool are still hanging around when Stratis starts
back up.
[using email since people aren't on irc atm]
We can't assume the entire stack is present, but we should be able to
assume that if we go to create a DM device with a given name and it
already exists, then we are recovering from a crash and can reuse the
existing device. This gets back to
https://github.com/stratis-storage/stratis-docs/issues/33, about
specifying the format of DM names. For this, the dm names for all the
different devices we use need to be specified, non-overlapping, and stable.
This was working in Froyo, see dmdevice.rs[1]. DmDevice::new() would
only create/table_load a device with a given name after it checked it
didn't exist. Otherwise it just returned the existing one.
(Idempotency!...?)
I'll start adding some early thoughts on this to that GH issue.
Regards -- Andy
[1] https://github.com/agrover/froyo/blob/master/src/dmdevice.rs#L22