Commit 01e2f533 authored by Kees Cook's avatar Kees Cook Committed by Dave Airlie

drm: do not leak kernel addresses via /proc/dri/*/vma

In the continuing effort to avoid kernel addresses leaking to unprivileged
users, this patch switches to %pK for /proc/dri/*/vma.
Signed-off-by: default avatarKees Cook <kees.cook@canonical.com>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent 9fad321a
...@@ -283,17 +283,18 @@ int drm_vma_info(struct seq_file *m, void *data) ...@@ -283,17 +283,18 @@ int drm_vma_info(struct seq_file *m, void *data)
#endif #endif
mutex_lock(&dev->struct_mutex); mutex_lock(&dev->struct_mutex);
seq_printf(m, "vma use count: %d, high_memory = %p, 0x%08llx\n", seq_printf(m, "vma use count: %d, high_memory = %pK, 0x%pK\n",
atomic_read(&dev->vma_count), atomic_read(&dev->vma_count),
high_memory, (u64)virt_to_phys(high_memory)); high_memory, (void *)virt_to_phys(high_memory));
list_for_each_entry(pt, &dev->vmalist, head) { list_for_each_entry(pt, &dev->vmalist, head) {
vma = pt->vma; vma = pt->vma;
if (!vma) if (!vma)
continue; continue;
seq_printf(m, seq_printf(m,
"\n%5d 0x%08lx-0x%08lx %c%c%c%c%c%c 0x%08lx000", "\n%5d 0x%pK-0x%pK %c%c%c%c%c%c 0x%08lx000",
pt->pid, vma->vm_start, vma->vm_end, pt->pid,
(void *)vma->vm_start, (void *)vma->vm_end,
vma->vm_flags & VM_READ ? 'r' : '-', vma->vm_flags & VM_READ ? 'r' : '-',
vma->vm_flags & VM_WRITE ? 'w' : '-', vma->vm_flags & VM_WRITE ? 'w' : '-',
vma->vm_flags & VM_EXEC ? 'x' : '-', vma->vm_flags & VM_EXEC ? 'x' : '-',
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment