Public bug reported:

[Impact]

On hibernation xen-netfront is setting the device state on the xenbus to
"Closing" and then it's waiting for the backend state to acknowledge
that state (with a timeout). However, if the device is already in the
state "Closed" this opteration will always hit the timeout, preventing
the system to hibernate correctly.

[Test case]

It is a quite rare condition that can be reproduced hibernating/resuming
a Xen instance multiple times. When the problem happens we should in the
log a Xen error message like the following:

  Freezing timed out; the device may become inconsistent state

[Fix]

If the device is already in the state "Closed", simply tear it down
without notifying the Xen backend.

[Regression potential]

The fix would just prevent aborting hibernation if the netfront device
is already in a "Closed" state. The resume callback is forcing the
device into the "Initializing" state anyway, basically forcing a reset
of the device, so nothing else in the state machine can be potentially
broken.

** Affects: linux-aws (Ubuntu)
     Importance: Undecided
         Status: New

** Affects: linux-aws (Ubuntu Focal)
     Importance: Undecided
         Status: New

** Affects: linux-aws (Ubuntu Groovy)
     Importance: Undecided
         Status: New

** Also affects: linux-aws (Ubuntu Focal)
   Importance: Undecided
       Status: New

** Also affects: linux-aws (Ubuntu Groovy)
   Importance: Undecided
       Status: New

** Summary changed:

- aws: xen-netfront: prevent potential deadlock on hibernate
+ aws: xen-netfront: prevent potential error on hibernate

** Summary changed:

- aws: xen-netfront: prevent potential error on hibernate
+ aws: xen-netfront: potential error on hibernate

** Summary changed:

- aws: xen-netfront: potential error on hibernate
+ aws: xen-netfront: prevent potential error on hibernate

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

Title:
  aws: xen-netfront: prevent potential error on hibernate

Status in linux-aws package in Ubuntu:
  New
Status in linux-aws source package in Focal:
  New
Status in linux-aws source package in Groovy:
  New

Bug description:
  [Impact]

  On hibernation xen-netfront is setting the device state on the xenbus
  to "Closing" and then it's waiting for the backend state to
  acknowledge that state (with a timeout). However, if the device is
  already in the state "Closed" this opteration will always hit the
  timeout, preventing the system to hibernate correctly.

  [Test case]

  It is a quite rare condition that can be reproduced
  hibernating/resuming a Xen instance multiple times. When the problem
  happens we should in the log a Xen error message like the following:

    Freezing timed out; the device may become inconsistent state

  [Fix]

  If the device is already in the state "Closed", simply tear it down
  without notifying the Xen backend.

  [Regression potential]

  The fix would just prevent aborting hibernation if the netfront device
  is already in a "Closed" state. The resume callback is forcing the
  device into the "Initializing" state anyway, basically forcing a reset
  of the device, so nothing else in the state machine can be potentially
  broken.

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