Lines Matching refs:JDWP
17 #include "jdwp/jdwp_event.h"
27 #include "jdwp/jdwp_constants.h"
28 #include "jdwp/jdwp_expand_buf.h"
29 #include "jdwp/jdwp_priv.h"
30 #include "jdwp/object_registry.h"
44 Event posting can happen from any thread. The JDWP thread will not usually
45 post anything but VM start/death, but if a JDWP request causes a class
46 to be loaded, the ClassPrepare event will come from the JDWP thread.
69 JDWP thread:
90 holding the event token is very bad, because it prevents the JDWP thread
105 namespace JDWP {
335 VLOG(jdwp) << StringPrintf("No match when removing event reqId=0x%04x", requestId);
423 VLOG(jdwp) << StringPrintf("##### Removing expired event (requestId=%#" PRIx32 ")",
582 * SP_ALL - suspend everybody except JDWP support thread
584 void JdwpState::SuspendByPolicy(JdwpSuspendPolicy suspend_policy, JDWP::ObjectId thread_self_id) {
585 VLOG(jdwp) << "SuspendByPolicy(" << suspend_policy << ")";
598 LOG(INFO) << "NOTE: SuspendByPolicy not suspending JDWP thread";
609 * The JDWP thread has told us (and possibly all other threads) to
633 JDWP::ObjectId thread_self_id = Dbg::GetThreadSelfId();
657 * We need the JDWP thread to hold off on doing stuff while we post an
678 VLOG(jdwp) << StringPrintf("event in progress (%#" PRIx64 "), %#" PRIx64 " sleeping",
685 VLOG(jdwp) << StringPrintf("event token grabbed (%#" PRIx64 ")", threadId);
705 VLOG(jdwp) << StringPrintf("cleared event token (%#" PRIx64 ")", event_thread_id_);
770 VLOG(jdwp) << "EVENT: " << EK_VM_START;
771 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
794 VLOG(jdwp) << "EVENT #" << i << ": " << pEvent->eventKind
799 if (error != JDWP::ERR_NONE) {
802 VLOG(jdwp) << StringPrintf(" thread=%#" PRIx64, thread_id) << " " << thread_name;
805 static void SetJdwpLocationFromEventLocation(const JDWP::EventLocation* event_location,
806 JDWP::JdwpLocation* jdwp_location)
854 VLOG(jdwp) << "Ignoring location event in JDWP thread";
868 VLOG(jdwp) << "Not checking breakpoints during invoke (" << basket.className << ")";
899 JDWP::JdwpLocation jdwp_location;
902 if (VLOG_IS_ON(jdwp)) {
904 VLOG(jdwp) << " location=" << jdwp_location;
905 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
952 VLOG(jdwp) << "Not posting field event during invoke";
979 JDWP::JdwpLocation jdwp_location;
982 if (VLOG_IS_ON(jdwp)) {
984 VLOG(jdwp) << " location=" << jdwp_location;
985 VLOG(jdwp) << StringPrintf(" this=%#" PRIx64, instance_id);
986 VLOG(jdwp) << StringPrintf(" type=%#" PRIx64, field_type_id) << " "
988 VLOG(jdwp) << StringPrintf(" field=%#" PRIx32, field_id) << " "
990 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
998 JDWP::JdwpTypeTag type_tag = Dbg::GetTypeTag(field->GetDeclaringClass());
1077 if (VLOG_IS_ON(jdwp)) {
1079 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
1112 VLOG(jdwp) << "EVENT: " << EK_VM_DEATH;
1143 VLOG(jdwp) << "Unexpected: exception event with empty throw location";
1161 VLOG(jdwp) << "Not posting exception hit during invoke (" << basket.className << ")";
1182 JDWP::JdwpLocation jdwp_throw_location;
1183 JDWP::JdwpLocation jdwp_catch_location;
1187 if (VLOG_IS_ON(jdwp)) {
1191 VLOG(jdwp) << " throwLocation=" << jdwp_throw_location;
1193 VLOG(jdwp) << " catchLocation=uncaught";
1195 VLOG(jdwp) << " catchLocation=" << jdwp_catch_location;
1197 VLOG(jdwp) << StringPrintf(" exception=%#" PRIx64, exceptionId) << " "
1199 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
1246 VLOG(jdwp) << "Not posting class prep caused by invoke (" << basket.className << ")";
1271 int status = JDWP::CS_VERIFIED | JDWP::CS_PREPARED;
1272 JDWP::JdwpTypeTag tag = Dbg::GetTypeTag(basket.locationClass);
1276 if (VLOG_IS_ON(jdwp)) {
1278 VLOG(jdwp) << StringPrintf(" type=%#" PRIx64, class_id) << " " << signature;
1279 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
1284 * JDWP says that, for a class prep in the debugger thread, we
1288 VLOG(jdwp) << " NOTE: class prepare in debugger thread!";
1326 * While this takes the form of a JDWP "event", it doesn't interact with
1339 * "Wrap" the contents of the iovec with a JDWP/DDMS header. We do
1349 /* form the header (JDWP plus DDMS) */
1384 } // namespace JDWP