Nothing to see in the log files, nothing is logged as the issue comes
after logging to files.

** Changed in: linux (Ubuntu)
       Status: Incomplete => Confirmed

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

Title:
  ASUS Z9PE-D8 WS needs custom DSDT fix to properly shutdown (random)

Status in linux package in Ubuntu:
  Confirmed

Bug description:
  Running Ubuntu server 20.04.1 LTS (CLI only), after switching from
  other distro (Manjaro and Artix) which present the same issue;
  basically I tried the debian based, arch based and systemd free
  distro.

  Issue description: issuing the command "shutdown -h now" or "poweroff -f" 
doesn't shutdown the system properly, the system hangs is S5.
  This doesn't happen all the time, but randomly, let's say in about 30% of 
cases.
  This happens not only with an installed system but also with the bootable usb 
installer.

  How to replicate: I really don't know, it seems very random, without a
  pattern.

  Motherboard: ASUS Z9PE-D8 WS with bios v. 5802 (dated 2015/10/15)
  CPU: 2x intel Xeon E5-2687w (SR0KG)

  After trying different proposed solutions for the "hanging at
  shutdown" issue (mostly by enabling/disabling things in grub and
  different kernels down to 4.9) I found out that only a DSDT fix solves
  the issue, and in particular in the _PTS method.

  Basically this is the original part of the extracted DSDT:

      Method (_PTS, 1, NotSerialized)  // _PTS: Prepare To Sleep
      {
          If (((Arg0 == 0x04) && (OSFL () == 0x02)))
          {
              Sleep (0x0BB8)
          }

          PTS (Arg0)
          DBG8 = Arg0
          WAKP [Zero] = Zero
          WAKP [One] = Zero
          WSSB = ASSB /* \ASSB */
          WOTB = AOTB /* \AOTB */
          WAXB = AAXB /* \AAXB */
          ASSB = Arg0
          AOTB = OSFL ()
          AAXB = Zero
          \_SB.SLPS = One
      }

  
  The fix (or better call it workaround) includes a "do nothing" if Arg0 is 
0x05 (state S5):

      Method (_PTS, 1, NotSerialized)
      {
         If (LEqual (Arg0, 0x05)) {}
         Else
         {
             Store (Arg0, DBG8)
             If (LAnd (LEqual (Arg0, 0x04), LEqual (OSFL (), 0x02)))
             {
                 Sleep (0x0BB8)
             }

             PTS (Arg0)
             Store (Zero, Index (WAKP, Zero))
             Store (Zero, Index (WAKP, One))
             Store (ASSB, WSSB)
             Store (AOTB, WOTB)
             Store (AAXB, WAXB)
             Store (Arg0, ASSB)
             Store (OSFL (), AOTB)
             Store (Zero, AAXB)
             Store (One, \_SB.SLPS)
         }
      }

  I really don't know why without injecting the DSDT fix it hangs randomly at 
shutdown.
  I reported the issue to the kernel bugtracker too, but it seems there's not 
much movement there :D

  I hope this can be fixed kernel side:
  For reference, this is the link to the kernel bugtracker:
  https://bugzilla.kernel.org/show_bug.cgi?id=210689

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1909115/+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