Comments (3)
To answer your direct question (re: flow control): I don't believe this is something gdbstub
can handle for you automatically.
Sniffing around the GDB source code, it seems that set remoteflow
simply sets some client-side serial port params, and doesn't actually result in any packets being sent over the GDB RSP to the stub.
I suspect that this is something you'll have to fix as part of your implementation (e.g: by improving your UART based Connection
implementation).
Let me know if this lines up with your investigation, and if so, I'll just close this issue out as unactionable on my end.
Taking a step back through, it seems that there's been quite a bit of activity on that linked issue in the hours since you've posted this issue.
Based on my reading of the thread, it seems most of the issues are just unforeseen implementation issues when running on physical hardware? If so, I'm afraid there's not much advice I can offer on my end (aside from general questions about the GDB RSP)
That said, if you keep investigating and you think there's a bug / missing feature on gdbstub
's end, please feel free to re-engage here by opening new issues.
from gdbstub.
Part of the reason for the failure was, indeed, a misunderstanding of the hardware.
However, I do think there is one thing that may be useful to implement, and that's making noack an optional feature. The noack option seems to be useful for error-free links such as TCP, but is left in for unreliable links such as serial.
Might it make sense to make noack an optional include, in order to prevent gdb from taking advantage of it? At worst it would involve making this optional:
gdbstub/src/stub/core_impl/base.rs
Line 115 in 3c00732
At any rate, something to think about. Since this is not a blocking issue I'll close this for now.
from gdbstub.
Funny you should bring that up, since it just so happens optional noack (#134) will be landing shortly, as part of @bet4it's work in #135.
I'll cut a new point release when that gets merged in.
from gdbstub.
Related Issues (20)
- All registers are byteswapped when using lldb HOT 14
- Switch `enum Signal` to `struct Signal(pub u8)` with associated constants
- NoActiveThreads error when there are no active thread HOT 9
- Misleading comment in `state_machine`? HOT 2
- Multiprocess debugging HOT 8
- [riscv32] `PacketUnexpected` when issuing `stepi` HOT 3
- vAttach: invalid response causes command to not work HOT 6
- Remove `NoActiveThread` Error
- example_no_std doesn't build on Windows HOT 1
- Remove `SingleStepBehavior` guard rail HOT 1
- Make `QStartNoAckMode` optional HOT 1
- Support "ack/nack" packets for unreliable transports HOT 6
- Fails to compile for atmega328p (Arduino Uno) HOT 2
- Add APIs for generating XML on-the-fly
- First time using gdbstub, lldb stuck during setup HOT 14
- Add direct way to access GDB client's current selected TID HOT 7
- LLDB compatibility: Send complete register definitions in target.xml HOT 3
- Issue about a GDB command handling HOT 8
- About response to 'qSupported' HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gdbstub.