xfree86: Fix powerpc build with -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast
memType is a uint64_t on powerpc. Using memType only really makes sense for *physical* addresses, which can be 64-bit for 32-bit systems running on 64-bit hardware. However, unmapVidMem() only deals with *virtual* addresses, which are guaranteed to fit into an uintptr_t. Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
This commit is contained in:
parent
a551f126cc
commit
eb3377ffb8
|
@ -465,11 +465,11 @@ mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int flags)
|
|||
static void
|
||||
unmapVidMem(int ScreenNum, pointer Base, unsigned long Size)
|
||||
{
|
||||
memType alignOff = (memType)Base
|
||||
- ((memType)Base & ~(getpagesize() - 1));
|
||||
uintptr_t alignOff = (uintptr_t)Base
|
||||
- ((uintptr_t)Base & ~(getpagesize() - 1));
|
||||
|
||||
DebugF("alignment offset: %lx\n",alignOff);
|
||||
munmap((caddr_t)((memType)Base - alignOff), (Size + alignOff));
|
||||
DebugF("alignment offset: %lx\n", (unsigned long)alignOff);
|
||||
munmap((void *)((uintptr_t)Base - alignOff), (Size + alignOff));
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user