Lines Matching refs:watchpoint
113 atomic_long_t *watchpoint; in find_watchpoint() local
122 watchpoint = &watchpoints[SLOT_IDX_FAST(slot, i)]; in find_watchpoint()
123 *encoded_watchpoint = atomic_long_read(watchpoint); in find_watchpoint()
133 return watchpoint; in find_watchpoint()
144 atomic_long_t *watchpoint; in insert_watchpoint() local
157 watchpoint = &watchpoints[SLOT_IDX(slot, i)]; in insert_watchpoint()
158 if (atomic_long_try_cmpxchg_relaxed(watchpoint, &expect_val, encoded_watchpoint)) in insert_watchpoint()
159 return watchpoint; in insert_watchpoint()
175 try_consume_watchpoint(atomic_long_t *watchpoint, long encoded_watchpoint) in try_consume_watchpoint() argument
177 return atomic_long_try_cmpxchg_relaxed(watchpoint, &encoded_watchpoint, CONSUMED_WATCHPOINT); in try_consume_watchpoint()
181 static inline bool consume_watchpoint(atomic_long_t *watchpoint) in consume_watchpoint() argument
183 return atomic_long_xchg_relaxed(watchpoint, CONSUMED_WATCHPOINT) != CONSUMED_WATCHPOINT; in consume_watchpoint()
187 static inline void remove_watchpoint(atomic_long_t *watchpoint) in remove_watchpoint() argument
189 atomic_long_set(watchpoint, INVALID_WATCHPOINT); in remove_watchpoint()
352 atomic_long_t *watchpoint, in kcsan_found_watchpoint() argument
375 consumed = try_consume_watchpoint(watchpoint, encoded_watchpoint); in kcsan_found_watchpoint()
384 watchpoint - watchpoints); in kcsan_found_watchpoint()
408 atomic_long_t *watchpoint; in kcsan_setup_watchpoint() local
452 watchpoint = insert_watchpoint((unsigned long)ptr, size, is_write); in kcsan_setup_watchpoint()
453 if (watchpoint == NULL) { in kcsan_setup_watchpoint()
538 if (!consume_watchpoint(watchpoint)) { in kcsan_setup_watchpoint()
569 watchpoint - watchpoints); in kcsan_setup_watchpoint()
580 watchpoint - watchpoints); in kcsan_setup_watchpoint()
587 remove_watchpoint(watchpoint); in kcsan_setup_watchpoint()
601 atomic_long_t *watchpoint; in check_access() local
616 watchpoint = find_watchpoint((unsigned long)ptr, size, !is_write, in check_access()
625 if (unlikely(watchpoint != NULL)) in check_access()
626 kcsan_found_watchpoint(ptr, size, type, watchpoint, in check_access()