From a731f8f9dd62c80e4c927789afeb3a2efae4d64c Mon Sep 17 00:00:00 2001 From: Andreas Hansson Date: Wed, 19 Sep 2012 06:15:46 -0400 Subject: [PATCH] Mem: Remove the file parameter from AbstractMemory This patch removes the unused file parameter from the AbstractMemory. The patch serves to make it easier to transition to a separation of the actual contigious host memory backing store, and the gem5 memory controllers. Without the file parameter it becomes easier to hide the creation of the mmap in the PhysicalMemory, as there are no longer any reasons to expose the actual contigious ranges to the user. To the best of my knowledge there is no use of the parameter, so the change should not affect anyone. --- src/mem/AbstractMemory.py | 1 - src/mem/abstract_mem.cc | 24 ++++-------------------- 2 files changed, 4 insertions(+), 21 deletions(-) diff --git a/src/mem/AbstractMemory.py b/src/mem/AbstractMemory.py index bf1621f4d..ce3f04c49 100644 --- a/src/mem/AbstractMemory.py +++ b/src/mem/AbstractMemory.py @@ -46,7 +46,6 @@ class AbstractMemory(MemObject): type = 'AbstractMemory' abstract = True range = Param.AddrRange(AddrRange('128MB'), "Address range") - file = Param.String('', "Memory-mapped file") null = Param.Bool(False, "Do not store data, always return zero") zero = Param.Bool(False, "Initialize memory with zeros") diff --git a/src/mem/abstract_mem.cc b/src/mem/abstract_mem.cc index ebe4a64b5..4d34bec80 100644 --- a/src/mem/abstract_mem.cc +++ b/src/mem/abstract_mem.cc @@ -76,29 +76,13 @@ AbstractMemory::AbstractMemory(const Params *p) : if (params()->null) return; - if (params()->file == "") { - int map_flags = MAP_ANON | MAP_PRIVATE; - pmemAddr = (uint8_t *)mmap(NULL, size(), - PROT_READ | PROT_WRITE, map_flags, -1, 0); - } else { - int map_flags = MAP_PRIVATE; - int fd = open(params()->file.c_str(), O_RDONLY); - long _size = lseek(fd, 0, SEEK_END); - if (_size != range.size()) { - fatal("Specified size %d does not match file %s %d\n", - range.size(), params()->file, _size); - } - lseek(fd, 0, SEEK_SET); - pmemAddr = (uint8_t *)mmap(NULL, roundUp(_size, sysconf(_SC_PAGESIZE)), - PROT_READ | PROT_WRITE, map_flags, fd, 0); - } + int map_flags = MAP_ANON | MAP_PRIVATE; + pmemAddr = (uint8_t *)mmap(NULL, size(), + PROT_READ | PROT_WRITE, map_flags, -1, 0); if (pmemAddr == (void *)MAP_FAILED) { perror("mmap"); - if (params()->file == "") - fatal("Could not mmap!\n"); - else - fatal("Could not find file: %s\n", params()->file); + fatal("Could not mmap!\n"); } //If requested, initialize all the memory to 0 -- 2.30.2