On Thu, Apr 30, 2015 at 01:25:15PM -0700, Luis R. Rodriguez wrote: > From: "Luis R. Rodriguez" <mcg...@suse.com> > > Use pr_info() instead of the old printk to > prefix the component where things are coming > from. With this readers will know exactly where > the message is coming from. Since pr_fmt is > already defined in this case we redefine it to > "PAT: ". > > We leave the users of dprintk() in place, this > will print only when the debugpat kernel parameter > is enabled. We want to leave those enabled as a > debug feature, but also make them use the same > prefix. > > Cc: Andy Walls <awa...@md.metrocast.net> > Cc: Doug Ledford <dledf...@redhat.com> > Cc: Ingo Molnar <mi...@elte.hu> > Cc: Thomas Gleixner <t...@linutronix.de> > Cc: Juergen Gross <jgr...@suse.com> > Cc: Daniel Vetter <daniel.vet...@ffwll.ch> > Cc: Dave Airlie <airl...@redhat.com> > Cc: Bjorn Helgaas <bhelg...@google.com> > Cc: Borislav Petkov <b...@suse.de> > Cc: Michael S. Tsirkin <m...@redhat.com> > Cc: linux-kernel@vger.kernel.org > Cc: x...@kernel.org > Signed-off-by: Luis R. Rodriguez <mcg...@suse.com> > --- > arch/x86/mm/pat.c | 41 +++++++++++++++++++++-------------------- > arch/x86/mm/pat_internal.h | 2 +- > arch/x86/mm/pat_rbtree.c | 5 ++++- > 3 files changed, 26 insertions(+), 22 deletions(-) > > diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c > index 372ad42..8f88c6a 100644 > --- a/arch/x86/mm/pat.c > +++ b/arch/x86/mm/pat.c > @@ -33,13 +33,16 @@ > #include "pat_internal.h" > #include "mm_internal.h" > > +#undef pr_fmt > +#define pr_fmt(fmt) "PAT: " fmt
Hmm, ok, so those pr_* helpers with the prefix actually make grepping for the error message not fun. So I take that back about the pr_fmt thing - it is a bad idea. Instead, we should still use pr_* because they're shorter but simply add the prefix before each message so that you can grep for it. I went and I did that, see below. --- From: "Luis R. Rodriguez" <mcg...@suse.com> Date: Thu, 30 Apr 2015 13:25:15 -0700 Subject: [PATCH] x86/mm/pat: Convert to pr_* usage Use pr_info() instead of the old printk to prefix the component where things are coming from. With this readers will know exactly where the message is coming from. Since pr_fmt is already defined in this case we redefine it to "x86/PAT: ". We leave the users of dprintk() in place, this will print only when the debugpat kernel parameter is enabled. We want to leave those enabled as a debug feature, but also make them use the same prefix. Signed-off-by: Luis R. Rodriguez <mcg...@suse.com> Cc: Andy Walls <awa...@md.metrocast.net> Cc: Doug Ledford <dledf...@redhat.com> Cc: Ingo Molnar <mi...@elte.hu> Cc: Thomas Gleixner <t...@linutronix.de> Cc: Juergen Gross <jgr...@suse.com> Cc: Daniel Vetter <daniel.vet...@ffwll.ch> Cc: Dave Airlie <airl...@redhat.com> Cc: Bjorn Helgaas <bhelg...@google.com> Cc: Michael S. Tsirkin <m...@redhat.com> Cc: Andy Lutomirski <l...@amacapital.net> Cc: H. Peter Anvin <h...@zytor.com> Cc: plagn...@jcrosoft.com Cc: tomi.valkei...@ti.com Cc: x...@kernel.org Cc: co...@systeme.lip6.fr Link: http://lkml.kernel.org/r/1430425520-22275-2-git-send-email-mcg...@do-not-panic.com Signed-off-by: --- arch/x86/mm/pat.c | 41 +++++++++++++++++++---------------------- arch/x86/mm/pat_internal.h | 2 +- arch/x86/mm/pat_rbtree.c | 2 +- 3 files changed, 21 insertions(+), 24 deletions(-) diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c index 35af6771a95a..8269c784b61c 100644 --- a/arch/x86/mm/pat.c +++ b/arch/x86/mm/pat.c @@ -39,7 +39,7 @@ int __read_mostly pat_enabled = 1; static inline void pat_disable(const char *reason) { pat_enabled = 0; - printk(KERN_INFO "%s\n", reason); + pr_info("x86/PAT: %s\n", reason); } static int __init nopat(char *str) @@ -188,7 +188,7 @@ void pat_init_cache_modes(void) pat_msg + 4 * i); update_cache_mode_entry(i, cache); } - pr_info("PAT configuration [0-7]: %s\n", pat_msg); + pr_info("x86/PAT: Configuration [0-7]: %s\n", pat_msg); } #define PAT(x, y) ((u64)PAT_ ## y << ((x)*8)) @@ -211,8 +211,7 @@ void pat_init(void) * switched to PAT on the boot CPU. We have no way to * undo PAT. */ - printk(KERN_ERR "PAT enabled, " - "but not supported by secondary CPU\n"); + pr_err("x86/PAT: PAT enabled, but not supported by secondary CPU\n"); BUG(); } } @@ -347,7 +346,7 @@ static int reserve_ram_pages_type(u64 start, u64 end, page = pfn_to_page(pfn); type = get_page_memtype(page); if (type != -1) { - pr_info("reserve_ram_pages_type failed [mem %#010Lx-%#010Lx], track 0x%x, req 0x%x\n", + pr_info("x86/PAT: reserve_ram_pages_type failed [mem %#010Lx-%#010Lx], track 0x%x, req 0x%x\n", start, end - 1, type, req_type); if (new_type) *new_type = type; @@ -451,9 +450,9 @@ int reserve_memtype(u64 start, u64 end, enum page_cache_mode req_type, err = rbt_memtype_check_insert(new, new_type); if (err) { - printk(KERN_INFO "reserve_memtype failed [mem %#010Lx-%#010Lx], track %s, req %s\n", - start, end - 1, - cattr_name(new->type), cattr_name(req_type)); + pr_info("x86/PAT: reserve_memtype failed [mem %#010Lx-%#010Lx], track %s, req %s\n", + start, end - 1, + cattr_name(new->type), cattr_name(req_type)); kfree(new); spin_unlock(&memtype_lock); @@ -497,8 +496,8 @@ int free_memtype(u64 start, u64 end) spin_unlock(&memtype_lock); if (!entry) { - printk(KERN_INFO "%s:%d freeing invalid memtype [mem %#010Lx-%#010Lx]\n", - current->comm, current->pid, start, end - 1); + pr_info("x86/PAT: %s:%d freeing invalid memtype [mem %#010Lx-%#010Lx]\n", + current->comm, current->pid, start, end - 1); return -EINVAL; } @@ -628,8 +627,8 @@ static inline int range_is_allowed(unsigned long pfn, unsigned long size) while (cursor < to) { if (!devmem_is_allowed(pfn)) { - printk(KERN_INFO "Program %s tried to access /dev/mem between [mem %#010Lx-%#010Lx], PAT prevents it\n", - current->comm, from, to - 1); + pr_info("x86/PAT: Program %s tried to access /dev/mem between [mem %#010Lx-%#010Lx], PAT prevents it\n", + current->comm, from, to - 1); return 0; } cursor += PAGE_SIZE; @@ -698,8 +697,7 @@ int kernel_map_sync_memtype(u64 base, unsigned long size, size; if (ioremap_change_attr((unsigned long)__va(base), id_sz, pcm) < 0) { - printk(KERN_INFO "%s:%d ioremap_change_attr failed %s " - "for [mem %#010Lx-%#010Lx]\n", + pr_info("x86/PAT: %s:%d ioremap_change_attr failed %s for [mem %#010Lx-%#010Lx]\n", current->comm, current->pid, cattr_name(pcm), base, (unsigned long long)(base + size-1)); @@ -734,7 +732,7 @@ static int reserve_pfn_range(u64 paddr, unsigned long size, pgprot_t *vma_prot, pcm = lookup_memtype(paddr); if (want_pcm != pcm) { - printk(KERN_WARNING "%s:%d map pfn RAM range req %s for [mem %#010Lx-%#010Lx], got %s\n", + pr_warn("x86/PAT: %s:%d map pfn RAM range req %s for [mem %#010Lx-%#010Lx], got %s\n", current->comm, current->pid, cattr_name(want_pcm), (unsigned long long)paddr, @@ -755,13 +753,12 @@ static int reserve_pfn_range(u64 paddr, unsigned long size, pgprot_t *vma_prot, if (strict_prot || !is_new_memtype_allowed(paddr, size, want_pcm, pcm)) { free_memtype(paddr, paddr + size); - printk(KERN_ERR "%s:%d map pfn expected mapping type %s" - " for [mem %#010Lx-%#010Lx], got %s\n", - current->comm, current->pid, - cattr_name(want_pcm), - (unsigned long long)paddr, - (unsigned long long)(paddr + size - 1), - cattr_name(pcm)); + pr_err("x86/PAT: %s:%d map pfn expected mapping type %s for [mem %#010Lx-%#010Lx], got %s\n", + current->comm, current->pid, + cattr_name(want_pcm), + (unsigned long long)paddr, + (unsigned long long)(paddr + size - 1), + cattr_name(pcm)); return -EINVAL; } /* diff --git a/arch/x86/mm/pat_internal.h b/arch/x86/mm/pat_internal.h index f6411620305d..a739bfc40690 100644 --- a/arch/x86/mm/pat_internal.h +++ b/arch/x86/mm/pat_internal.h @@ -4,7 +4,7 @@ extern int pat_debug_enable; #define dprintk(fmt, arg...) \ - do { if (pat_debug_enable) printk(KERN_INFO fmt, ##arg); } while (0) + do { if (pat_debug_enable) pr_info("x86/PAT: " fmt, ##arg); } while (0) struct memtype { u64 start; diff --git a/arch/x86/mm/pat_rbtree.c b/arch/x86/mm/pat_rbtree.c index 6582adcc8bd9..82b8c6aaf260 100644 --- a/arch/x86/mm/pat_rbtree.c +++ b/arch/x86/mm/pat_rbtree.c @@ -160,7 +160,7 @@ success: return 0; failure: - printk(KERN_INFO "%s:%d conflicting memory types " + pr_info("x86/PAT: %s:%d conflicting memory types " "%Lx-%Lx %s<->%s\n", current->comm, current->pid, start, end, cattr_name(found_type), cattr_name(match->type)); return -EBUSY; -- 2.3.5 -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply. -- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/