• Home
  • History
  • Annotate
  • Raw
  • Download

Lines Matching refs:self

51 static inline pid_t SafeGetTid(const Thread* self) {  in SafeGetTid()  argument
52 if (self != nullptr) { in SafeGetTid()
53 return self->GetTid(); in SafeGetTid()
89 inline void BaseMutex::RegisterAsLocked(Thread* self) { in RegisterAsLocked() argument
90 if (UNLIKELY(self == nullptr)) { in RegisterAsLocked()
100 if (UNLIKELY(level == kThreadWaitLock) && self->GetHeldMutex(kThreadWaitLock) != nullptr) { in RegisterAsLocked()
111 Locks::mutator_lock_->IsSharedHeld(self) && in RegisterAsLocked()
112 !Locks::mutator_lock_->IsExclusiveHeld(self)) { in RegisterAsLocked()
119 } else if (this == Locks::mutator_lock_ && self->GetHeldMutex(kTopLockLevel) != nullptr) { in RegisterAsLocked()
121 << "kTopLevelLock (" << self->GetHeldMutex(kTopLockLevel)->name_ << "held is " in RegisterAsLocked()
127 BaseMutex* held_mutex = self->GetHeldMutex(lock_level_i); in RegisterAsLocked()
130 Locks::mutator_lock_->IsExclusiveHeld(self)) { in RegisterAsLocked()
151 self->SetHeldMutex(level, this); in RegisterAsLocked()
155 inline void BaseMutex::RegisterAsUnlocked(Thread* self) { in RegisterAsUnlocked() argument
156 if (UNLIKELY(self == nullptr)) { in RegisterAsUnlocked()
162 if (UNLIKELY(level == kThreadWaitLock) && self->GetHeldMutex(kThreadWaitWakeLock) == this) { in RegisterAsUnlocked()
167 …CHECK(self->GetHeldMutex(kThreadWaitLock) != nullptr) << "Held " << kThreadWaitWakeLock << " witho… in RegisterAsUnlocked()
169 CHECK(self->GetHeldMutex(level) == this) << "Unlocking on unacquired mutex: " << name_; in RegisterAsUnlocked()
171 self->SetHeldMutex(level, nullptr); in RegisterAsUnlocked()
175 inline void ReaderWriterMutex::SharedLock(Thread* self) { in SharedLock() argument
176 DCHECK(self == nullptr || self == Thread::Current()); in SharedLock()
185 HandleSharedLockContention(self, cur_state); in SharedLock()
192 RegisterAsLocked(self); in SharedLock()
193 AssertSharedHeld(self); in SharedLock()
196 inline void ReaderWriterMutex::SharedUnlock(Thread* self) { in SharedUnlock() argument
197 DCHECK(self == nullptr || self == Thread::Current()); in SharedUnlock()
199 AssertSharedHeld(self); in SharedUnlock()
200 RegisterAsUnlocked(self); in SharedUnlock()
227 inline bool Mutex::IsExclusiveHeld(const Thread* self) const { in IsExclusiveHeld() argument
228 DCHECK(self == nullptr || self == Thread::Current()); in IsExclusiveHeld()
229 bool result = (GetExclusiveOwnerTid() == SafeGetTid(self)); in IsExclusiveHeld()
232 if (result && self != nullptr && level_ != kMonitorLock && !gAborting) { in IsExclusiveHeld()
233 if (level_ == kThreadWaitLock && self->GetHeldMutex(kThreadWaitLock) != this) { in IsExclusiveHeld()
234 CHECK_EQ(self->GetHeldMutex(kThreadWaitWakeLock), this); in IsExclusiveHeld()
236 CHECK_EQ(self->GetHeldMutex(level_), this); in IsExclusiveHeld()
247 inline void Mutex::AssertExclusiveHeld(const Thread* self) const { in AssertExclusiveHeld() argument
249 CHECK(IsExclusiveHeld(self)) << *this; in AssertExclusiveHeld()
253 inline void Mutex::AssertHeld(const Thread* self) const { in AssertHeld() argument
254 AssertExclusiveHeld(self); in AssertHeld()
257 inline bool ReaderWriterMutex::IsExclusiveHeld(const Thread* self) const { in IsExclusiveHeld() argument
258 DCHECK(self == nullptr || self == Thread::Current()); in IsExclusiveHeld()
259 bool result = (GetExclusiveOwnerTid() == SafeGetTid(self)); in IsExclusiveHeld()
262 if (self != nullptr && result) { in IsExclusiveHeld()
263 CHECK_EQ(self->GetHeldMutex(level_), this); in IsExclusiveHeld()
284 inline void ReaderWriterMutex::AssertExclusiveHeld(const Thread* self) const { in AssertExclusiveHeld() argument
286 CHECK(IsExclusiveHeld(self)) << *this; in AssertExclusiveHeld()
290 inline void ReaderWriterMutex::AssertWriterHeld(const Thread* self) const { in AssertWriterHeld() argument
291 AssertExclusiveHeld(self); in AssertWriterHeld()
294 inline void MutatorMutex::TransitionFromRunnableToSuspended(Thread* self) { in TransitionFromRunnableToSuspended() argument
295 AssertSharedHeld(self); in TransitionFromRunnableToSuspended()
296 RegisterAsUnlocked(self); in TransitionFromRunnableToSuspended()
299 inline void MutatorMutex::TransitionFromSuspendedToRunnable(Thread* self) { in TransitionFromSuspendedToRunnable() argument
300 RegisterAsLocked(self); in TransitionFromSuspendedToRunnable()
301 AssertSharedHeld(self); in TransitionFromSuspendedToRunnable()
304 inline ReaderMutexLock::ReaderMutexLock(Thread* self, ReaderWriterMutex& mu) in ReaderMutexLock() argument
305 : self_(self), mu_(mu) { in ReaderMutexLock()