** Tags added: cscc

-- 
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/1823753

Title:
  arm64: cma_alloc errors at boot

Status in linux package in Ubuntu:
  Fix Released
Status in linux source package in Disco:
  Fix Released
Status in linux source package in Eoan:
  Fix Released

Bug description:
  [Impact]
  We enabled CONFIG_DMA_CMA to fix bug 1803206, but that led to a regression
  on other arm64 systems that began spewing these messages on boot - sometimes 
> 10K of them:

  [   19.534097] cma: cma_alloc: alloc failed, req-size: 64 pages, ret: -12
  [   19.534109] cma: cma_alloc: alloc failed, req-size: 16 pages, ret: -12
  [   19.534113] cma: cma_alloc: alloc failed, req-size: 64 pages, ret: -12
  [   19.534126] cma: cma_alloc: alloc failed, req-size: 16 pages, ret: -12
  [   19.534130] cma: cma_alloc: alloc failed, req-size: 64 pages, ret: -12
  [   19.534142] cma: cma_alloc: alloc failed, req-size: 16 pages, ret: -12
  [   19.534146] cma: cma_alloc: alloc failed, req-size: 64 pages, ret: -12
  [   19.534157] cma: cma_alloc: alloc failed, req-size: 16 pages, ret: -12
  [   19.534161] cma: cma_alloc: alloc failed, req-size: 64 pages, ret: -12
  [   19.534173] cma: cma_alloc: alloc failed, req-size: 16 pages, ret: -12
  [   19.534177] cma: cma_alloc: alloc failed, req-size: 64 pages, ret: -12

  In a previous SRU (bug 1828092), we worked around this by just rate-
  limiting these messages. These are "err" priority messages though, so
  even a lower number of them is still disconcerting.

  [Fix]
  1) Bump up the amount of available CMA on arm64 to 32M (same as upstream 
defconfig)
  2) A patch-set from linux-next that redirects dma-direct contiguous 
allocations to alloc_pages() for single page allocations (single pages are by 
definition contiguous), avoiding CMA usage/fragmentation.

  [Test Case]
  dmesg | grep "cma_alloc: alloc failed"
  Some system configs will still have some of these errors even after this fix 
- but this should reduce them significantly. Per-driver optimizations can be 
used to make further improvements, but we should track those in other bugs.

  [Regression Risk]
  Tested on a HiSilicon D06 and HP m400 (Hi1620 & X-Gene arm64).
  Regression tested on:
   - Raspberry Pi 3B (see Comment #22)
   - Power9 system (ppc64el)
   - z/VM instance (s390x)
   - Intel Centerton system (amd64)

  Test builds are staged at http://ppa.launchpad.net/~dannf/ubuntu/cma

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