Rev 4075 | Rev 5078 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4075 | Rev 4569 | ||
---|---|---|---|
Line 269... | Line 269... | ||
269 | BUG_ON(atomic_read(&fence->kref.refcount) == 0); |
269 | BUG_ON(atomic_read(&fence->kref.refcount) == 0); |
270 | kref_put(&fence->kref, vmw_fence_obj_destroy_locked); |
270 | kref_put(&fence->kref, vmw_fence_obj_destroy_locked); |
271 | spin_unlock_irq(&fman->lock); |
271 | spin_unlock_irq(&fman->lock); |
272 | } |
272 | } |
Line 273... | Line 273... | ||
273 | 273 | ||
274 | void vmw_fences_perform_actions(struct vmw_fence_manager *fman, |
274 | static void vmw_fences_perform_actions(struct vmw_fence_manager *fman, |
275 | struct list_head *list) |
275 | struct list_head *list) |
276 | { |
276 | { |
Line 277... | Line 277... | ||
277 | struct vmw_fence_action *action, *next_action; |
277 | struct vmw_fence_action *action, *next_action; |
Line 895... | Line 895... | ||
895 | * @action - The action to add. |
895 | * @action - The action to add. |
896 | * |
896 | * |
897 | * Note that the action callbacks may be executed before this function |
897 | * Note that the action callbacks may be executed before this function |
898 | * returns. |
898 | * returns. |
899 | */ |
899 | */ |
900 | void vmw_fence_obj_add_action(struct vmw_fence_obj *fence, |
900 | static void vmw_fence_obj_add_action(struct vmw_fence_obj *fence, |
901 | struct vmw_fence_action *action) |
901 | struct vmw_fence_action *action) |
902 | { |
902 | { |
903 | struct vmw_fence_manager *fman = fence->fman; |
903 | struct vmw_fence_manager *fman = fence->fman; |
904 | unsigned long irq_flags; |
904 | unsigned long irq_flags; |
905 | bool run_update = false; |
905 | bool run_update = false; |
Line 991... | Line 991... | ||
991 | struct vmw_event_fence_pending { |
991 | struct vmw_event_fence_pending { |
992 | struct drm_pending_event base; |
992 | struct drm_pending_event base; |
993 | struct drm_vmw_event_fence event; |
993 | struct drm_vmw_event_fence event; |
994 | }; |
994 | }; |
Line 995... | Line 995... | ||
995 | 995 | ||
996 | int vmw_event_fence_action_create(struct drm_file *file_priv, |
996 | static int vmw_event_fence_action_create(struct drm_file *file_priv, |
997 | struct vmw_fence_obj *fence, |
997 | struct vmw_fence_obj *fence, |
998 | uint32_t flags, |
998 | uint32_t flags, |
999 | uint64_t user_data, |
999 | uint64_t user_data, |
1000 | bool interruptible) |
1000 | bool interruptible) |
Line 1079... | Line 1079... | ||
1079 | * and if user-space wants a new reference, |
1079 | * and if user-space wants a new reference, |
1080 | * add one. |
1080 | * add one. |
1081 | */ |
1081 | */ |
1082 | if (arg->handle) { |
1082 | if (arg->handle) { |
1083 | struct ttm_base_object *base = |
1083 | struct ttm_base_object *base = |
1084 | ttm_base_object_lookup(vmw_fp->tfile, arg->handle); |
1084 | ttm_base_object_lookup_for_ref(dev_priv->tdev, |
- | 1085 | arg->handle); |
|
Line 1085... | Line 1086... | ||
1085 | 1086 | ||
1086 | if (unlikely(base == NULL)) { |
1087 | if (unlikely(base == NULL)) { |
1087 | DRM_ERROR("Fence event invalid fence object handle " |
1088 | DRM_ERROR("Fence event invalid fence object handle " |
1088 | "0x%08lx.\n", |
1089 | "0x%08lx.\n", |