[SRU,D,/,B,aws-edge,aws,PULL,v2] proper hibernation support
mbox series

Message ID 20200127162129.GB12892@xps-13
State New
Headers show
Series
  • [SRU,D,/,B,aws-edge,aws,PULL,v2] proper hibernation support
Related show

Pull-request

git://git.launchpad.net/~arighi/+git/bionic-linux aws-edge-arighi

Message

Andrea Righi Jan. 27, 2020, 4:21 p.m. UTC
BugLink: https://bugs.launchpad.net/bugs/1858618
BugLink: https://bugs.launchpad.net/bugs/1831940

The following patches are required to properly support hibernation with
bionic:linux-aws-edge / disco:linux-aws.

The most important patch is "PM / hibernate: memory_bm_find_bit():
Tighten node optimisation": this is a very critical bug fix for
hibernation that prevents potential memory corruptions on resume.

All the other hibernation-related SAUCE patches are required to improve
swapoff performance after a successful resume.

Moreover, some Xen-related patches have been included (ported from
bionic:linux-aws).

All these patches have been tested in the AWS environment with positive
results.

Changes in v2:
 - added missing Xen-related patches
 - added pm_async and image_size tunings

The following changes since commit 0f84693e79c7c596ac56d952851e0b9527679689:

  UBUNTU: Ubuntu-aws-edge-5.0.0-1019.21~18.04.1 (2019-10-03 00:49:16 -0400)

are available in the Git repository at:

  git://git.launchpad.net/~arighi/+git/bionic-linux aws-edge-arighi

for you to fetch changes up to caccf0c5e1ab5d5394d5c930585a3229a3a5bdea:

  UBUNTU SAUCE [aws]: xen: Only restore the ACPI SCI interrupt in xen_restore_pirqs. (2020-01-27 10:52:43 +0000)

----------------------------------------------------------------
Anchal Agarwal (1):
      UBUNTU SAUCE [aws]: ACPICA: Enable sleep button on ACPI legacy wake

Andrea Righi (4):
      UBUNTU SAUCE [aws] PM / hibernate: reduce memory pressure during image writing
      UBUNTU SAUCE [aws]: mm: swap: improve swap readahead heuristic
      UBUNTU SAUCE [aws]: PM / hibernate: make sure pm_async is always disabled
      UBUNTU SAUCE [aws]: PM / hibernate: set image_size to 0 by default

Andy Whitcroft (1):
      PM / hibernate: memory_bm_find_bit(): Tighten node optimisation

Eduardo Valentin (1):
      UBUNTU SAUCE [aws]: block: xen-blkfront: consider new dom0 features on restore

Frank van der Linden (2):
      UBUNTU SAUCE [aws]: xen: restore pirqs on resume from hibernation.
      UBUNTU SAUCE [aws]: xen: Only restore the ACPI SCI interrupt in xen_restore_pirqs.

Vineeth Remanan Pillai (2):
      mm: refactor swap-in logic out of shmem_getpage_gfp
      mm: rid swapoff of quadratic complexity

 arch/x86/xen/suspend.c           |   2 +
 drivers/acpi/acpica/hwsleep.c    |  11 +
 drivers/block/xen-blkfront.c     |   3 +
 drivers/xen/events/events_base.c |  45 +++
 include/linux/frontswap.h        |   7 +
 include/linux/shmem_fs.h         |   3 +-
 include/xen/events.h             |   1 +
 kernel/power/main.c              |   4 +-
 kernel/power/snapshot.c          |  10 +-
 kernel/power/swap.c              |  24 +-
 mm/shmem.c                       | 716 +++++++++++++++++++++------------------
 mm/swap.c                        |   2 +-
 mm/swap_state.c                  |  60 +---
 mm/swapfile.c                    | 433 +++++++++--------------
 14 files changed, 646 insertions(+), 675 deletions(-)

Comments

Marcelo Henrique Cerri Jan. 28, 2020, 10:38 p.m. UTC | #1
Acked-by: Marcelo Henrique Cerri <marcelo.cerri@canonical.com>
Khaled Elmously Feb. 10, 2020, 8:24 p.m. UTC | #2
I can't say much about the correctness of the code-changes, however:
 - There are commits in the pull that don't have BugLinks. Though a BugLink (to LP #1831940? Or should it be 1858618?) can be added when applying
 - A few of the commits already have ACKs. Some have 2 ACKs. How did that happen? Do those commits need to be reviewed again?
 - At least one commit appears to be neither an upstream patch nor a SAUCE patch. Usually for a commit to be accepted it needs to be one of those.



