summaryrefslogtreecommitdiff
path: root/drivers/gpu/msm/kgsl_sharedmem.c
diff options
context:
space:
mode:
authorHarshdeep Dhatt <hdhatt@codeaurora.org>2016-01-06 14:52:02 -0700
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 21:16:58 -0700
commit55946b698578eb75a2d05611004f521864409355 (patch)
treee353bdcbc78229901c1bdf5e8304e61b60635ddd /drivers/gpu/msm/kgsl_sharedmem.c
parent0117f1ce831945422d463f493b4cf1d81e3a7067 (diff)
msm: kgsl: Add accounting for memory mapped in userspace
For proper memory accounting, a key metric is to know how much memory kgsl allocated for a process and how much of it the process is actually using. This is done by keeping track of memory in our vmfault routines. This information is provided via the process mem file. Change-Id: I7e3371a708ea5fdade3840b2384b3bc4012ad004 Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Diffstat (limited to 'drivers/gpu/msm/kgsl_sharedmem.c')
-rw-r--r--drivers/gpu/msm/kgsl_sharedmem.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/msm/kgsl_sharedmem.c b/drivers/gpu/msm/kgsl_sharedmem.c
index 8bf0a243066e..bc955ae66285 100644
--- a/drivers/gpu/msm/kgsl_sharedmem.c
+++ b/drivers/gpu/msm/kgsl_sharedmem.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2002,2007-2015, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2002,2007-2016, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -385,6 +385,8 @@ static int kgsl_page_alloc_vmfault(struct kgsl_memdesc *memdesc,
get_page(page);
vmf->page = page;
+ memdesc->mapsize += PAGE_SIZE;
+
return 0;
}
@@ -550,6 +552,8 @@ static int kgsl_contiguous_vmfault(struct kgsl_memdesc *memdesc,
else if (ret == -EFAULT)
return VM_FAULT_SIGBUS;
+ memdesc->mapsize += PAGE_SIZE;
+
return VM_FAULT_NOPAGE;
}