Laszlo Ersek <ler...@redhat.com> writes: > On 11/27/13 18:22, Markus Armbruster wrote: > >> Perhaps the proper way to back partially writable flash contents isn't >> splitting it into two devices, but backing a single device with a COW. >> The backing file has initial contents (say BIOS image), the delta may >> have additional contents (say non-volatile configuration), and picks up >> whatever the device model permits to be written to the flash. > > Kevin brought this up before. The problem is that this prevents you from > upgrading the read-only part in O(1).
Err, what's wrong with rebasing the COW to a new backing file? Oh, I see you considered it: > (Unless of course you're willing to make the backing file raw *and* to > poke directly in it when you upgrade the bios binary part. Theoretically No, don't update the backing file, *replace* it. If the device model permitted a write to a cluster within the BIOS part, the replacement won't be visible, so don't do that :) > you could do this, because the divide between the varstore and the > binary part at 128KB falls at a qcow2 block boundary (supposing a 64K > qcow2 block size), but in practice this is a horrible idea :)) Yes, with COW the COW clustering apply to the division between BIOS part and non-volatile configuration part. > Let's not veer off into architecting a new star destroyer. I think I > have plenty ammo from your great notes thus far that I can hack up a v2 > with :) Hmmmm, pretty star destroyers...