Subject: bus_dmamem_alloc(9) question
To: None <>
From: Ingolf Koch <>
List: tech-kern
Date: 02/16/2000 22:55:23

according to bus_dma(9), the third (alignment) and fourth
(boundary) parameters of bus_dmamem_alloc() must be a
power of 2. Grepping for bus_dmamem_alloc in src/sys/dev/*/*.c
shows many calls where one of the two parameters is 0, i.e.
not a power of 2. One of the many examples is ic/cs4231.c 1.2,
line 249.

While an alignment of 0 is probably harmless ("it will be
rounded up to the hardware page size"), a boundary of 0 is
not (bus_dma(9): "A boundary value less than the size of the
allocation is invalid.").

How is the value 0 handled?


Ingolf Koch     ICQ#60829470     Beste Kneipe in Jena-Ost
PGP: 0x7B3B5661  213C 828E 0C92 16B5  05D0 4D5B A324 EC04