Lines Matching refs:lock

39     lock: AtomicU32,  field
47 lock: &'a AtomicU32, field
79 lock: AtomicU32::new(0), in new()
106 let value = self.lock.fetch_add(READER, Ordering::Acquire); in current_reader()
110 self.lock.fetch_sub(READER, Ordering::Release); in current_reader()
143 self.lock.fetch_sub(READER, Ordering::Release); in inner_try_read()
148 lock: &self.lock, in inner_try_read()
195 let state = self.lock.load(Ordering::Relaxed); in reader_count()
203 return (self.lock.load(Ordering::Relaxed) & WRITER) / WRITER; in writer_count()
241 .lock in inner_try_write()
314 if self.lock.fetch_or(UPGRADED, Ordering::Acquire) & (WRITER | UPGRADED) == 0 { in inner_try_upgradeable_read()
357 debug_assert!(self.lock.load(Ordering::Relaxed) & !WRITER > 0); in force_read_decrement()
358 self.lock.fetch_sub(READER, Ordering::Release); in force_read_decrement()
366 debug_assert_eq!(self.lock.load(Ordering::Relaxed) & !(WRITER | UPGRADED), 0); in force_write_unlock()
367 self.lock.fetch_and(!(WRITER | UPGRADED), Ordering::Release); in force_write_unlock()
416 let res = self.inner.lock.compare_exchange( in try_upgrade()
468 lock: &inner.lock, in downgrade()
522 lock: &inner.lock, in downgrade()
532 self.inner.lock.load(Ordering::Acquire) & (WRITER | UPGRADED), in downgrade_to_upgradeable()
536 self.inner.lock.store(UPGRADED, Ordering::Release); in downgrade_to_upgradeable()
583 debug_assert!(self.lock.load(Ordering::Relaxed) & !(WRITER | UPGRADED) > 0); in drop()
584 self.lock.fetch_sub(READER, Ordering::Release); in drop()
592 self.inner.lock.load(Ordering::Relaxed) & (WRITER | UPGRADED), in drop()
595 self.inner.lock.fetch_sub(UPGRADED, Ordering::AcqRel); in drop()
603 debug_assert_eq!(self.inner.lock.load(Ordering::Relaxed) & WRITER, WRITER); in drop()
605 .lock in drop()