RE: [PATCH v2] Input: hyperv-keyboard: Add the support of hibernation

From: Michael Kelley
Date: Sun Nov 24 2019 - 15:31:36 EST


From: Dexuan Cui <decui@xxxxxxxxxxxxx> Sent: Tuesday, November 19, 2019 11:14 PM
>
> During the suspend process and resume process, if there is any keyboard
> event, there is a small chance the suspend and the resume process can be
> aborted because of hv_kbd_on_receive() -> pm_wakeup_hard_event().
>
> This behavior can be avoided by disabling the Hyper-V keyboard device as
> a wakeup source:
>
> echo disabled > /sys/bus/vmbus/drivers/hyperv_keyboard/XXX/power/wakeup
> (XXX is the device's GUID).

I'd like to see a more descriptive commit message, along the lines of:

Add suspend() and resume() functions so the Hyper-V virtual keyboard
can participate in VM hibernation.

Note that the keyboard is a "wakeup" device that could abort an in-progress
hibernation if there is keyboard event. No attempt is made to suppress this
behavior. If desired, a sysadmin can disable the keyboard as a wakeup device
using standard mechanisms such as:

echo disabled > /sys/bus/vmbus/drivers/hyperv_keyboard/XXX/power/wakeup
(where XXX is the device's GUID)

>
> Signed-off-by: Dexuan Cui <decui@xxxxxxxxxxxxx>
> ---
>
> This patch is basically a pure Hyper-V specific change. I suggest it should
> go through the Hyper-V tree:
> https://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux.git/log/?h=hyperv-next
>
> Changes in v2:
> Removed the "struct notifier_block pm_nb;" after the discussion
> with Dmitry Torokhov:
>
> https://lore.kernel.org/lkml/PU1P153MB016914A7C827CA35D7FEB66ABF8B0@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/T/#m8948c711301220a36a1a413eead74cd2fb6dcac1>
>
> drivers/input/serio/hyperv-keyboard.c | 27 +++++++++++++++++++++++++++
> 1 file changed, 27 insertions(+)
>

Notwithstanding the suggestion on the commit message,

Reviewed-by: Michael Kelley <mikelley@xxxxxxxxxxxxx>