From: Petr Mladek <pmladek@suse.com>
To: Chris Down <chris@chrisdown.name>
Cc: linux-kernel@vger.kernel.org,
Sergey Senozhatsky <sergey.senozhatsky@gmail.com>,
John Ogness <john.ogness@linutronix.de>,
Johannes Weiner <hannes@cmpxchg.org>,
Andrew Morton <akpm@linux-foundation.org>,
Steven Rostedt <rostedt@goodmis.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Kees Cook <keescook@chromium.org>,
kernel-team@fb.com
Subject: Re: [PATCH v4] printk: Userspace format enumeration support
Date: Thu, 18 Feb 2021 15:25:03 +0100 [thread overview]
Message-ID: <YC54vyU8ZZPiaYOQ@alley> (raw)
In-Reply-To: <YC5ggyeC0uqtOD6R@chrisdown.name>
On Thu 2021-02-18 12:41:39, Chris Down wrote:
> Petr Mladek writes:
> > > - See if it's safe to pass a printk_fmt_sec to seq_file instead of a module
> >
> > Also it might be needed to store the pointer to struct module.
>
> You mean, have a `struct module` entry for this? I somewhat suspect that
> module.c maintainers are not likely to be happy about injecting non-generic
> code into there if it's possible to be avoided, but maybe I'm
> misunderstanding?
Yes, I suggest to store the pointer into struct module. It includes
many external entries. It is similar to struct task_struct.
I am active also in the kernel livepatch subsystem. We have added
there three values:
#ifdef CONFIG_LIVEPATCH
bool klp; /* Is this a livepatch module? */
bool klp_alive;
/* Elf information */
struct klp_modinfo *klp_info;
#endif
Many other subsystems have their stuff there, for example:
#ifdef CONFIG_TRACING
unsigned int num_trace_bprintk_fmt;
const char **trace_bprintk_fmt_start;
#endif
#ifdef CONFIG_EVENT_TRACING
struct trace_event_call **trace_events;
unsigned int num_trace_events;
struct trace_eval_map **trace_evals;
unsigned int num_trace_evals;
#endif
#ifdef CONFIG_FTRACE_MCOUNT_RECORD
unsigned int num_ftrace_callsites;
unsigned long *ftrace_callsites;
#endif
#ifdef CONFIG_KPROBES
void *kprobes_text_start;
unsigned int kprobes_text_size;
unsigned long *kprobe_blacklist;
unsigned int num_kprobe_blacklist;
#endif
BTW: Jessica originally worked on the kernel livepatching.
She became module loader code maintainer because we needed
even more hacks there and the original maintainer got
busy with other stuff at that time ;-)
I am pretty sure that she would accept it. We need a per-module
value. It is not necessary to maintain separate global list/hash
table just to store these values.
Best Regards,
Petr
next prev parent reply other threads:[~2021-02-18 17:09 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-12 15:30 [PATCH v4] printk: Userspace format enumeration support Chris Down
2021-02-12 18:01 ` kernel test robot
2021-02-13 14:29 ` Chris Down
2021-02-13 15:15 ` Chris Down
2021-02-16 15:53 ` output: was: " Petr Mladek
2021-02-16 16:52 ` Chris Down
2021-02-17 14:27 ` Petr Mladek
2021-02-17 15:28 ` Chris Down
2021-02-17 19:17 ` Steven Rostedt
2021-02-17 21:23 ` Chris Down
2021-02-18 11:34 ` Petr Mladek
2021-02-16 16:00 ` debugfs: " Petr Mladek
2021-02-16 17:18 ` Chris Down
2021-02-17 15:35 ` Petr Mladek
2021-02-17 15:49 ` Chris Down
2021-02-16 17:14 ` code style: " Petr Mladek
2021-02-16 17:27 ` Chris Down
2021-02-16 21:00 ` Johannes Weiner
2021-02-16 21:05 ` Chris Down
2021-02-17 15:45 ` Petr Mladek
2021-02-17 15:56 ` Chris Down
2021-02-18 10:58 ` Petr Mladek
2021-02-17 16:00 ` Johannes Weiner
2021-02-17 16:09 ` Petr Mladek
2021-02-17 16:25 ` Chris Down
2021-02-17 16:32 ` Chris Down
2021-02-18 10:45 ` Petr Mladek
2021-02-18 12:21 ` Chris Down
2021-02-18 12:37 ` Petr Mladek
2021-02-18 12:41 ` Chris Down
2021-02-18 14:25 ` Petr Mladek [this message]
2021-02-18 15:53 ` Chris Down
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YC54vyU8ZZPiaYOQ@alley \
--to=pmladek@suse.com \
--cc=akpm@linux-foundation.org \
--cc=chris@chrisdown.name \
--cc=gregkh@linuxfoundation.org \
--cc=hannes@cmpxchg.org \
--cc=john.ogness@linutronix.de \
--cc=keescook@chromium.org \
--cc=kernel-team@fb.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rostedt@goodmis.org \
--cc=sergey.senozhatsky@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).