On 2020-01-27 17:21:29 , Andrea Righi wrote:
> BugLink: https://bugs.launchpad.net/bugs/1858618
> BugLink: https://bugs.launchpad.net/bugs/1831940
> 
> The following patches are required to properly support hibernation with
> bionic:linux-aws-edge / disco:linux-aws.
> 
> The most important patch is "PM / hibernate: memory_bm_find_bit():
> Tighten node optimisation": this is a very critical bug fix for
> hibernation that prevents potential memory corruptions on resume.
> 
> All the other hibernation-related SAUCE patches are required to improve
> swapoff performance after a successful resume.
> 
> Moreover, some Xen-related patches have been included (ported from
> bionic:linux-aws).
> 
> All these patches have been tested in the AWS environment with positive
> results.
> 
> Changes in v2:
>  - added missing Xen-related patches
>  - added pm_async and image_size tunings
> 
> The following changes since commit 0f84693e79c7c596ac56d952851e0b9527679689:
> 
>   UBUNTU: Ubuntu-aws-edge-5.0.0-1019.21~18.04.1 (2019-10-03 00:49:16 -0400)
> 
> are available in the Git repository at:
> 
>   git://git.launchpad.net/~arighi/+git/bionic-linux aws-edge-arighi
> 
> for you to fetch changes up to caccf0c5e1ab5d5394d5c930585a3229a3a5bdea:
> 
>   UBUNTU SAUCE [aws]: xen: Only restore the ACPI SCI interrupt in xen_restore_pirqs. (2020-01-27 10:52:43 +0000)
> 
> ----------------------------------------------------------------
> Anchal Agarwal (1):
>       UBUNTU SAUCE [aws]: ACPICA: Enable sleep button on ACPI legacy wake
> 
> Andrea Righi (4):
>       UBUNTU SAUCE [aws] PM / hibernate: reduce memory pressure during image writing
>       UBUNTU SAUCE [aws]: mm: swap: improve swap readahead heuristic
>       UBUNTU SAUCE [aws]: PM / hibernate: make sure pm_async is always disabled
>       UBUNTU SAUCE [aws]: PM / hibernate: set image_size to 0 by default
> 
> Andy Whitcroft (1):
>       PM / hibernate: memory_bm_find_bit(): Tighten node optimisation
> 
> Eduardo Valentin (1):
>       UBUNTU SAUCE [aws]: block: xen-blkfront: consider new dom0 features on restore
> 
> Frank van der Linden (2):
>       UBUNTU SAUCE [aws]: xen: restore pirqs on resume from hibernation.
>       UBUNTU SAUCE [aws]: xen: Only restore the ACPI SCI interrupt in xen_restore_pirqs.
> 
> Vineeth Remanan Pillai (2):
>       mm: refactor swap-in logic out of shmem_getpage_gfp
>       mm: rid swapoff of quadratic complexity
> 
>  arch/x86/xen/suspend.c           |   2 +
>  drivers/acpi/acpica/hwsleep.c    |  11 +
>  drivers/block/xen-blkfront.c     |   3 +
>  drivers/xen/events/events_base.c |  45 +++
>  include/linux/frontswap.h        |   7 +
>  include/linux/shmem_fs.h         |   3 +-
>  include/xen/events.h             |   1 +
>  kernel/power/main.c              |   4 +-
>  kernel/power/snapshot.c          |  10 +-
>  kernel/power/swap.c              |  24 +-
>  mm/shmem.c                       | 716 +++++++++++++++++++++------------------
>  mm/swap.c                        |   2 +-
>  mm/swap_state.c                  |  60 +---
>  mm/swapfile.c                    | 433 +++++++++--------------
>  14 files changed, 646 insertions(+), 675 deletions(-)
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
Andrea Righi Feb. 11, 2020, 7:22 a.m. UTC | #3
On Mon, Feb 10, 2020 at 03:24:12PM -0500, Khaled Elmously wrote:
> I can't say much about the correctness of the code-changes, however:
>  - There are commits in the pull that don't have BugLinks. Though a BugLink (to LP #1831940? Or should it be 1858618?) can be added when applying
>  - A few of the commits already have ACKs. Some have 2 ACKs. How did that happen? Do those commits need to be reviewed again?
>  - At least one commit appears to be neither an upstream patch nor a SAUCE patch. Usually for a commit to be accepted it needs to be one of those.

