lkml.org 
[lkml]   [2015]   [Oct]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC v3 8/9] kmsg: add predefined _PID, _TID, _COMM keywords to kmsg* log dict
Hi Andy,

On Mon, 19 Oct 2015, Andy Lutomirski wrote:

> On Mon, Oct 19, 2015 at 5:58 AM, Paul Osmialowski
> <p.osmialowsk@samsung.com> wrote:
>> From: Marcin Niesluchowski <m.niesluchow@samsung.com>
>>
>> kmsg* devices write operation wrote no dict along with message
>> Due to usage of kmsg devices in userspace dict has been added
>> identifying pid, tid and comm of writing process.
>
> Does this affect even the normal /dev/kmsg?

Yes.

>
>> -static int kmsg_sys_write(int minor, int level, const char *fmt, ...)
>> +static size_t set_kmsg_dict(char *buf)
>> +{
>> + size_t len;
>> +
>> + len = sprintf(buf, "_PID=%d", task_tgid_nr(current)) + 1;
>> + len += sprintf(buf + len, "_TID=%d", task_pid_nr(current)) + 1;
>> + memcpy(buf + len, "_COMM=", 6);
>> + len += 6;
>> + get_task_comm(buf + len, current);
>> + while (buf[len] != '\0')
>> + len++;
>
> len += strlen(buf); ?
>
> Is it obvious for some reason that this doesn't overflow buf?
>

KMSG_DICT_MAX_LEN sets architecture-intepentent max size.

> Why is task_pid_nr acceptable here? Isn't this intended for use in namespaces?
>

task_tgid_nr - process id (pid as seen in userspace),
task_pid_nr - thread id

Thanks,
Paul


\
 
 \ /
  Last update: 2015-10-20 13:21    [W:0.204 / U:0.476 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site