I can confirm now hibernation can work with 5.4.0-1023, despite a
harmless warning:

root@decui-tmp-2004:~# echo disk >/sys/power/state
[   56.945758] PM: hibernation entry
[   57.165520] Filesystems sync: 0.007 seconds
[   57.169492] Freezing user space processes ... (elapsed 0.001 seconds) done.
[   57.177529] OOM killer disabled.
[   57.180702] PM: Marking nosave pages: [mem 0x00000000-0x00000fff]
[   57.185925] PM: Marking nosave pages: [mem 0x0009f000-0x000fffff]
[   57.191239] PM: Marking nosave pages: [mem 0x3fff0000-0xffffffff]
[   57.197810] PM: Basic memory bitmaps created
[   57.201563] PM: Preallocating image memory... done (allocated 210160 pages)
[   57.623616] PM: Allocated 840640 kbytes in 0.41 seconds (2050.34 MB/s)
[   57.629195] Freezing remaining freezable tasks ... (elapsed 0.000 seconds) 
done.
[   57.637795] serial 00:04: disabled
[   58.847939] Disabling non-boot CPUs ...
[   58.852140] smpboot: CPU 1 is now offline
[   58.857921] smpboot: CPU 2 is now offline
[   58.863623] smpboot: CPU 3 is now offline
[   58.869363] unchecked MSR access error: WRMSR to 0x40000106 (tried to write 
0x412d4f49 000100ee) at rIP: 0xffffffff9ee1d9b8 (hv_cpu_die+0xe8/0x110)
[   58.870052] Call Trace:
[   58.870052]  hv_suspend+0x5a/0x87
[   58.870052]  syscore_suspend+0x59/0x1a0
[   58.870052]  hibernation_snapshot+0x1bc/0x460
[   58.870052]  hibernate.cold+0x6d/0x1f6
[   58.870052]  state_store+0xde/0xe0
[   58.870052]  kobj_attr_store+0x12/0x20
[   58.870052]  sysfs_kf_write+0x3e/0x50
[   58.870052]  kernfs_fop_write+0xda/0x1b0
[   58.870052]  __vfs_write+0x1b/0x40
[   58.870052]  vfs_write+0xb9/0x1a0
[   58.870052]  ksys_write+0x67/0xe0
[   58.870052]  __x64_sys_write+0x1a/0x20
[   58.870052]  do_syscall_64+0x5e/0x200
[   58.870052]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[   58.870052] RIP: 0033:0x7f2f9dfcb057
[   58.870052] Code: 64 89 02 48 c7 c0 ff ff ff ff eb bb 0f 1f 80 00 00 00 00 
f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 01 00 00 00 0f 05 <48> 3d 00 
f0 ff ff 77 51 c3 48 83 ec 28 48 89 54 24 18 48 89 74 24
[   58.870052] RSP: 002b:00007ffe96046608 EFLAGS: 00000246 ORIG_RAX: 
0000000000000001
[   58.870052] RAX: ffffffffffffffda RBX: 0000000000000005 RCX: 00007f2f9dfcb057
[   58.870052] RDX: 0000000000000005 RSI: 000055ca5250c450 RDI: 0000000000000001
[   58.870052] RBP: 000055ca5250c450 R08: 000000000000000a R09: 0000000000000004
[   58.870052] R10: 000055ca50a2d017 R11: 0000000000000246 R12: 0000000000000005
[   58.870052] R13: 00007f2f9e0a66a0 R14: 00007f2f9e0a74a0 R15: 00007f2f9e0a68a0
[   58.870052] PM: Creating hibernation image:
[   58.870052] PM: Need to copy 201788 pages
[   58.870052] PM: Normal pages needed: 201788 + 1024, available pages: 3992087
[   58.870052] PM: Hibernation image created (201788 pages copied)
[   58.870052] Enabling non-boot CPUs ...
[   58.870052] x86: Booting SMP configuration:
[   58.871862] smpboot: Booting Node 0 Processor 1 APIC 0x1
[   58.875719] CPU1 is up
[   58.877194] smpboot: Booting Node 0 Processor 2 APIC 0x2
[   58.881047] CPU2 is up
[   58.882499] smpboot: Booting Node 0 Processor 3 APIC 0x3
[   58.886033] CPU3 is up
[   58.891099] hv_utils: KVP IC version 4.0
[   58.893181] hv_utils: Shutdown IC version 3.2
[   58.896580] hv_balloon: Using Dynamic Memory protocol version 2.0
[   60.186366] hv_utils: Heartbeat IC version 3.0
[   61.952674] hv_utils: TimeSync IC version 4.0
[   68.108243] hv_balloon: Max. dynamic memory size: 16384 MB
[   70.552511] serial 00:03: activated
[   70.620778] serial 00:04: activated
[   70.692760] PM: Using 3 thread(s) for compression
[   70.716148] ata1.01: host indicates ignore ATA devices, ignored
[   70.760736] PM: Compressing and saving image data (202183 pages)...
[   70.760749] PM: Image saving progress:   0%
[   70.831492] ata1.00: host indicates ignore ATA devices, ignored
[   74.568857] PM: Image saving progress:  10%
[   89.707652] PM: Image saving progress:  20%
[  109.659651] PM: Image saving progress:  30%
[  125.565315] PM: Image saving progress:  40%
[  140.112605] PM: Image saving progress:  50%
[  146.074334] PM: Image saving progress:  60%
[  152.507964] PM: Image saving progress:  70%
[  161.068827] PM: Image saving progress:  80%
[  170.115167] PM: Image saving progress:  90%
[  177.616417] PM: Image saving progress: 100%
[  178.566922] PM: Image saving done
[  178.623924] PM: Wrote 808732 kbytes in 107.80 seconds (7.50 MB/s)
[  178.686742] PM: S|
[  178.791430] kvm: exiting hardware virtualization
[  178.851852] sd 0:0:0:0: [sdb] Synchronizing SCSI cache
[  178.913444] ACPI: Preparing to enter system sleep state S5
[  178.975244] reboot: Power down
[  179.043250] acpi_power_off called

