From: Andrew Morton Date: Thu, 25 Oct 2012 01:15:16 +0000 (+1100) Subject: procfs-add-vmflags-field-in-smaps-output-v4-fix X-Git-Tag: next-20121029~1^2~25 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=50297e8ce205264463ee89598270c5c4d2d1cecf;p=karo-tx-linux.git procfs-add-vmflags-field-in-smaps-output-v4-fix remove unneeded brakes per sfr, avoid using bloaty for_each_set_bit() Cc: Cyrill Gorcunov Cc: Pavel Emelyanov Cc: Peter Zijlstra Cc: Stephen Rothwell Signed-off-by: Andrew Morton --- diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c index 50a5f5f9cd96..c0b4a044db2a 100644 --- a/fs/proc/task_mmu.c +++ b/fs/proc/task_mmu.c @@ -535,7 +535,7 @@ static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma) /* * In case if we meet a flag we don't know about. */ - [0 ... (BITS_PER_LONG-1)] = { "??" }, + [0 ... (BITS_PER_LONG-1)] = "??", [ilog2(VM_READ)] = "rd", [ilog2(VM_WRITE)] = "wr", @@ -568,10 +568,11 @@ static void show_smap_vma_flags(struct seq_file *m, struct vm_area_struct *vma) size_t i; seq_puts(m, "VmFlags: "); - for_each_set_bit(i, &vma->vm_flags, BITS_PER_LONG) { - seq_printf(m, "%c%c ", - mnemonics[i][0], - mnemonics[i][1]); + for (i = 0; i < BITS_PER_LONG; i++) { + if (vma->vm_flags & (1UL << i)) { + seq_printf(m, "%c%c ", + mnemonics[i][0], mnemonics[i][1]); + } } seq_putc(m, '\n'); }