Re: [PATCH] printk: inject caller information into the body of message

From: Tetsuo Handa
Date: Fri Sep 14 2018 - 08:03:30 EST


On 2018/09/14 20:50, Sergey Senozhatsky wrote:
>>> +#define DEFINE_PR_LINE_BUF(lev, name, buf, sz) \
>>> + struct pr_line name = { \
>>> + .sb = __SEQ_BUF_INITIALIZER(buf, (sz)), \
>>> + .level = lev, \
>>> + }
>>> +
>>
>> I would use this one for the OOM killer. 80 bytes is too short.
>
> 80 bytes is quite short for OOM, agreed.
>
>> static char oom_print_buf[1024];
>> DEFINE_PR_LINE_BUF(level, oom_print_buf);
>
> Do I get it right that you suggest to drop the "size" param?

No. I just forgot to add params. ;-)

> Do OOM people agree on 1024 bytes stack usage?

I won't allocate oom_print_buf on the stack. Since its usage is serialized
by oom_lock mutex, we don't need to allocate from stack. Since memory
allocation request might happen when stack is already tight, we should not
try to allocate much from stack.