[SRU][F/E][aws][PATCH v2 0/1] aws: disable CONFIG_DMA_CMA
Andrea Righi
andrea.righi at canonical.com
Fri May 22 13:34:31 UTC 2020
BugLink: https://bugs.launchpad.net/bugs/1879711
[Impact]
The option CONFIG_DMA_CMA seems to cause hibernation failures on the
t2.* instance types (Xen).
With this option enabled device drivers are allowed to use the
Contiguous Memory Allocator (CMA) for DMA operations. So, drivers can
allocate large physically-contiguous blocks of memory, instead of
relying on the I/O map or scatter-gather support.
However, on resume, the memory used by DMA needs to be re-initialized /
re-allocated, but it may fail to allocate large chunks of contiguous
memory due to the fact that we also need to restore the hibernation
image, using more memory and causing a system hang during the resume
process.
[Test case]
Hibernate / resume any t2.* instance (especially t2.nano, where the
problem seems to happen 100% of the times after 2 consecutive
hibernate/resume cycles).
[Fix]
Disable CONFIG_DMA_CMA on amd64 and re-align config and annotations file
with master kernel.
NOTE: this option is already disabled in the generic kernel (see LP:
#1362261).
With this option disabled the success rate of hibernation on the t2.*
instance types during our tests jumped to 100%.
[Regression potential]
It is a .config change, no regression potential except for the fact that
disabling this option also disables the module 'etnaviv' (Vivante
graphic card), that is not really needed in the aws kernel.
Changes in v2:
- disable CONFIG_DMA_CMA only on amd64 and re-align annotations file
with master kernel
- provide patch for eoan:linux-aws
More information about the kernel-team
mailing list