Revision 1bcb344086f3ecf8d6705f6d708441baa823beb3 authored by Jeff Layton on 15 April 2019, 16:00:42 UTC, committed by Ilya Dryomov on 23 April 2019, 19:37:54 UTC
Ben reported tripping the BUG_ON in create_request_message during some
performance testing. Analysis of the vmcore showed that the length of
the r_dentry->d_name string changed after we allocated the buffer, but
before we encoded it.

build_dentry_path returns pointers to d_name in the common case of
non-snapped dentries, but this optimization isn't safe unless the parent
directory is locked. When it isn't, have the code make a copy of the
d_name while holding the d_lock.

Cc: stable@vger.kernel.org
Reported-by: Ben England <bengland@redhat.com>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Reviewed-by: "Yan, Zheng" <zyan@redhat.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
1 parent 085b775
History
File Mode Size
events
bpf_probe.h -rw-r--r-- 3.1 KB
define_trace.h -rw-r--r-- 3.4 KB
perf.h -rw-r--r-- 2.6 KB
syscall.h -rw-r--r-- 1.3 KB
trace_events.h -rw-r--r-- 22.7 KB

back to top