aboutsummaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
authorTim Newsome <tim@sifive.com>2019-04-03 12:38:27 -0700
committerTim Newsome <tim@sifive.com>2019-04-03 12:38:27 -0700
commit79f9672615dfe77d415bdd7a404f1e149e31b16d (patch)
tree9af22013cb9ef87f97c92a0136d1d88e1b354587 /src/server
parentc089e6ae9a37d134e92a3d40c2be13003ea09d61 (diff)
parent11a2bfc2bcedfad0ecb1b8d7f68ac7208cd6b8c0 (diff)
downloadriscv-openocd-79f9672615dfe77d415bdd7a404f1e149e31b16d.zip
riscv-openocd-79f9672615dfe77d415bdd7a404f1e149e31b16d.tar.gz
riscv-openocd-79f9672615dfe77d415bdd7a404f1e149e31b16d.tar.bz2
Merge branch 'master' into from_upstream
Conflicts: src/flash/nor/at91sam4.c src/flash/nor/at91sam4l.c src/flash/nor/at91samd.c src/flash/nor/ath79.c src/flash/nor/atsame5.c src/flash/nor/cfi.c src/flash/nor/core.c src/flash/nor/fespi.c src/flash/nor/kinetis.c src/flash/nor/kinetis_ke.c src/flash/nor/lpc2000.c src/flash/nor/niietcm4.c src/flash/nor/nrf5.c src/flash/nor/numicro.c src/flash/nor/pic32mx.c src/flash/nor/stm32h7x.c src/flash/nor/stm32lx.c src/flash/nor/stmsmi.c src/flash/nor/tcl.c src/flash/nor/tms470.c src/flash/nor/virtual.c src/flash/nor/xmc4xxx.c src/rtos/hwthread.c src/rtos/rtos.c src/server/gdb_server.c src/target/riscv/riscv-011.c src/target/riscv/riscv-013.c src/target/riscv/riscv.c src/target/riscv/riscv.h Change-Id: I9f0f373d45a9e5845bca83ca52e977f727ea4425
Diffstat (limited to 'src/server')
-rw-r--r--src/server/gdb_server.c12
-rw-r--r--src/server/server.c2
2 files changed, 9 insertions, 5 deletions
diff --git a/src/server/gdb_server.c b/src/server/gdb_server.c
index 8f1fcee..2961e70 100644
--- a/src/server/gdb_server.c
+++ b/src/server/gdb_server.c
@@ -153,6 +153,8 @@ static int gdb_last_signal(struct target *target)
return 0x05; /* SIGTRAP */
case DBG_REASON_SINGLESTEP:
return 0x05; /* SIGTRAP */
+ case DBG_REASON_EXC_CATCH:
+ return 0x05;
case DBG_REASON_NOTHALTED:
return 0x0; /* no signal... shouldn't happen */
default:
@@ -1450,7 +1452,7 @@ static int gdb_read_memory_packet(struct connection *connection,
if (!len) {
LOG_WARNING("invalid read memory packet received (len == 0)");
- gdb_put_packet(connection, NULL, 0);
+ gdb_put_packet(connection, "", 0);
return ERROR_OK;
}
@@ -1935,7 +1937,7 @@ static int gdb_memory_map(struct connection *connection,
xml_printf(&retval, &xml, &pos, &size,
"<memory type=\"ram\" start=\"" TARGET_ADDR_FMT "\" "
"length=\"" TARGET_ADDR_FMT "\"/>\n",
- ram_start, TARGET_ADDR_MAX - ram_start + 1);
+ ram_start, target_address_max(target) - ram_start + 1);
/* ELSE a flash chip could be at the very end of the address space, in
* which case ram_start will be precisely 0 */
@@ -2863,7 +2865,7 @@ static bool gdb_handle_vcont_packet(struct connection *connection, const char *p
if (gdb_connection->sync) {
gdb_connection->sync = false;
if (ct->state == TARGET_HALTED) {
- LOG_WARNING("stepi ignored. GDB will now fetch the register state " \
+ LOG_DEBUG("stepi ignored. GDB will now fetch the register state " \
"from the target.");
gdb_sig_halted(connection);
log_remove_callback(gdb_log_callback, connection);
@@ -3251,7 +3253,7 @@ static int gdb_input_inner(struct connection *connection)
* make only the single stepping have the sync feature...
*/
nostep = true;
- LOG_WARNING("stepi ignored. GDB will now fetch the register state " \
+ LOG_DEBUG("stepi ignored. GDB will now fetch the register state " \
"from the target.");
}
gdb_con->sync = false;
@@ -3354,7 +3356,7 @@ static int gdb_input_inner(struct connection *connection)
default:
/* ignore unknown packets */
LOG_DEBUG("ignoring 0x%2.2x packet", packet[0]);
- gdb_put_packet(connection, NULL, 0);
+ gdb_put_packet(connection, "", 0);
break;
}
diff --git a/src/server/server.c b/src/server/server.c
index f8273d4..539bdaf 100644
--- a/src/server/server.c
+++ b/src/server/server.c
@@ -703,6 +703,8 @@ void server_free(void)
tcl_service_free();
telnet_service_free();
jsp_service_free();
+
+ free(bindto_name);
}
void exit_on_signal(int sig)