From mboxrd@z Thu Jan 1 00:00:00 1970 Received: by passt.top (Postfix, from userid 1000) id 78BD75A061C; Wed, 12 Feb 2025 02:19:45 +0100 (CET) From: Stefano Brivio To: passt-dev@passt.top Subject: [PATCH v17 4/8] vhost_user: Make source quit after reporting migration state Date: Wed, 12 Feb 2025 02:19:41 +0100 Message-ID: <20250212011945.657249-5-sbrivio@redhat.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250212011945.657249-1-sbrivio@redhat.com> References: <20250212011945.657249-1-sbrivio@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID-Hash: V3CIM6QV4X2A2YVSQIFLMNL3ZC2UVOK3 X-Message-ID-Hash: V3CIM6QV4X2A2YVSQIFLMNL3ZC2UVOK3 X-MailFrom: sbrivio@passt.top X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: David Gibson X-Mailman-Version: 3.3.8 Precedence: list List-Id: Development discussion and patches for passt Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: This will close all the sockets we currently have open in repair mode, and completes our migration tasks as source. If the hypervisor wants to have us back at this point, somebody needs to restart us. Signed-off-by: Stefano Brivio Message-ID: <20250209222005.1640077-5-sbrivio@redhat.com> Signed-off-by: David Gibson Message-ID: <20250211012034.1898337-8-sbrivio@redhat.com> --- vhost_user.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/vhost_user.c b/vhost_user.c index 256c8ab..7ab1377 100644 --- a/vhost_user.c +++ b/vhost_user.c @@ -1203,4 +1203,11 @@ void vu_control_handler(struct vu_dev *vdev, int fd, uint32_t events) if (reply_requested) vu_send_reply(fd, &msg); + + if (msg.hdr.request == VHOST_USER_CHECK_DEVICE_STATE && + vdev->context->device_state_result == 0 && + !vdev->context->migrate_target) { + info("Migration complete, exiting"); + _exit(EXIT_SUCCESS); + } } -- 2.43.0