Lines Matching refs:neighbor
323 struct spu_context *tmp, *neighbor, *err; in spufs_assert_affinity() local
344 neighbor = NULL; in spufs_assert_affinity()
349 neighbor = get_spu_context( in spufs_assert_affinity()
352 if (!list_empty(&neighbor->aff_list) && !(neighbor->aff_head) && in spufs_assert_affinity()
353 !list_is_last(&neighbor->aff_list, &gang->aff_list_head) && in spufs_assert_affinity()
354 !list_entry(neighbor->aff_list.next, struct spu_context, in spufs_assert_affinity()
360 if (gang != neighbor->gang) { in spufs_assert_affinity()
368 if (list_empty(&neighbor->aff_list)) in spufs_assert_affinity()
383 return neighbor; in spufs_assert_affinity()
386 put_spu_context(neighbor); in spufs_assert_affinity()
392 struct spu_context *neighbor) in spufs_set_affinity() argument
398 if (list_empty(&neighbor->aff_list)) { in spufs_set_affinity()
399 list_add_tail(&neighbor->aff_list, in spufs_set_affinity()
401 neighbor->aff_head = 1; in spufs_set_affinity()
404 if (list_is_last(&neighbor->aff_list, &ctx->gang->aff_list_head) in spufs_set_affinity()
405 || list_entry(neighbor->aff_list.next, struct spu_context, in spufs_set_affinity()
407 list_add(&ctx->aff_list, &neighbor->aff_list); in spufs_set_affinity()
409 list_add_tail(&ctx->aff_list, &neighbor->aff_list); in spufs_set_affinity()
410 if (neighbor->aff_head) { in spufs_set_affinity()
411 neighbor->aff_head = 0; in spufs_set_affinity()
429 struct spu_context *neighbor; in spufs_create_context() local
444 neighbor = NULL; in spufs_create_context()
451 neighbor = spufs_assert_affinity(flags, gang, aff_filp); in spufs_create_context()
452 if (IS_ERR(neighbor)) { in spufs_create_context()
453 ret = PTR_ERR(neighbor); in spufs_create_context()
464 neighbor); in spufs_create_context()
465 if (neighbor) in spufs_create_context()
466 put_spu_context(neighbor); in spufs_create_context()