Thanks for the review, Khaled. About the commits that already have ACKs,
the reason is because I ported them from the bionic kernel and didn't
remove the Acked-by lines. I'll send a new pull request adding all the
missing information.

-Andrea
Andrea Righi Feb. 11, 2020, 7:23 a.m. UTC | #4
Superseded.

-Andrea

On Mon, Jan 27, 2020 at 05:21:29PM +0100, Andrea Righi wrote:
> BugLink: https://bugs.launchpad.net/bugs/1858618
> BugLink: https://bugs.launchpad.net/bugs/1831940
> 
> The following patches are required to properly support hibernation with
> bionic:linux-aws-edge / disco:linux-aws.
> 
> The most important patch is "PM / hibernate: memory_bm_find_bit():
> Tighten node optimisation": this is a very critical bug fix for
> hibernation that prevents potential memory corruptions on resume.
> 
> All the other hibernation-related SAUCE patches are required to improve
> swapoff performance after a successful resume.
> 
> Moreover, some Xen-related patches have been included (ported from
> bionic:linux-aws).
> 
> All these patches have been tested in the AWS environment with positive
> results.
> 
> Changes in v2:
>  - added missing Xen-related patches
>  - added pm_async and image_size tunings
> 
> The following changes since commit 0f84693e79c7c596ac56d952851e0b9527679689:
> 
>   UBUNTU: Ubuntu-aws-edge-5.0.0-1019.21~18.04.1 (2019-10-03 00:49:16 -0400)
> 
> are available in the Git repository at:
> 
>   git://git.launchpad.net/~arighi/+git/bionic-linux aws-edge-arighi
> 
> for you to fetch changes up to caccf0c5e1ab5d5394d5c930585a3229a3a5bdea:
> 
>   UBUNTU SAUCE [aws]: xen: Only restore the ACPI SCI interrupt in xen_restore_pirqs. (2020-01-27 10:52:43 +0000)
> 
> ----------------------------------------------------------------
> Anchal Agarwal (1):
>       UBUNTU SAUCE [aws]: ACPICA: Enable sleep button on ACPI legacy wake
> 
> Andrea Righi (4):
>       UBUNTU SAUCE [aws] PM / hibernate: reduce memory pressure during image writing
>       UBUNTU SAUCE [aws]: mm: swap: improve swap readahead heuristic
>       UBUNTU SAUCE [aws]: PM / hibernate: make sure pm_async is always disabled
>       UBUNTU SAUCE [aws]: PM / hibernate: set image_size to 0 by default
> 
> Andy Whitcroft (1):
>       PM / hibernate: memory_bm_find_bit(): Tighten node optimisation
> 
> Eduardo Valentin (1):
>       UBUNTU SAUCE [aws]: block: xen-blkfront: consider new dom0 features on restore
> 
> Frank van der Linden (2):
>       UBUNTU SAUCE [aws]: xen: restore pirqs on resume from hibernation.
>       UBUNTU SAUCE [aws]: xen: Only restore the ACPI SCI interrupt in xen_restore_pirqs.
> 
> Vineeth Remanan Pillai (2):
>       mm: refactor swap-in logic out of shmem_getpage_gfp
>       mm: rid swapoff of quadratic complexity
> 
>  arch/x86/xen/suspend.c           |   2 +
>  drivers/acpi/acpica/hwsleep.c    |  11 +
>  drivers/block/xen-blkfront.c     |   3 +
>  drivers/xen/events/events_base.c |  45 +++
>  include/linux/frontswap.h        |   7 +
>  include/linux/shmem_fs.h         |   3 +-
>  include/xen/events.h             |   1 +
>  kernel/power/main.c              |   4 +-
>  kernel/power/snapshot.c          |  10 +-
>  kernel/power/swap.c              |  24 +-
>  mm/shmem.c                       | 716 +++++++++++++++++++++------------------
>  mm/swap.c                        |   2 +-
>  mm/swap_state.c                  |  60 +---
>  mm/swapfile.c                    | 433 +++++++++--------------
>  14 files changed, 646 insertions(+), 675 deletions(-)