mirror of https://gitee.com/openkylin/qemu.git
gdbstub: Update gdb_handlesig() and gdb_signalled() Coding Style
In particular reindent to 4 instead of 2 spaces. Prepares for changing cpu_single_step() argument in gdb_handlesig(). Signed-off-by: Andreas Färber <afaerber@suse.de>
This commit is contained in:
parent
ed2803da58
commit
5ca666c765
94
gdbstub.c
94
gdbstub.c
|
@ -2761,66 +2761,66 @@ gdb_queuesig (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
gdb_handlesig (CPUArchState *env, int sig)
|
gdb_handlesig(CPUArchState *env, int sig)
|
||||||
{
|
{
|
||||||
GDBState *s;
|
GDBState *s;
|
||||||
char buf[256];
|
char buf[256];
|
||||||
int n;
|
int n;
|
||||||
|
|
||||||
s = gdbserver_state;
|
s = gdbserver_state;
|
||||||
if (gdbserver_fd < 0 || s->fd < 0)
|
if (gdbserver_fd < 0 || s->fd < 0) {
|
||||||
return sig;
|
return sig;
|
||||||
|
|
||||||
/* disable single step if it was enabled */
|
|
||||||
cpu_single_step(env, 0);
|
|
||||||
tb_flush(env);
|
|
||||||
|
|
||||||
if (sig != 0)
|
|
||||||
{
|
|
||||||
snprintf(buf, sizeof(buf), "S%02x", target_signal_to_gdb (sig));
|
|
||||||
put_packet(s, buf);
|
|
||||||
}
|
}
|
||||||
/* put_packet() might have detected that the peer terminated the
|
|
||||||
connection. */
|
|
||||||
if (s->fd < 0)
|
|
||||||
return sig;
|
|
||||||
|
|
||||||
sig = 0;
|
/* disable single step if it was enabled */
|
||||||
s->state = RS_IDLE;
|
cpu_single_step(env, 0);
|
||||||
s->running_state = 0;
|
tb_flush(env);
|
||||||
while (s->running_state == 0) {
|
|
||||||
n = read (s->fd, buf, 256);
|
|
||||||
if (n > 0)
|
|
||||||
{
|
|
||||||
int i;
|
|
||||||
|
|
||||||
for (i = 0; i < n; i++)
|
if (sig != 0) {
|
||||||
gdb_read_byte (s, buf[i]);
|
snprintf(buf, sizeof(buf), "S%02x", target_signal_to_gdb(sig));
|
||||||
|
put_packet(s, buf);
|
||||||
|
}
|
||||||
|
/* put_packet() might have detected that the peer terminated the
|
||||||
|
connection. */
|
||||||
|
if (s->fd < 0) {
|
||||||
|
return sig;
|
||||||
|
}
|
||||||
|
|
||||||
|
sig = 0;
|
||||||
|
s->state = RS_IDLE;
|
||||||
|
s->running_state = 0;
|
||||||
|
while (s->running_state == 0) {
|
||||||
|
n = read(s->fd, buf, 256);
|
||||||
|
if (n > 0) {
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < n; i++) {
|
||||||
|
gdb_read_byte(s, buf[i]);
|
||||||
|
}
|
||||||
|
} else if (n == 0 || errno != EAGAIN) {
|
||||||
|
/* XXX: Connection closed. Should probably wait for another
|
||||||
|
connection before continuing. */
|
||||||
|
return sig;
|
||||||
}
|
}
|
||||||
else if (n == 0 || errno != EAGAIN)
|
}
|
||||||
{
|
sig = s->signal;
|
||||||
/* XXX: Connection closed. Should probably wait for another
|
s->signal = 0;
|
||||||
connection before continuing. */
|
return sig;
|
||||||
return sig;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
sig = s->signal;
|
|
||||||
s->signal = 0;
|
|
||||||
return sig;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Tell the remote gdb that the process has exited due to SIG. */
|
/* Tell the remote gdb that the process has exited due to SIG. */
|
||||||
void gdb_signalled(CPUArchState *env, int sig)
|
void gdb_signalled(CPUArchState *env, int sig)
|
||||||
{
|
{
|
||||||
GDBState *s;
|
GDBState *s;
|
||||||
char buf[4];
|
char buf[4];
|
||||||
|
|
||||||
s = gdbserver_state;
|
s = gdbserver_state;
|
||||||
if (gdbserver_fd < 0 || s->fd < 0)
|
if (gdbserver_fd < 0 || s->fd < 0) {
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
snprintf(buf, sizeof(buf), "X%02x", target_signal_to_gdb (sig));
|
snprintf(buf, sizeof(buf), "X%02x", target_signal_to_gdb(sig));
|
||||||
put_packet(s, buf);
|
put_packet(s, buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void gdb_accept(void)
|
static void gdb_accept(void)
|
||||||
|
|
Loading…
Reference in New Issue