| From 3d6700d38153a0ec8e0800de703a5089a8cd3d2d Mon Sep 17 00:00:00 2001 |
| From: Khem Raj <raj.khem@gmail.com> |
| Date: Thu, 29 Nov 2018 18:00:23 -0800 |
| Subject: [PATCH] gdbserver ctrl-c handling |
| |
| This problem was created by the upstream commit 78708b7c8c |
| After applying the commit, it will send SIGINT to the process |
| group(-signal_pid). |
| But if we use gdbserver send SIGINT, and the attached process is not a |
| process |
| group leader, then the "kill (-signal_pid, SIGINT)" returns error and |
| fails to |
| interrupt the attached process. |
| |
| Upstream-Status: Submitted |
| [https://sourceware.org/bugzilla/show_bug.cgi?id=18945] |
| |
| Author: Josh Gao |
| Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com> |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| gdb/gdbserver/linux-low.c | 4 +--- |
| 1 file changed, 1 insertion(+), 3 deletions(-) |
| |
| diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c |
| index 4255795ea6..762f8bafb6 100644 |
| --- a/gdb/gdbserver/linux-low.c |
| +++ b/gdb/gdbserver/linux-low.c |
| @@ -5904,9 +5904,7 @@ linux_look_up_symbols (void) |
| static void |
| linux_request_interrupt (void) |
| { |
| - /* Send a SIGINT to the process group. This acts just like the user |
| - typed a ^C on the controlling terminal. */ |
| - kill (-signal_pid, SIGINT); |
| + kill (signal_pid, SIGINT); |
| } |
| |
| /* Copy LEN bytes from inferior's auxiliary vector starting at OFFSET |