Messages in this thread | | | Date | Sun, 4 Nov 2012 20:58:18 +0100 (CET) | From | Julia Lawall <> | Subject | Re: [PATCH] drivers/misc/kgdbts.c: remove eprintk |
| |
On Sun, 4 Nov 2012, Arnd Bergmann wrote:
> On Saturday 03 November 2012, Julia Lawall wrote: >> @@ -113,10 +113,6 @@ >> printk(KERN_INFO a); \ >> touch_nmi_watchdog(); \ >> } while (0) >> -#define eprintk(a...) do { \ >> - printk(KERN_ERR a); \ >> - WARN_ON(1); \ >> - } while (0) >> #define MAX_CONFIG_LEN 40 >> >> static struct kgdb_io kgdbts_io_ops; >> @@ -323,7 +319,7 @@ static int check_and_rewind_pc(char *put_str, char *arg) >> v2printk("Emul: rewind hit single step bp\n"); >> restart_from_top_after_write = 1; >> } else if (strcmp(arg, "silent") && ip + offset != addr) { >> - eprintk("kgdbts: BP mismatch %lx expected %lx\n", >> + WARN(1, KERN_ERR "kgdbts: BP mismatch %lx expected %lx\n", >> ip + offset, addr); >> return 1; >> } > > Hmm, I did not think that WARN() took a KERN_ERR argument, which should > really be implied here. Looking at the code, it really seems to be required > at the moment, but only 5 out of 117 callers use it this way. > > Any idea what is going on here?
I'm not sure to understand the 5 and 117. Using grep, I get 30 with KERN_ERR, 61 with some KERN thing, and 1207 without KERN. If things are set up such that warn_slowpath_fmt is called, then that function adds KERN_WARNING. There is an alternate definition of __WARN_printf that just does a printk.
So if eprintk wants KERN_ERR, then it seems that rewriting it with WARN is not a good idea. I will check whether this problems arises with the other printks and WARNs that I suggested to merge.
thanks, julia
| |