** Description changed:
- With commit 30460e1ea3e6 ("fs: Enable bmap() function to properly return
- errors"), applied to v5.6-rc1, running swapon on a file that has holes
- returns an error (EINVAL); hibinit-agent is creating the swap file just
- using fallocate(), without touching the whole file by deafult, so there
- might be holes, swapon fails and hibernation cannot be performed.
+ SRU Justification
+
+ Impact: Running swapon on ext4 with a file with holes fails in the
+ Groovy 5.8 kernel. This prevents using swap files created using
+ fallocate(), which prevents hibernation in EC2.
+
+ Fix: Commit 424de74af0d0679e99660904a5f472acd85bdb73 from linux-next
+ implements swap_activate aops to fix this issue.
+
+ Test Case: Run swapon with a file allocated using fallocate() in an ext4
+ filesystem. With the fix this should be successful, and it should be
+ possible to hibernate/resume an EC2 instance using such a swapfile.
+
+ Regression Potential: The code changes only impact activating swap on
+ ext4, so regressions are possible for this operation. All other
+ operations should not be impacted.
+
+ ---
+
+
+ With commit 30460e1ea3e6 ("fs: Enable bmap() function to properly return errors"), applied to v5.6-rc1, running swapon on a file that has holes returns an error (EINVAL); hibinit-agent is creating the swap file just using fallocate(), without touching the whole file by deafult, so there might be holes, swapon fails and hibernation cannot be performed.
To prevent this problem we need to touch the swap file before using it
and this can be done setting "touch-swap = True" in /etc/hibinit-
config.cfg.
The downside of this setting is that a new instance requires more time
to be properly "initialized" the first time it boots due to the extra
I/O required to touch the swap file (this additional I/O can be quite
consistent in large instances, like c5.18xlarge for example), but I
don't see a better way to make sure the file is all allocated without
holes, so I guess we need to turn on this option if we want to use
hibernation w/ kernels >= 5.6.
** Changed in: linux (Ubuntu Groovy)
Status: Incomplete => In Progress
** Changed in: linux (Ubuntu Groovy)
Assignee: (unassigned) => Seth Forshee (sforshee)
--
You received this bug notification because you are subscribed to linux
in Ubuntu.
Matching subscriptions: Bgg, Bmail, Nb
https://bugs.launchpad.net/bugs/1892728
Title:
ec2-hibinit-agent needs to properly initialize swap file
Status in linux package in Ubuntu:
In Progress
Status in linux source package in Groovy:
In Progress
Bug description:
SRU Justification
Impact: Running swapon on ext4 with a file with holes fails in the
Groovy 5.8 kernel. This prevents using swap files created using
fallocate(), which prevents hibernation in EC2.
Fix: Commit 424de74af0d0679e99660904a5f472acd85bdb73 from linux-next
implements swap_activate aops to fix this issue.
Test Case: Run swapon with a file allocated using fallocate() in an
ext4 filesystem. With the fix this should be successful, and it should
be possible to hibernate/resume an EC2 instance using such a swapfile.
Regression Potential: The code changes only impact activating swap on
ext4, so regressions are possible for this operation. All other
operations should not be impacted.
---
With commit 30460e1ea3e6 ("fs: Enable bmap() function to properly return errors"), applied to v5.6-rc1, running swapon on a file that has holes returns an error (EINVAL); hibinit-agent is creating the swap file just using fallocate(), without touching the whole file by deafult, so there might be holes, swapon fails and hibernation cannot be performed.
To prevent this problem we need to touch the swap file before using it
and this can be done setting "touch-swap = True" in /etc/hibinit-
config.cfg.
The downside of this setting is that a new instance requires more time
to be properly "initialized" the first time it boots due to the extra
I/O required to touch the swap file (this additional I/O can be quite
consistent in large instances, like c5.18xlarge for example), but I
don't see a better way to make sure the file is all allocated without
holes, so I guess we need to turn on this option if we want to use
hibernation w/ kernels >= 5.6.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1892728/+subscriptions
Комментариев нет:
Отправить комментарий