[dpdk-dev] eal/linuxapp: check mmap return value MAP_FAILED

Message ID 20170815205336.9266-1-seth.howell@intel.com (mailing list archive)
State Superseded, archived
Headers

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/Intel-compilation success Compilation OK

Commit Message

Seth Howell Aug. 15, 2017, 8:53 p.m. UTC
  If mmap fails, it will return the value MAP_FAILED. Checking for this return
code allows us to properly identify mmap failures and report them as such
to the calling function.

Signed-off-by: Seth Howell <seth.howell@intel.com>
---
 lib/librte_eal/linuxapp/eal/eal_memory.c | 2 ++
 1 file changed, 2 insertions(+)
  

Patch

diff --git a/lib/librte_eal/linuxapp/eal/eal_memory.c b/lib/librte_eal/linuxapp/eal/eal_memory.c
index 5279128..ba76b02 100644
--- a/lib/librte_eal/linuxapp/eal/eal_memory.c
+++ b/lib/librte_eal/linuxapp/eal/eal_memory.c
@@ -716,6 +716,8 @@  create_shared_memory(const char *filename, const size_t mem_size)
 	}
 	retval = mmap(NULL, mem_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
 	close(fd);
+	if (retval == MAP_FAILED)
+	    return NULL;
 	return retval;
 }