On Wed 14 Sep 2016 08:54:19 PM CEST, Jeff Cody wrote: >> If an image is opened with snapshot=on, its flags are modified by >> bdrv_backing_options() and then bs->open_flags is updated accordingly. >> This last step is unnecessary if we calculate the new flags before >> setting bs->open_flags. >> >> Soon we'll introduce the "read-only" option, and then we'll need to be >> able to modify its value in the QDict when snapshot=on. This is more >> cumbersome if bs->options is already set. This patch simplifies that. >> >> The code that sets BDRV_O_ALLOW_RDWR is also moved for the same >> reason. > > Before, we would not set BDRV_O_ALLOW_RDWR for protocols, but this > will change that. Is that side-affect intentional?
BDRV_O_ALLOW_RDWR is set in the root BDS, and then all children inherit that flag (both bdrv_inherited_options() and bdrv_backing_options() copy it), so I don't think the ((flags & BDRV_O_PROTOCOL) == 0) check makes any difference in practice. Berto