From fd6f0c40755077962be0c90fd57da15a6f2884ae Mon Sep 17 00:00:00 2001 From: Naoki Hamada Date: Wed, 2 Jul 2014 14:00:46 +0900 Subject: [PATCH] Bookkeeping for error. modified: syscall.c --- executer/kernel/syscall.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/executer/kernel/syscall.c b/executer/kernel/syscall.c index 6726bc33..7f56fcb2 100644 --- a/executer/kernel/syscall.c +++ b/executer/kernel/syscall.c @@ -1203,14 +1203,14 @@ static int writecore(ihk_os_t os, unsigned long rcoretable, int chunks) { phys = ihk_device_map_memory(dev, rphys, size); pt = ihk_device_map_virtual(dev, phys, size, NULL, 0); ret = file->f_op->write(file, pt, size, &file->f_pos); + /* unmap the chunk */ + ihk_device_unmap_virtual(dev, pt, size); + ihk_device_unmap_memory(dev, phys, size); if (ret != size) { dprintk("core file write failed(%d).\n", ret); error = PTR_ERR(file); break; } - /* unmap the chunk out */ - ihk_device_unmap_virtual(dev, pt, size); - ihk_device_unmap_memory(dev, phys, size); } /* unmap the chunk table */ ihk_device_unmap_virtual(dev, coretable, tablesize);