/* * Block activation tracking for migration purpose * * SPDX-License-Identifier: GPL-2.0-or-later * * Copyright (C) 2024 Red Hat, Inc. */ #include "qemu/osdep.h" #include "block/block.h" #include "qapi/error.h" #include "migration/migration.h" #include "qemu/error-report.h" #include "trace.h" bool migration_block_activate(Error **errp) { ERRP_GUARD(); assert(bql_locked()); trace_migration_block_activation("active"); bdrv_activate_all(errp); if (*errp) { error_report_err(error_copy(*errp)); return false; } return true; } bool migration_block_inactivate(void) { int ret; assert(bql_locked()); trace_migration_block_activation("inactive"); ret = bdrv_inactivate_all(); if (ret) { error_report("%s: bdrv_inactivate_all() failed: %d", __func__, ret); return false; } return true; }