From 2dff5cabfa0f9e141ca91c6910e105859b8f7963 Mon Sep 17 00:00:00 2001 From: shaoyunl Date: Fri, 24 Jul 2015 13:35:22 -0400 Subject: [PATCH] Minor fix in libhsathunk for KFDMemory test Signed-off-by: shaoyun liu(shaoyun.liu@amd.com) Reviewed-by: Ben Goz(Ben.Goz@amd.com) --- src/events.c | 3 ++- src/memory.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/events.c b/src/events.c index d64f601ebd..f4217c2c58 100644 --- a/src/events.c +++ b/src/events.c @@ -79,8 +79,9 @@ hsaKmtCreateEvent( if (events_page == NULL && args.event_page_offset > 0) { events_page = mmap(NULL, KFD_SIGNAL_EVENT_LIMIT * 8, PROT_WRITE | PROT_READ, MAP_SHARED, kfd_fd, args.event_page_offset); - if (events_page == NULL) { + if (events_page == MAP_FAILED) { hsaKmtDestroyEvent(e); + events_page = NULL; return HSAKMT_STATUS_ERROR; } } diff --git a/src/memory.c b/src/memory.c index 202e76de3f..7adc4fb914 100644 --- a/src/memory.c +++ b/src/memory.c @@ -121,7 +121,8 @@ hsaKmtAllocMemory( /* The required size should be page aligned (GDS?) */ page_size = PageSizeFromFlags(MemFlags.ui32.PageSize); - if ((SizeInBytes & (page_size-1)) && !MemFlags.ui32.GDSMemory) + if ((!MemoryAddress) || (!SizeInBytes) || + (SizeInBytes & (page_size-1))) return HSAKMT_STATUS_INVALID_PARAMETER; if (MemFlags.ui32.HostAccess && !MemFlags.ui32.NonPaged && !MemFlags.ui32.Scratch) {