aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarsh Vardhan Dwivedi <hdwivedi@codeaurora.org>2014-05-05 16:23:17 -0600
committerIliyan Malchev <malchev@google.com>2014-08-16 11:45:54 -0700
commit2dda0e5bdeb5a77ed4dab668b0ca93eae538a0cb (patch)
tree093a187a44473bf70d22f67b816e923649cfba07
parent78af1e178f3ea1d496d95756cec778812b9cadf9 (diff)
msm: kgsl: Add a flag to mark user mapped GPU buffersandroid-l-preview_r2.1
Add a flag in /sys/kernel/debug/kgsl/kgsl-3do/proc/<pid>/mem file to indicate for each GPU buffer if it is mapped to userspace in <pid> or not. CRs-fixed: 634962 Change-Id: I8abda74ef5656aca6b1c0315af8deb77460fa5a9 Signed-off-by: Harsh Vardhan Dwivedi <hdwivedi@codeaurora.org>
-rw-r--r--drivers/gpu/msm/kgsl_debugfs.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/drivers/gpu/msm/kgsl_debugfs.c b/drivers/gpu/msm/kgsl_debugfs.c
index 0525bd691c6e..7b8e2370e240 100644
--- a/drivers/gpu/msm/kgsl_debugfs.c
+++ b/drivers/gpu/msm/kgsl_debugfs.c
@@ -247,7 +247,7 @@ static char get_cacheflag(const struct kgsl_memdesc *m)
static void print_mem_entry(struct seq_file *s, struct kgsl_mem_entry *entry)
{
- char flags[6];
+ char flags[7];
char usage[16];
struct kgsl_memdesc *m = &entry->memdesc;
@@ -256,13 +256,16 @@ static void print_mem_entry(struct seq_file *s, struct kgsl_mem_entry *entry)
flags[2] = get_alignflag(m);
flags[3] = get_cacheflag(m);
flags[4] = kgsl_memdesc_use_cpu_map(m) ? 'p' : '-';
- flags[5] = '\0';
+ flags[5] = (m->useraddr) ? 'Y' : 'N';
+ flags[6] = '\0';
kgsl_get_memory_usage(usage, sizeof(usage), m->flags);
- seq_printf(s, "%08x %08lx %8d %5d %5s %10s %16s %5d\n",
- m->gpuaddr, m->useraddr, m->size, entry->id, flags,
- memtype_str(entry->memtype), usage, m->sglen);
+ seq_printf(s, "%pK %pK %8zd %5d %6s %10s %16s %5d\n",
+ (unsigned long *)(uintptr_t) m->gpuaddr,
+ (unsigned long *) m->useraddr,
+ m->size, entry->id, flags,
+ memtype_str(entry->memtype), usage, m->sglen);
}
static int process_mem_print(struct seq_file *s, void *unused)
@@ -272,7 +275,7 @@ static int process_mem_print(struct seq_file *s, void *unused)
struct kgsl_process_private *private = s->private;
int next = 0;
- seq_printf(s, "%8s %8s %8s %5s %5s %10s %16s %5s\n",
+ seq_printf(s, "%8s %8s %8s %5s %6s %10s %16s %5s\n",
"gpuaddr", "useraddr", "size", "id", "flags", "type",
"usage", "sglen");
@@ -372,7 +375,7 @@ kgsl_process_init_debugfs(struct kgsl_process_private *private)
* So if debugfs is disabled in kernel, return as
* success.
*/
- dentry = debugfs_create_file("mem", 0400, private->debug_root, private,
+ dentry = debugfs_create_file("mem", 0444, private->debug_root, private,
&process_mem_fops);
if (IS_ERR(dentry)) {