Lines Matching refs:seq
365 struct lock_seq_stat *seq; in get_seq() local
367 list_for_each_entry(seq, &ts->seq_list, list) { in get_seq()
368 if (seq->addr == addr) in get_seq()
369 return seq; in get_seq()
372 seq = zalloc(sizeof(struct lock_seq_stat)); in get_seq()
373 if (!seq) { in get_seq()
377 seq->state = SEQ_STATE_UNINITIALIZED; in get_seq()
378 seq->addr = addr; in get_seq()
380 list_add(&seq->list, &ts->seq_list); in get_seq()
381 return seq; in get_seq()
405 struct lock_seq_stat *seq; in report_lock_acquire_event() local
422 seq = get_seq(ts, addr); in report_lock_acquire_event()
423 if (!seq) in report_lock_acquire_event()
426 switch (seq->state) { in report_lock_acquire_event()
430 seq->state = SEQ_STATE_ACQUIRING; in report_lock_acquire_event()
436 seq->state = SEQ_STATE_READ_ACQUIRED; in report_lock_acquire_event()
437 seq->read_count = 1; in report_lock_acquire_event()
443 seq->read_count++; in report_lock_acquire_event()
457 list_del(&seq->list); in report_lock_acquire_event()
458 free(seq); in report_lock_acquire_event()
466 seq->prev_event_time = sample->time; in report_lock_acquire_event()
477 struct lock_seq_stat *seq; in report_lock_acquired_event() local
494 seq = get_seq(ts, addr); in report_lock_acquired_event()
495 if (!seq) in report_lock_acquired_event()
498 switch (seq->state) { in report_lock_acquired_event()
505 contended_term = sample->time - seq->prev_event_time; in report_lock_acquired_event()
518 list_del(&seq->list); in report_lock_acquired_event()
519 free(seq); in report_lock_acquired_event()
526 seq->state = SEQ_STATE_ACQUIRED; in report_lock_acquired_event()
529 seq->prev_event_time = sample->time; in report_lock_acquired_event()
540 struct lock_seq_stat *seq; in report_lock_contended_event() local
556 seq = get_seq(ts, addr); in report_lock_contended_event()
557 if (!seq) in report_lock_contended_event()
560 switch (seq->state) { in report_lock_contended_event()
573 list_del(&seq->list); in report_lock_contended_event()
574 free(seq); in report_lock_contended_event()
581 seq->state = SEQ_STATE_CONTENDED; in report_lock_contended_event()
584 seq->prev_event_time = sample->time; in report_lock_contended_event()
595 struct lock_seq_stat *seq; in report_lock_release_event() local
611 seq = get_seq(ts, addr); in report_lock_release_event()
612 if (!seq) in report_lock_release_event()
615 switch (seq->state) { in report_lock_release_event()
621 seq->read_count--; in report_lock_release_event()
622 BUG_ON(seq->read_count < 0); in report_lock_release_event()
623 if (!seq->read_count) { in report_lock_release_event()
642 list_del(&seq->list); in report_lock_release_event()
643 free(seq); in report_lock_release_event()