Hi everybody,
We have implemented remote support for non-stop mode in a local Hexagon
repo of LLDB and begun to upstream the work, see
http://reviews.llvm.org/D9656. Non-Stop mode in a remote stub lets you
examine a single stopped thread while others execute normally. This
isn't currently a feature of llgs, but is of gdbserver and can be tested
on x86.
The remote protocol currently needs to be extended to support
asynchronous notifications so it can interact with a non-stop stub. To
solve this we've switched to multi-threaded mode from the abstract
communications class by implementing AppendBytesToCache() in
GDBRemoteCommunication. Allowing us to spawn a read thread that
continually reads packets into a packet queue. Packets are then accessed
by popping a packet from the queue in a thread safe manner.
Since this is a significant change to the remote protocol implementation
which won't just affect non-stop mode I'd like some feedback to check if
people have any comments about it.
The patches are ready to go, and will be put up for review soon.
Thanks,
Ewan
--
Ewan Crawford
Codeplay Software Ltd
45 York Place, Edinburgh, EH1 3HP
Tel: 0131 466 0503
Fax: 0131 557 6600
Website: http://www.codeplay.com
Twitter: https://twitter.com/codeplaysoft
This email and any attachments may contain confidential and /or privileged
information and is for use by the addressee only. If you are not the intended
recipient, please notify Codeplay Software Ltd immediately and delete the
message from your computer. You may not copy or forward it,or use or disclose
its contents to any other person. Any views or other information in this
message which do not relate to our business are not authorized by Codeplay
software Ltd, nor does this message form part of any contract unless so stated.
As internet communications are capable of data corruption Codeplay Software Ltd
does not accept any responsibility for any changes made to this message after
it was sent. Please note that Codeplay Software Ltd does not accept any
liability or responsibility for viruses and it is your responsibility to scan
any attachments.
Company registered in England and Wales, number: 04567874
Registered office: 81 Linkfield Street, Redhill RH1 6BY
_______________________________________________
lldb-dev mailing list
lldb-dev@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev