[SRU][Bionic][PATCH 0/1] s390/uprobes: implement arch_uretprobe_is_alive()
Joseph Salisbury
joseph.salisbury at canonical.com
Fri Jun 22 16:31:49 UTC 2018
BugLink: http://bugs.launchpad.net/bugs/1777840
== SRU Justification ==
This commit fixes SIGSEGVs with setjmp/longjmp.
Symptom:
Setting a user space return probe on a function that does not
return because of a longjmp call may cause SIGSEGV or SIGILL.
Problem:
Userspace can do whatever it wants with its stack. Especially
stack modifications performed with longjmp cannot be handled 100%
correctly within the uprobes kernel part, which may lead to user
space observed crashed.
Solution:
Implement arch_uretprobe_is_alive() which improves the situation
a lot and works for many situations.
This commit has also been cc'd to upstream stable, but it has not landed
in Bionic as of yet.
== Fix ==
783c3b53b950 ("s390/uprobes: implement arch_uretprobe_is_alive()")
== Regression Potential ==
Low. Limited to s390. The commit has also been cc'd to upstream
stable, so it has had additional upstream review.
== Test Case ==
A test kernel was built with this patch and tested by the original bug reporter.
The bug reporter states the test kernel resolved the bug.
Heiko Carstens (1):
s390/uprobes: implement arch_uretprobe_is_alive()
arch/s390/kernel/uprobes.c | 9 +++++++++
1 file changed, 9 insertions(+)
--
2.7.4
More information about the kernel-team
mailing list