Lines Matching full:locks
391 struct ww_mutex *locks; member
440 struct ww_mutex *locks = stress->locks; in stress_inorder_work() local
459 err = ww_mutex_lock(&locks[order[n]], &ctx); in stress_inorder_work()
467 ww_mutex_unlock(&locks[order[contended]]); in stress_inorder_work()
470 ww_mutex_unlock(&locks[order[n]]); in stress_inorder_work()
474 ww_mutex_lock_slow(&locks[order[contended]], &ctx); in stress_inorder_work()
498 LIST_HEAD(locks); in stress_reorder_work()
513 ll->lock = &stress->locks[order[n]]; in stress_reorder_work()
514 list_add(&ll->link, &locks); in stress_reorder_work()
522 list_for_each_entry(ll, &locks, link) { in stress_reorder_work()
528 list_for_each_entry_continue_reverse(ln, &locks, link) in stress_reorder_work()
538 list_move(&ll->link, &locks); /* restarts iteration */ in stress_reorder_work()
542 list_for_each_entry(ll, &locks, link) in stress_reorder_work()
549 list_for_each_entry_safe(ll, ln, &locks, link) in stress_reorder_work()
558 struct ww_mutex *lock = stress->locks + get_random_u32_below(nlocks); in stress_one_work()
581 struct ww_mutex *locks; in stress() local
585 locks = kmalloc_objs(*locks, nlocks); in stress()
586 if (!locks) in stress()
591 kfree(locks); in stress()
596 ww_mutex_init(&locks[n], class); in stress()
626 stress->locks = locks; in stress()
637 ww_mutex_destroy(&locks[n]); in stress()
639 kfree(locks); in stress()