From: Alex Ng Date: Mon, 27 Feb 2017 19:11:58 +0000 (-0500) Subject: Drivers: hv: vss: Operation timeouts should match host expectation X-Git-Tag: Ubuntu-snapdragon-4.4.0-1057.61~1010 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=5f829acf93efa8f7f345af312f3ba5f3998cf74e;p=mirror_ubuntu-artful-kernel.git Drivers: hv: vss: Operation timeouts should match host expectation BugLink: http://bugs.launchpad.net/bugs/1470250 Increase the timeout of backup operations. When system is under I/O load, it needs more time to freeze. These timeout values should also match the host timeout values more closely. Signed-off-by: Alex Ng Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman (cherry picked from commit b357fd3908c1191f2f56e38aa77f2aecdae18bc8) Signed-off-by: Joseph Salisbury Acked-by: Brad Figg Acked-by: Stefan Bader Signed-off-by: Brad Figg --- diff --git a/drivers/hv/hv_snapshot.c b/drivers/hv/hv_snapshot.c index a6707133c297..c42ae8261d27 100644 --- a/drivers/hv/hv_snapshot.c +++ b/drivers/hv/hv_snapshot.c @@ -31,7 +31,10 @@ #define VSS_MINOR 0 #define VSS_VERSION (VSS_MAJOR << 16 | VSS_MINOR) -#define VSS_USERSPACE_TIMEOUT (msecs_to_jiffies(10 * 1000)) +/* + * Timeout values are based on expecations from host + */ +#define VSS_FREEZE_TIMEOUT (15 * 60) /* * Global state maintained for transaction that is being processed. For a class @@ -179,7 +182,8 @@ static void vss_send_op(void) vss_transaction.state = HVUTIL_USERSPACE_REQ; - schedule_delayed_work(&vss_timeout_work, VSS_USERSPACE_TIMEOUT); + schedule_delayed_work(&vss_timeout_work, op == VSS_OP_FREEZE ? + VSS_FREEZE_TIMEOUT * HZ : HV_UTIL_TIMEOUT * HZ); rc = hvutil_transport_send(hvt, vss_msg, sizeof(*vss_msg), NULL); if (rc) {