Lines Matching refs:blob
4212 struct drm_property_blob *blob; in drm_property_create_blob() local
4218 blob = kzalloc(sizeof(struct drm_property_blob)+length, GFP_KERNEL); in drm_property_create_blob()
4219 if (!blob) in drm_property_create_blob()
4222 ret = drm_mode_object_get(dev, &blob->base, DRM_MODE_OBJECT_BLOB); in drm_property_create_blob()
4224 kfree(blob); in drm_property_create_blob()
4228 blob->length = length; in drm_property_create_blob()
4230 memcpy(blob->data, data, length); in drm_property_create_blob()
4232 list_add_tail(&blob->head, &dev->mode_config.property_blob_list); in drm_property_create_blob()
4233 return blob; in drm_property_create_blob()
4237 struct drm_property_blob *blob) in drm_property_destroy_blob() argument
4239 drm_mode_object_put(dev, &blob->base); in drm_property_destroy_blob()
4240 list_del(&blob->head); in drm_property_destroy_blob()
4241 kfree(blob); in drm_property_destroy_blob()
4262 struct drm_property_blob *blob; in drm_mode_getblob_ioctl() local
4270 blob = drm_property_blob_find(dev, out_resp->blob_id); in drm_mode_getblob_ioctl()
4271 if (!blob) { in drm_mode_getblob_ioctl()
4276 if (out_resp->length == blob->length) { in drm_mode_getblob_ioctl()
4278 if (copy_to_user(blob_ptr, blob->data, blob->length)) { in drm_mode_getblob_ioctl()
4283 out_resp->length = blob->length; in drm_mode_getblob_ioctl()
5477 struct drm_property_blob *blob, *bt; in drm_mode_config_cleanup() local
5495 list_for_each_entry_safe(blob, bt, &dev->mode_config.property_blob_list, in drm_mode_config_cleanup()
5497 drm_property_destroy_blob(dev, blob); in drm_mode_config_cleanup()