summaryrefslogtreecommitdiffstats
path: root/runtime/jdwp
diff options
context:
space:
mode:
authorMathieu Chartier <mathieuc@google.com>2013-07-15 16:32:50 -0700
committerMathieu Chartier <mathieuc@google.com>2013-07-15 17:16:37 -0700
commit4b95e8fad803ad307fa09c11c08894544e07a731 (patch)
tree1415e3c30d673aeba09e20afe567cc757af124f0 /runtime/jdwp
parent57a77c8650e84aefbc9985350989242296a18e00 (diff)
downloadart-4b95e8fad803ad307fa09c11c08894544e07a731.zip
art-4b95e8fad803ad307fa09c11c08894544e07a731.tar.gz
art-4b95e8fad803ad307fa09c11c08894544e07a731.tar.bz2
Refactor atomic integer.
Refactored atomic integer to be similar to c++11 std::atomic<int>. Removed jdwp serial lock and reverted lock level name change from https://googleplex-android-review.googlesource.com/#/c/327297/ Change-Id: I2229f30c4d5762a0e8c72697d6aca4683750af35
Diffstat (limited to 'runtime/jdwp')
-rw-r--r--runtime/jdwp/jdwp.h6
-rw-r--r--runtime/jdwp/jdwp_main.cc5
2 files changed, 4 insertions, 7 deletions
diff --git a/runtime/jdwp/jdwp.h b/runtime/jdwp/jdwp.h
index 436525c..ef07393 100644
--- a/runtime/jdwp/jdwp.h
+++ b/runtime/jdwp/jdwp.h
@@ -17,6 +17,7 @@
#ifndef ART_JDWP_JDWP_H_
#define ART_JDWP_JDWP_H_
+#include "atomic_integer.h"
#include "base/mutex.h"
#include "jdwp/jdwp_bits.h"
#include "jdwp/jdwp_constants.h"
@@ -319,9 +320,8 @@ struct JdwpState {
int64_t last_activity_time_ms_;
// Global counters and a mutex to protect them.
- Mutex serial_lock_ DEFAULT_MUTEX_ACQUIRED_AFTER;
- uint32_t request_serial_ GUARDED_BY(serial_lock_);
- uint32_t event_serial_ GUARDED_BY(serial_lock_);
+ AtomicInteger request_serial_;
+ AtomicInteger event_serial_;
// Linked list of events requested by the debugger (breakpoints, class prep, etc).
Mutex event_list_lock_;
diff --git a/runtime/jdwp/jdwp_main.cc b/runtime/jdwp/jdwp_main.cc
index e831af4..8e61d23 100644
--- a/runtime/jdwp/jdwp_main.cc
+++ b/runtime/jdwp/jdwp_main.cc
@@ -36,7 +36,7 @@ static void* StartJdwpThread(void* arg);
* JdwpNetStateBase class implementation
*/
JdwpNetStateBase::JdwpNetStateBase(JdwpState* state)
- : state_(state), socket_lock_("JdwpNetStateBase lock", kJdwpSerialSocketLock) {
+ : state_(state), socket_lock_("JdwpNetStateBase lock", kJdwpSocketLock) {
clientSock = -1;
wake_pipe_[0] = -1;
wake_pipe_[1] = -1;
@@ -185,7 +185,6 @@ void JdwpState::SendRequest(ExpandBuf* pReq) {
* packets to the debugger.
*/
uint32_t JdwpState::NextRequestSerial() {
- MutexLock mu(Thread::Current(), serial_lock_);
return request_serial_++;
}
@@ -194,7 +193,6 @@ uint32_t JdwpState::NextRequestSerial() {
* message type EventRequest.Set.
*/
uint32_t JdwpState::NextEventSerial() {
- MutexLock mu(Thread::Current(), serial_lock_);
return event_serial_++;
}
@@ -211,7 +209,6 @@ JdwpState::JdwpState(const JdwpOptions* options)
attach_lock_("JDWP attach lock", kJdwpAttachLock),
attach_cond_("JDWP attach condition variable", attach_lock_),
last_activity_time_ms_(0),
- serial_lock_("JDWP serial lock", kJdwpSerialSocketLock),
request_serial_(0x10000000),
event_serial_(0x20000000),
event_list_lock_("JDWP event list lock", kJdwpEventListLock),