build: Bump gdbstub and gdbstub_arch

This commit also makes changes due to the breaking API changes from the
`gdbstub` crate [1].

[1] https://github.com/daniel5151/gdbstub/releases/tag/0.7.0

Fix: #5997

Signed-off-by: Bo Chen <chen.bo@intel.com>
This commit is contained in:
Bo Chen 2023-12-01 15:36:37 -08:00 committed by Rob Bradford
parent 102a1c9abc
commit 283ae7b33e
3 changed files with 9 additions and 9 deletions

10
Cargo.lock generated
View File

@ -873,11 +873,11 @@ dependencies = [
[[package]]
name = "gdbstub"
version = "0.6.6"
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f4e02bf1b1a624d96925c608f1b268d82a76cbc587ce9e59f7c755e9ea11c75c"
checksum = "09a8b954f9d02b74fe8e89a1c77bd9a6b8206713ebf1b272bfad9573b4a86f88"
dependencies = [
"bitflags 1.3.2",
"bitflags 2.4.1",
"cfg-if",
"log",
"managed",
@ -887,9 +887,9 @@ dependencies = [
[[package]]
name = "gdbstub_arch"
version = "0.2.4"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eecb536c55c43593a00dde9074dbbdb0e81ce5f20dbca921400f8779c21dea9c"
checksum = "4e3b1357bd3203fc09a6601327ae0ab38865d14231d0b65d3143f5762cc7977d"
dependencies = [
"gdbstub",
"num-traits",

View File

@ -30,8 +30,8 @@ epoll = "4.3.3"
event_monitor = { path = "../event_monitor" }
flume = "0.10.14"
futures = { version = "0.3.27", optional = true }
gdbstub = { version = "0.6.4", optional = true }
gdbstub_arch = { version = "0.2.4", optional = true }
gdbstub = { version = "0.7.0", optional = true }
gdbstub_arch = { version = "0.3.0", optional = true }
hypervisor = { path = "../hypervisor" }
libc = "0.2.147"
linux-loader = { version = "0.10.0", features = ["elf", "bzimage", "pe"] }

View File

@ -243,7 +243,7 @@ impl MultiThreadBase for GdbStub {
start_addr: <Self::Arch as Arch>::Usize,
data: &mut [u8],
tid: Tid,
) -> TargetResult<(), Self> {
) -> TargetResult<usize, Self> {
match self.vm_request(
GdbRequestPayload::ReadMem(GuestAddress(start_addr), data.len()),
tid_to_cpuid(tid),
@ -252,7 +252,7 @@ impl MultiThreadBase for GdbStub {
for (dst, v) in data.iter_mut().zip(r.iter()) {
*dst = *v;
}
Ok(())
Ok(std::cmp::min(data.len(), r.len()))
}
Ok(s) => {
error!("Unexpected response for ReadMem: {:?}", s);