abba              159 kernel/locking/test-ww_mutex.c 	struct test_abba *abba = container_of(work, typeof(*abba), work);
abba              164 kernel/locking/test-ww_mutex.c 	ww_mutex_lock(&abba->b_mutex, &ctx);
abba              166 kernel/locking/test-ww_mutex.c 	complete(&abba->b_ready);
abba              167 kernel/locking/test-ww_mutex.c 	wait_for_completion(&abba->a_ready);
abba              169 kernel/locking/test-ww_mutex.c 	err = ww_mutex_lock(&abba->a_mutex, &ctx);
abba              170 kernel/locking/test-ww_mutex.c 	if (abba->resolve && err == -EDEADLK) {
abba              171 kernel/locking/test-ww_mutex.c 		ww_mutex_unlock(&abba->b_mutex);
abba              172 kernel/locking/test-ww_mutex.c 		ww_mutex_lock_slow(&abba->a_mutex, &ctx);
abba              173 kernel/locking/test-ww_mutex.c 		err = ww_mutex_lock(&abba->b_mutex, &ctx);
abba              177 kernel/locking/test-ww_mutex.c 		ww_mutex_unlock(&abba->a_mutex);
abba              178 kernel/locking/test-ww_mutex.c 	ww_mutex_unlock(&abba->b_mutex);
abba              181 kernel/locking/test-ww_mutex.c 	abba->result = err;
abba              186 kernel/locking/test-ww_mutex.c 	struct test_abba abba;
abba              190 kernel/locking/test-ww_mutex.c 	ww_mutex_init(&abba.a_mutex, &ww_class);
abba              191 kernel/locking/test-ww_mutex.c 	ww_mutex_init(&abba.b_mutex, &ww_class);
abba              192 kernel/locking/test-ww_mutex.c 	INIT_WORK_ONSTACK(&abba.work, test_abba_work);
abba              193 kernel/locking/test-ww_mutex.c 	init_completion(&abba.a_ready);
abba              194 kernel/locking/test-ww_mutex.c 	init_completion(&abba.b_ready);
abba              195 kernel/locking/test-ww_mutex.c 	abba.resolve = resolve;
abba              197 kernel/locking/test-ww_mutex.c 	schedule_work(&abba.work);
abba              200 kernel/locking/test-ww_mutex.c 	ww_mutex_lock(&abba.a_mutex, &ctx);
abba              202 kernel/locking/test-ww_mutex.c 	complete(&abba.a_ready);
abba              203 kernel/locking/test-ww_mutex.c 	wait_for_completion(&abba.b_ready);
abba              205 kernel/locking/test-ww_mutex.c 	err = ww_mutex_lock(&abba.b_mutex, &ctx);
abba              207 kernel/locking/test-ww_mutex.c 		ww_mutex_unlock(&abba.a_mutex);
abba              208 kernel/locking/test-ww_mutex.c 		ww_mutex_lock_slow(&abba.b_mutex, &ctx);
abba              209 kernel/locking/test-ww_mutex.c 		err = ww_mutex_lock(&abba.a_mutex, &ctx);
abba              213 kernel/locking/test-ww_mutex.c 		ww_mutex_unlock(&abba.b_mutex);
abba              214 kernel/locking/test-ww_mutex.c 	ww_mutex_unlock(&abba.a_mutex);
abba              217 kernel/locking/test-ww_mutex.c 	flush_work(&abba.work);
abba              218 kernel/locking/test-ww_mutex.c 	destroy_work_on_stack(&abba.work);
abba              222 kernel/locking/test-ww_mutex.c 		if (err || abba.result) {
abba              224 kernel/locking/test-ww_mutex.c 			       __func__, err, abba.result);
abba              228 kernel/locking/test-ww_mutex.c 		if (err != -EDEADLK && abba.result != -EDEADLK) {
abba              230 kernel/locking/test-ww_mutex.c 			       __func__, err, abba.result);