Home | History | Annotate | Download | only in jdwp

Lines Matching refs:JDWP

17 #include "jdwp/jdwp_event.h"
29 #include "jdwp/jdwp_constants.h"
30 #include "jdwp/jdwp_expand_buf.h"
31 #include "jdwp/jdwp_priv.h"
32 #include "jdwp/object_registry.h"
47 Event posting can happen from any thread. The JDWP thread will not usually
48 post anything but VM start/death, but if a JDWP request causes a class
49 to be loaded, the ClassPrepare event will come from the JDWP thread.
72 JDWP thread:
93 holding the event token is very bad, because it prevents the JDWP thread
104 namespace JDWP {
156 // listen to in order to properly report the given JDWP event to the debugger.
338 VLOG(jdwp) << StringPrintf("No match when removing event reqId=0x%04x", requestId);
412 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";
606 * The JDWP thread has told us (and possibly all other threads) to
625 JDWP::ObjectId thread_self_id = Dbg::GetThreadSelfId();
673 * We need the JDWP thread to hold off on doing stuff while we post an
696 VLOG(jdwp) << StringPrintf("event in progress (%#" PRIx64 "), %#" PRIx64 " sleeping",
703 VLOG(jdwp) << StringPrintf("event token grabbed (%#" PRIx64 ")", threadId);
721 VLOG(jdwp) << StringPrintf("cleared event token (%#" PRIx64 ")", jdwp_token_owner_thread_id_);
769 VLOG(jdwp) << "EVENT: " << EK_VM_START;
770 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
790 VLOG(jdwp) << "EVENT #" << i << ": " << pEvent->eventKind
795 if (error != JDWP::ERR_NONE) {
798 VLOG(jdwp) << StringPrintf(" thread=%#" PRIx64, thread_id) << " " << thread_name;
801 static void SetJdwpLocationFromEventLocation(const JDWP::EventLocation* event_location,
802 JDWP::JdwpLocation* jdwp_location)
849 VLOG(jdwp) << "Ignoring location event in JDWP thread";
863 VLOG(jdwp) << "Not checking breakpoints during invoke (" << basket.className << ")";
893 JDWP::JdwpLocation jdwp_location;
896 if (VLOG_IS_ON(jdwp)) {
898 VLOG(jdwp) << " location=" << jdwp_location;
899 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
942 VLOG(jdwp) << "Not posting field event during invoke (" << basket.className << ")";
959 JDWP::JdwpLocation jdwp_location;
962 if (VLOG_IS_ON(jdwp)) {
964 VLOG(jdwp) << " location=" << jdwp_location;
965 VLOG(jdwp) << StringPrintf(" this=%#" PRIx64, instance_id);
966 VLOG(jdwp
968 VLOG(jdwp) << StringPrintf(" field=%#" PRIx64, field_id) << " "
970 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
978 JDWP::JdwpTypeTag type_tag = Dbg::GetTypeTag(field->GetDeclaringClass());
1030 // thread to get its JDWP id. Therefore we can't report event if there
1049 if (VLOG_IS_ON(jdwp)) {
1051 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
1080 VLOG(jdwp) << "EVENT: " << EK_VM_DEATH;
1111 VLOG(jdwp) << "Unexpected: exception event with empty throw location";
1126 VLOG(jdwp) << "Not posting exception hit during invoke (" << basket.className << ")";
1140 JDWP::JdwpLocation jdwp_throw_location;
1141 JDWP::JdwpLocation jdwp_catch_location;
1145 if (VLOG_IS_ON(jdwp)) {
1149 VLOG(jdwp) << " throwLocation=" << jdwp_throw_location;
1151 VLOG(jdwp) << " catchLocation=uncaught";
1153 VLOG(jdwp) << " catchLocation=" << jdwp_catch_location;
1155 VLOG(jdwp) << StringPrintf(" exception=%#" PRIx64, exceptionId) << " "
1157 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
1199 VLOG(jdwp) << "Not posting class prep caused by invoke (" << basket.className << ")";
1217 int status = JDWP::CS_VERIFIED | JDWP::CS_PREPARED;
1218 JDWP::JdwpTypeTag tag = Dbg::GetTypeTag(basket.locationClass.Get());
1222 if (VLOG_IS_ON(jdwp)) {
1224 VLOG(jdwp) << StringPrintf(" type=%#" PRIx64, class_id) << " " << signature;
1225 VLOG(jdwp) << " suspend_policy=" << suspend_policy;
1230 * JDWP says that, for a class prep in the debugger thread, we
1234 VLOG(jdwp) << " NOTE: class prepare in debugger thread!";
1271 /* form the header (JDWP plus DDMS) */
1284 * While this takes the form of a JDWP "event", it doesn't interact with
1297 * "Wrap" the contents of the iovec with a JDWP/DDMS header. We do
1335 } // namespace JDWP