This warning can be fixed by this upstream fix:
38dce4195f0d ("x86/hyperv: Properly suspend/resume reenlightenment 
notifications")

How to reproduce the warning: before following
https://bugs.launchpad.net/ubuntu/+source/linux-
azure/+bug/1880032/comments/14 to test hibernation, make sure that
"lsmod" shows kvm-intel is loaded (if not, please run "modprobe kvm-
intel").

IMO this patch is not urgent so it can be combined with the next kernel
relesae.

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-azure in Ubuntu.
https://bugs.launchpad.net/bugs/1891931

Title:
  [linux-azure] Panic when triggering hibernation

Status in linux-azure package in Ubuntu:
  Invalid
Status in linux-azure source package in Focal:
  Fix Released

Bug description:
  [Impact]

  We backported several upstream commits in LP #1880032, but the
  following commit wasn't necessary and it's causing a panic when trying
  to hibernate an azure instance, as described by comment #8 in LP
  #1880032 (https://bugs.launchpad.net/ubuntu/+source/linux-
  azure/+bug/1880032/comments/8):

  0a14dbaa0736 ("video: hyperv_fb: Fix hibernation for the deferred IO 
feature"):
  
https://git.launchpad.net/~canonical-kernel/ubuntu/+source/linux-azure/+git/focal/commit/?h=Ubuntu-azure-5.4.0-1022.22&id=0a14dbaa0736a6021c02e74d42cf3a7ca5438da6

  We should include the patch only if the kernel also includes
  a4ddb11d297e ("video: hyperv: hyperv_fb: Support deferred IO for Hyper-V 
frame buffer driver"

  I manage to reproduce the panic and I can confirm that reverting the
  offending commit solves the problem. I managed to test it on several D
  and E instances types and the system successfully hibernates. I also
  tried to test the scenarios where the system has high memory usage and
  on a 8GB VM hibernation worked up until 70% of memory utilization.

  [ 67.736061] ------------[ cut here ]------------
  [ 67.736068] WARNING: CPU: 5 PID: 1358 at kernel/workqueue.c:3040 
__flush_work+0x1b5/0x1d0
  [ 67.736068] Modules linked in: xt_owner iptable_security xt_conntrack 
nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 libcrc32c bpfilter nls_iso8859_1 
dm_multipath scsi_dh_rdac scsi_dh_emc scsi_dh_alua sb_edac crct10dif_pclmul 
crc32_pclmul ghash_clmulni_intel aesni_intel crypto_simd cryptd glue_helper 
joydev hid_generic hyperv_fb cfbfillrect hid_hyperv intel_rapl_perf serio_raw 
hyperv_keyboard pata_acpi hv_netvsc hv_balloon hid cfbimgblt pci_hyperv 
cfbcopyarea hv_utils pci_hyperv_intf sch_fq_codel drm 
drm_panel_orientation_quirks i2c_core ip_tables x_tables autofs4
  [ 67.736088] CPU: 5 PID: 1358 Comm: bash Not tainted 5.4.0-1022-azure 
#22-Ubuntu
  [ 67.736089] Hardware name: Microsoft Corporation Virtual Machine/Virtual 
Machine, BIOS 090007 06/02/2017
  [ 67.736091] RIP: 0010:__flush_work+0x1b5/0x1d0
  [ 67.736092] Code: f0 eb e3 4d 8b 7c 24 20 e9 f3 fe ff ff 8b 0b 48 8b 53 08 
83 e1 08 48 0f ba 2b 03 80 c9 f0 e9 4f ff ff ff 0f 0b e9 68 ff ff ff <0f> 0b 45 
31 f6 e9 5e ff ff ff e8 ec e0 fd ff 66 66 2e 0f 1f 84 00
  [ 67.736095] RSP: 0018:ffffa7ce8a8ffb78 EFLAGS: 00010246
  [ 67.736096] RAX: 0000000000000000 RBX: ffff8be3621f02a0 RCX: 0000000000000000
  [ 67.736096] RDX: 0000000000000001 RSI: 0000000000000001 RDI: ffff8be3621f02a0
  [ 67.736097] RBP: ffffa7ce8a8ffbf0 R08: 0000000000000000 R09: 00000000ff010101
  [ 67.736098] R10: ffff8be363f7a320 R11: 0000000000000001 R12: ffff8be3621f02a0
  [ 67.736098] R13: 0000000000000001 R14: 0000000000000001 R15: ffffffffbc390fd1
  [ 67.736099] FS: 00007f6df35fe740(0000) GS:ffff8be375d40000(0000) 
knlGS:0000000000000000
  [ 67.736100] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
  [ 67.736100] CR2: 0000561eef2c1b50 CR3: 0000000e40a14004 CR4: 00000000001706e0
  [ 67.736102] Call Trace:
  [ 67.736108] __cancel_work_timer+0x107/0x180
  [ 67.736119] cancel_delayed_work_sync+0x13/0x20
  [ 67.736121] hvfb_suspend+0x48/0x80 [hyperv_fb]
  [ 67.736122] vmbus_suspend+0x2a/0x40
  [ 67.736125] dpm_run_callback+0x5b/0x150
  [ 67.736127] __device_suspend_noirq+0x9e/0x2f0
  [ 67.736128] dpm_suspend_noirq+0x101/0x2d0
  [ 67.736130] dpm_suspend_end+0x53/0x80
  [ 67.736132] hibernation_snapshot+0xd8/0x460
  [ 67.736133] hibernate.cold+0x6d/0x1f6
  [ 67.736135] state_store+0xde/0xe0
  [ 67.736138] kobj_attr_store+0x12/0x20
  [ 67.736141] sysfs_kf_write+0x3e/0x50
  [ 67.736142] kernfs_fop_write+0xda/0x1b0
  [ 67.736145] __vfs_write+0x1b/0x40
  [ 67.736147] vfs_write+0xb9/0x1a0
  [ 67.736149] ksys_write+0x67/0xe0
  [ 67.736150] __x64_sys_write+0x1a/0x20
  [ 67.736152] do_syscall_64+0x5e/0x200
  [ 67.736156] entry_SYSCALL_64_after_hwframe+0x44/0xa9
  [ 67.736157] RIP: 0033:0x7f6df3712057

  [Test Case]

  Follow the steps from https://bugs.launchpad.net/ubuntu/+source/linux-
  azure/+bug/1880032/comments/14.

  [Regression Potential]

  The revert touches the Hyper-V framebuffer driver and can potentially
  cause the VM to not boot or cause hibernation to fail (again).
  Although the risk is low.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-azure/+bug/1891931/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to