Project

General

Profile

Actions

Bug #2181

closed

contigmalloc_map() failure

Added by masterblaster over 12 years ago. Updated over 12 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

Somewhere between v2.13.0-39-gc3ec66..v2.13.0-204-gdf5ed code changes cause now
xorg radeon driver to fail memory allocation, falling back to sw operation; this
mean no dri and no Xv (guess how long windows scrolling takes with a full HD
monitor...)

From dmesg:

contigmalloc_map: failed size 33554432 low=0 high=ffffffff align=4096 boundary=0
flags=00000102

Happens everytime at system startup where no heavy memory load / fragmentation
should happen. Allocation size is 1/127 of low--high range (so not a terrific
one), flags are NOWAIT|ZERO.

kldunload radeon and drm (latter causes calling contigmalloc thru ioctl) doesn't
help.

I'm running v2.13.0.207.gdae741-DEVELOPMENT x86_64

Actions #1

Updated by masterblaster over 12 years ago

Unfortunately commit bc3396b8d6a56c64d72b08d59dcd520b018dd139 didn't help

At v2.13.0.229.gae286-DEVELOPMENT

$ dmesg |tail
HAMMER mounted clean, no recovery needed
Mounting devfs
sgioctl: rejecting cmd 0x40906468
sgioctl: rejecting cmd 0x40906468
sgioctl: rejecting cmd 0x40906468
sgioctl: rejecting cmd 0x40906468
drm0: <ATI Radeon HD 3450> on vgapci0
vgapci0: child drm0 requested pci_enable_busmaster
info: [drm] Initialized radeon 1.31.0 20080613
contigmalloc_map: failed size 33554432 low=0 high=ffffffff align=4096 boundary=0
flags=00000102

$ kldstat
Id Refs Address Size Name
1 17 0xffffffff80200000 d1d050 kernel
2 1 0xffffffff80f1e000 4a378 snd_hda.ko
3 3 0xffffffff80f69000 1af9f8 sound.ko
4 1 0xffffffff81119000 19d08 ukbd.ko
5 1 0xffffffff81133000 4b5f8 snd_uaudio.ko
6 1 0xffffffff8117f000 6274d0 acpi.ko
7 1 0xffffffff817a7000 bbf98 ahci.ko
8 1 0xffffffff81863000 40b80 ehci.ko
9 1 0xffffffff81e32000 141000 radeon.ko
10 1 0xffffffff81f73000 12d000 drm.ko

Actions #2

Updated by sepherosa over 12 years ago

On Mon, Nov 7, 2011 at 4:34 AM, Magliano Andrea (via DragonFly issue
tracker) <> wrote:

New submission from Magliano Andrea <>:

Somewhere between v2.13.0-39-gc3ec66..v2.13.0-204-gdf5ed code changes cause now
xorg radeon driver to fail memory allocation, falling back to sw operation; this
mean no dri and no Xv (guess how long windows scrolling takes with a full HD
monitor...)

From dmesg:

contigmalloc_map: failed size 33554432 low=0 high=ffffffff align=4096 boundary=0
flags=00000102

Happens everytime at system startup where no heavy memory load / fragmentation
should happen. Allocation size is 1/127 of low--high range (so not a terrific
one), flags are NOWAIT|ZERO.

Change NOWAIT -> WAITOK, and then give it a try.

Best Regards,
sephe

Actions #3

Updated by masterblaster over 12 years ago

  • Status changed from New to Closed

Solved by commit 79d182b0d3dee841326d364c0e92e46c405765e6

This issue was triggered by X server, i.e. an application starting far after kernel memory setup at boot time: it's likely vm.dma_reserved=..m is needed in /boot/loader.conf too.

With vm.dma_reserved=64m this issue is solved for me (radeon Xorg driver is requesting 32m in this case).

Actions

Also available in: Atom PDF