Hi, This is an updated version of the v1 patchset: https://lkml.org/lkml/2019/9/11/861 Patch #1 is a new patch that makes the daemons more robust. Patch #2 is the same as v1. Patch #3 sends the host-initiated hibernation request to the user space via udev. (v1 used call_usermodehelper() and "/sbin/hyperv-hibernate".) Patch #4 handles fcopy/vss specially to avoid possible inconsistent states. Please review. Thanks! Dexuan Cui (4): Patch #1: Tools: hv: Reopen the devices if read() or write() returns errors Patch #2: hv_utils: Support host-initiated restart request Patch #3: hv_utils: Support host-initiated hibernation request Patch #4: hv_utils: Add the support of hibernation drivers/hv/hv_fcopy.c | 58 +++++++++++++++- drivers/hv/hv_kvp.c | 44 +++++++++++- drivers/hv/hv_snapshot.c | 60 ++++++++++++++++- drivers/hv/hv_util.c | 133 ++++++++++++++++++++++++++++++++++++- drivers/hv/hyperv_vmbus.h | 6 ++ include/linux/hyperv.h | 2 + tools/hv/hv_fcopy_daemon.c | 19 ++++-- tools/hv/hv_kvp_daemon.c | 25 ++++--- tools/hv/hv_vss_daemon.c | 25 +++++-- 9 files changed, 344 insertions(+), 28 deletions(-) -- 2.19.1