lkml.org 
[lkml]   [2020]   [May]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch V4 part 1 15/36] kprobes: Lock kprobe_mutex while showing kprobe_blacklist
    From: Masami Hiramatsu <mhiramat@kernel.org>

    Lock kprobe_mutex while showing kprobe_blacklist to prevent updating the
    kprobe_blacklist.

    Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Link: https://lkml.kernel.org/r/158523417665.24735.10253198878535635600.stgit@devnote2

    ---
    kernel/kprobes.c | 8 +++++++-
    1 file changed, 7 insertions(+), 1 deletion(-)

    --- a/kernel/kprobes.c
    +++ b/kernel/kprobes.c
    @@ -2426,6 +2426,7 @@ static const struct file_operations debu
    /* kprobes/blacklist -- shows which functions can not be probed */
    static void *kprobe_blacklist_seq_start(struct seq_file *m, loff_t *pos)
    {
    + mutex_lock(&kprobe_mutex);
    return seq_list_start(&kprobe_blacklist, *pos);
    }

    @@ -2452,10 +2453,15 @@ static int kprobe_blacklist_seq_show(str
    return 0;
    }

    +static void kprobe_blacklist_seq_stop(struct seq_file *f, void *v)
    +{
    + mutex_unlock(&kprobe_mutex);
    +}
    +
    static const struct seq_operations kprobe_blacklist_seq_ops = {
    .start = kprobe_blacklist_seq_start,
    .next = kprobe_blacklist_seq_next,
    - .stop = kprobe_seq_stop, /* Reuse void function */
    + .stop = kprobe_blacklist_seq_stop,
    .show = kprobe_blacklist_seq_show,
    };

    \
     
     \ /
      Last update: 2020-05-05 16:14    [W:4.370 / U:0.160 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site