gallium: Weaken assertion about u_mm's align2 field.
authorEric Anholt <eric@anholt.net>
Sat, 21 Jan 2017 05:56:27 +0000 (16:56 +1100)
committerEric Anholt <eric@anholt.net>
Tue, 26 Sep 2017 21:50:29 +0000 (14:50 -0700)
vc5 MMU mappings are access-controlled at a 128kb boundary, so the 4kb
here was too small for that purpose.  Allowing any valid align2 value that
u_mm's 32-bit addressing can represent will still catch most cases of
people passing in a byte alignment.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
src/gallium/auxiliary/util/u_mm.c

index bd4c4e1b1060b3edd67545b1516a7beb7eecb717..7a45e291920e06ecd5068bfc7775c1a55528690a 100644 (file)
@@ -183,7 +183,10 @@ u_mmAllocMem(struct mem_block *heap, int size, int align2, int startSearch)
 
    assert(size >= 0);
    assert(align2 >= 0);
-   assert(align2 <= 12); /* sanity check, 2^12 (4KB) enough? */
+   /* Make sure that a byte alignment isn't getting passed for our
+    * power-of-two alignment arg.
+    */
+   assert(align2 < 32);
 
    if (!heap || align2 < 0 || size <= 0)
       return NULL;