diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-02-15 13:36:30 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-02-15 13:36:30 -0500 |
commit | 52833e897fd8c6f62b3e5e27291fa9bc803f7460 (patch) | |
tree | cfe90047ee6c7402674a29ec7258319142b96ff1 /mm/memory.c | |
parent | 8d042218b075de3cdbe066198515b3521553746e (diff) | |
parent | 4ee29f6a52158cea526b16a44ae38643946103ec (diff) |
Merge branch 'linus_origin' into hotfixes
Diffstat (limited to 'mm/memory.c')
-rw-r--r-- | mm/memory.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/mm/memory.c b/mm/memory.c index 717aa0e3be2d..ce3c9e4492d8 100644 --- a/mm/memory.c +++ b/mm/memory.c | |||
@@ -2711,6 +2711,13 @@ void print_vma_addr(char *prefix, unsigned long ip) | |||
2711 | struct mm_struct *mm = current->mm; | 2711 | struct mm_struct *mm = current->mm; |
2712 | struct vm_area_struct *vma; | 2712 | struct vm_area_struct *vma; |
2713 | 2713 | ||
2714 | /* | ||
2715 | * Do not print if we are in atomic | ||
2716 | * contexts (in exception stacks, etc.): | ||
2717 | */ | ||
2718 | if (preempt_count()) | ||
2719 | return; | ||
2720 | |||
2714 | down_read(&mm->mmap_sem); | 2721 | down_read(&mm->mmap_sem); |
2715 | vma = find_vma(mm, ip); | 2722 | vma = find_vma(mm, ip); |
2716 | if (vma && vma->vm_file) { | 2723 | if (vma && vma->vm_file) { |
@@ -2719,7 +2726,7 @@ void print_vma_addr(char *prefix, unsigned long ip) | |||
2719 | if (buf) { | 2726 | if (buf) { |
2720 | char *p, *s; | 2727 | char *p, *s; |
2721 | 2728 | ||
2722 | p = d_path(f->f_dentry, f->f_vfsmnt, buf, PAGE_SIZE); | 2729 | p = d_path(&f->f_path, buf, PAGE_SIZE); |
2723 | if (IS_ERR(p)) | 2730 | if (IS_ERR(p)) |
2724 | p = "?"; | 2731 | p = "?"; |
2725 | s = strrchr(p, '/'); | 2732 | s = strrchr(p, '/'); |