Fix type mismatch on 32-bit systems

The umem_alloc_aligned() function should not assume that a 'void *'
type is 64-bit.  It will not be on 32-bit platforms.  Rather than
complicating the ASSERT to handle this it is simply removed.

Additionally, the '%lu' format specifier should not be assumed to
imply a 64-bit value.  Fix this by using the 'llu' format specifier
which will always be atleast 64-bit and explicitly casing the
variable to an u_longlong_t.  This issue is handled the same way
in many other parts of the code.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
This commit is contained in:
Brian Behlendorf
2015-05-11 12:05:05 -07:00
parent f9cab37291
commit 3df293404a
2 changed files with 6 additions and 5 deletions
-2
View File
@@ -109,8 +109,6 @@ umem_alloc_aligned(size_t size, size_t align, int flags)
return (NULL);
}
ASSERT0(P2PHASE_TYPED(ptr, align, uint64_t));
return (ptr);
}