Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1465761

[PATCH 2/2] Drivers: hv: utils: Check VSS daemon is listening before a hot backup

Path csiph.com!news.mixmin.net!aioe.org!bofh.it!news.nic.it!robomod
From kys@exchange.microsoft.com
Newsgroups linux.kernel
Subject [PATCH 2/2] Drivers: hv: utils: Check VSS daemon is listening before a hot backup
Date Fri, 19 Aug 2016 03:20:02 +0200
Message-ID <s7GDw-7k3-41@gated-at.bofh.it> (permalink)
References <s7GtQ-7go-7@gated-at.bofh.it> <s7GtQ-7go-5@gated-at.bofh.it>
X-Original-To gregkh@linuxfoundation.org, linux-kernel@vger.kernel.org, devel@linuxdriverproject.org, olaf@aepfle.de, apw@canonical.com, vkuznets@redhat.com, jasowang@redhat.com, leann.ogasawara@canonical.com
X-Originating-IP 72.167.245.219
X-Mailer git-send-email 1.7.4.1
Reply-To kys@microsoft.com
X-Cmae-Envelope MS4wfDsn2fQEcDFkS2K3gpGzs1iA20rx+w6ZvaXl14/Lz7KJpyaaSgCws9t0r+F7t4vZsLTjBcW94w4bdxNTX/JgxCFyTTS7kmtzyk10ugrgnt9s9yrNimQW IhJRTZUFVHorosNOLUyq/AAloI/Ty6KydlooZPiJlIsp170pfpnaFYxxfb3x4rcoafg5FL5kXvukGjVzy4WeGBZC6VGCHAmLZHYSQAig0nOjXBcaPE9PmraT 7PvSMMoB69OTjJeHoGPmDnCyERykA+07Vp2dUOdyy5hCjUPRTnEt6yYJX6I7Al9UHj5IQiOMQFzZlyaJ056Tt+pd4WTOmHwFFGQGFqstN0gLvy1JN5NiJRms Bt34s+FmTpF4GXmQAZa4Nqpk+db0flzJEuG4xtT5cuTUDS/hezOozLBdXA6pTgpZFdmZTi6im+v0tC4l4+RMDXSnZCXz+ATof+masjfJQ54K0cYLkDfrdvje jlpqMjNH8D1RfrAVHDBk3G6fUChVFLm1douAHw==
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 65
Organization linux.* mail to news gateway
X-Original-Cc Alex Ng <alexng@messages.microsoft.com>, "K. Y. Srinivasan" <kys@microsoft.com>
X-Original-Date Thu, 18 Aug 2016 11:16:55 -0700
X-Original-Message-ID <1471544215-13999-2-git-send-email-kys@exchange.microsoft.com>
X-Original-References <1471544167-13952-1-git-send-email-kys@exchange.microsoft.com> <1471544215-13999-1-git-send-email-kys@exchange.microsoft.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1465761

Show key headers only | View raw


From: Alex Ng <alexng@messages.microsoft.com>

Hyper-V host will send a VSS_OP_HOT_BACKUP request to check if guest is
ready for a live backup/snapshot. The driver should respond to the check
only if the daemon is running and listening to requests. This allows the
host to fallback to standard snapshots in case the VSS daemon is not
running.

Signed-off-by: Alex Ng <alexng@messages.microsoft.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
---
 drivers/hv/hv_snapshot.c |    9 ++++++---
 tools/hv/hv_vss_daemon.c |    3 +++
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/drivers/hv/hv_snapshot.c b/drivers/hv/hv_snapshot.c
index 4c8dd20..4cfd854 100644
--- a/drivers/hv/hv_snapshot.c
+++ b/drivers/hv/hv_snapshot.c
@@ -136,6 +136,11 @@ static int vss_on_msg(void *msg, int len)
 		return vss_handle_handshake(vss_msg);
 	} else if (vss_transaction.state == HVUTIL_USERSPACE_REQ) {
 		vss_transaction.state = HVUTIL_USERSPACE_RECV;
+
+		if (vss_msg->vss_hdr.operation == VSS_OP_HOT_BACKUP)
+			vss_transaction.msg->vss_cf.flags =
+				VSS_HBU_NO_AUTO_RECOVERY;
+
 		if (cancel_delayed_work_sync(&vss_timeout_work)) {
 			vss_respond_to_host(vss_msg->error);
 			/* Transaction is finished, reset the state. */
@@ -195,6 +200,7 @@ static void vss_handle_request(struct work_struct *dummy)
 	 */
 	case VSS_OP_THAW:
 	case VSS_OP_FREEZE:
+	case VSS_OP_HOT_BACKUP:
 		if (vss_transaction.state < HVUTIL_READY) {
 			/* Userspace is not registered yet */
 			vss_respond_to_host(HV_E_FAIL);
@@ -203,9 +209,6 @@ static void vss_handle_request(struct work_struct *dummy)
 		vss_transaction.state = HVUTIL_HOSTMSG_RECEIVED;
 		vss_send_op();
 		return;
-	case VSS_OP_HOT_BACKUP:
-		vss_transaction.msg->vss_cf.flags = VSS_HBU_NO_AUTO_RECOVERY;
-		break;
 	case VSS_OP_GET_DM_INFO:
 		vss_transaction.msg->dm_info.flags = 0;
 		break;
diff --git a/tools/hv/hv_vss_daemon.c b/tools/hv/hv_vss_daemon.c
index 5d51d6f..e082980 100644
--- a/tools/hv/hv_vss_daemon.c
+++ b/tools/hv/hv_vss_daemon.c
@@ -250,6 +250,9 @@ int main(int argc, char *argv[])
 				syslog(LOG_ERR, "/etc/fstab and /proc/mounts");
 			}
 			break;
+		case VSS_OP_HOT_BACKUP:
+			syslog(LOG_INFO, "VSS: op=CHECK HOT BACKUP\n");
+			break;
 		default:
 			syslog(LOG_ERR, "Illegal op:%d\n", op);
 		}
-- 
1.7.4.1

Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

[PATCH 1/2] Drivers: hv: utils: Continue to poll VSS channel after handling requests. kys@exchange.microsoft.com - 2016-08-19 03:10 +0200
  [PATCH 2/2] Drivers: hv: utils: Check VSS daemon is listening before a hot backup kys@exchange.microsoft.com - 2016-08-19 03:20 +0200

csiph-web