Lines Matching refs:bundle

66 	struct uverbs_attr_bundle bundle;  member
81 sizeof(*pbundle->bundle.attrs) * method_elm->key_bitmap_len + in uapi_compute_bundle_size()
105 __malloc void *_uverbs_alloc(struct uverbs_attr_bundle *bundle, size_t size, in _uverbs_alloc() argument
109 container_of(bundle, struct bundle_priv, bundle); in _uverbs_alloc()
147 static int uverbs_set_output(const struct uverbs_attr_bundle *bundle, in uverbs_set_output() argument
151 container_of(bundle, struct bundle_priv, bundle); in uverbs_set_output()
186 uverbs_alloc(&pbundle->bundle, in uverbs_process_idrs_array()
211 idr_vals[i], &pbundle->bundle); in uverbs_process_idrs_array()
248 struct uverbs_attr *e = &pbundle->bundle.attrs[attr_bkey]; in uverbs_process_attr()
296 p = uverbs_alloc(&pbundle->bundle, uattr->len); in uverbs_process_attr()
329 uattr->data_s64, &pbundle->bundle); in uverbs_process_attr()
406 if (test_bit(attr_bkey, pbundle->bundle.attr_present)) in uverbs_set_attr()
413 __set_bit(attr_bkey, pbundle->bundle.attr_present); in uverbs_set_attr()
430 &pbundle->bundle.ufile->device->disassociate_srcu); in ib_uverbs_run_method()
434 pbundle->uattrs = uverbs_alloc(&pbundle->bundle, uattrs_size); in ib_uverbs_run_method()
448 pbundle->bundle.attr_present, in ib_uverbs_run_method()
453 uverbs_fill_udata(&pbundle->bundle, in ib_uverbs_run_method()
454 &pbundle->bundle.driver_udata, in ib_uverbs_run_method()
457 pbundle->bundle.driver_udata = (struct ib_udata){}; in ib_uverbs_run_method()
461 &pbundle->bundle.attrs[destroy_bkey].obj_attr; in ib_uverbs_run_method()
463 ret = uobj_destroy(destroy_attr->uobject, &pbundle->bundle); in ib_uverbs_run_method()
468 ret = handler(&pbundle->bundle); in ib_uverbs_run_method()
471 ret = handler(&pbundle->bundle); in ib_uverbs_run_method()
481 uverbs_attr_get(&pbundle->bundle, UVERBS_ATTR_UHW_OUT); in ib_uverbs_run_method()
484 ret = uverbs_set_output(&pbundle->bundle, attr); in ib_uverbs_run_method()
509 struct uverbs_attr *attr = &pbundle->bundle.attrs[i]; in bundle_destroy()
515 &pbundle->bundle); in bundle_destroy()
523 struct uverbs_attr *attr = &pbundle->bundle.attrs[i]; in bundle_destroy()
539 &pbundle->bundle); in bundle_destroy()
597 pbundle->bundle.ufile = ufile; in ib_uverbs_cmd_verbs()
598 pbundle->bundle.context = NULL; /* only valid if bundle has uobject */ in ib_uverbs_cmd_verbs()
605 sizeof(*pbundle->bundle.attrs), in ib_uverbs_cmd_verbs()
607 memset(pbundle->bundle.attr_present, 0, in ib_uverbs_cmd_verbs()
608 sizeof(pbundle->bundle.attr_present)); in ib_uverbs_cmd_verbs()
705 void uverbs_fill_udata(struct uverbs_attr_bundle *bundle, in uverbs_fill_udata() argument
710 container_of(bundle, struct bundle_priv, bundle); in uverbs_fill_udata()
712 uverbs_attr_get(&pbundle->bundle, attr_in); in uverbs_fill_udata()
714 uverbs_attr_get(&pbundle->bundle, attr_out); in uverbs_fill_udata()
738 int uverbs_copy_to(const struct uverbs_attr_bundle *bundle, size_t idx, in uverbs_copy_to() argument
741 const struct uverbs_attr *attr = uverbs_attr_get(bundle, idx); in uverbs_copy_to()
751 return uverbs_set_output(bundle, attr); in uverbs_copy_to()
760 int uverbs_output_written(const struct uverbs_attr_bundle *bundle, size_t idx) in uverbs_output_written() argument
762 const struct uverbs_attr *attr = uverbs_attr_get(bundle, idx); in uverbs_output_written()
767 return uverbs_set_output(bundle, attr); in uverbs_output_written()
793 int uverbs_copy_to_struct_or_zero(const struct uverbs_attr_bundle *bundle, in uverbs_copy_to_struct_or_zero() argument
796 const struct uverbs_attr *attr = uverbs_attr_get(bundle, idx); in uverbs_copy_to_struct_or_zero()
803 return uverbs_copy_to(bundle, idx, from, size); in uverbs_copy_to_struct_or_zero()