Fam's image locking series introduced some special-casing in the file-posix driver that avoids taking locks when the image is inactive. While this works, it really isn't the job of the file-posix driver, but the core block layer should consider that inactive nodes require a lot less permissions.
This series integrates op blockers with bdrv_inactivate/invalidate_cache() to solve this problem gennerically, and removes the workaround in file-posix. Kevin Wolf (6): migration: Unify block node activation error handling block: New BdrvChildRole.activate() for blk_resume_after_migration() block: Drop permissions when migration completes block: Inactivate parents before children block: Fix write/resize permissions for inactive images file-posix: Remove .bdrv_inactivate/invalidate_cache block.c | 76 ++++++++++++++++++++++++++++++++++++++++---- block/block-backend.c | 81 +++++++++++++++++++++++++++++++---------------- block/file-posix.c | 33 ------------------- include/block/block.h | 3 +- include/block/block_int.h | 6 ++++ migration/migration.c | 13 ++------ migration/savevm.c | 9 ++---- qmp.c | 18 ++++------- 8 files changed, 139 insertions(+), 100 deletions(-) -- 1.8.3.1