OSDN Git Service
(root)
/
tomoyo
/
tomoyo-test1.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
b66ecd0
)
drm/i915: Check for error before calling cmpxchg()
author
Chris Wilson
<chris@chris-wilson.co.uk>
Fri, 6 Dec 2019 16:04:26 +0000
(16:04 +0000)
committer
Chris Wilson
<chris@chris-wilson.co.uk>
Fri, 6 Dec 2019 19:09:33 +0000
(19:09 +0000)
Only do the locked compare of the existing fence->error if we actually
need to set an error. As we tend to call i915_sw_fence_set_error_once()
unconditionally, it saves on typing to put the common has-error check
into the inline.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link:
https://patchwork.freedesktop.org/patch/msgid/20191206160428.1503343-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_sw_fence.h
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/i915/i915_sw_fence.h
b/drivers/gpu/drm/i915/i915_sw_fence.h
index
1e90d9a
..
19e806c
100644
(file)
--- a/
drivers/gpu/drm/i915/i915_sw_fence.h
+++ b/
drivers/gpu/drm/i915/i915_sw_fence.h
@@
-112,7
+112,8
@@
static inline void i915_sw_fence_wait(struct i915_sw_fence *fence)
static inline void
i915_sw_fence_set_error_once(struct i915_sw_fence *fence, int error)
{
- cmpxchg(&fence->error, 0, error);
+ if (unlikely(error))
+ cmpxchg(&fence->error, 0, error);
}
#endif /* _I915_SW_FENCE_H_ */