forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
drm: Introduce drm_mode_object_{get,put}()
For consistency with other reference counting APIs in the kernel, add drm_mode_object_get() and drm_mode_object_put() to reference count DRM mode objects. Compatibility aliases are added to keep existing code working. To help speed up the transition, all the instances of the old functions in the DRM core are already replaced in this commit. A semantic patch is provided that can be used to convert all drivers to the new helpers. Reviewed-by: Sean Paul <seanpaul@chromium.org> Acked-by: Christian König <christian.koenig@amd.com> Signed-off-by: Thierry Reding <treding@nvidia.com> Link: http://patchwork.freedesktop.org/patch/msgid/20170228144643.5668-3-thierry.reding@gmail.com
- Loading branch information
1 parent
2135ea7
commit 020a218
Showing
5 changed files
with
95 additions
and
29 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
/// | ||
/// Use drm_*_get() and drm_*_put() helpers instead of drm_*_reference() and | ||
/// drm_*_unreference() helpers. | ||
/// | ||
// Confidence: High | ||
// Copyright: (C) 2017 NVIDIA Corporation | ||
// Options: --no-includes --include-headers | ||
// | ||
|
||
virtual patch | ||
virtual report | ||
|
||
@depends on patch@ | ||
expression object; | ||
@@ | ||
|
||
( | ||
- drm_mode_object_reference(object) | ||
+ drm_mode_object_get(object) | ||
| | ||
- drm_mode_object_unreference(object) | ||
+ drm_mode_object_put(object) | ||
) | ||
|
||
@r depends on report@ | ||
expression object; | ||
position p; | ||
@@ | ||
|
||
( | ||
drm_mode_object_unreference@p(object) | ||
| | ||
drm_mode_object_reference@p(object) | ||
) | ||
|
||
@script:python depends on report@ | ||
object << r.object; | ||
p << r.p; | ||
@@ | ||
msg="WARNING: use get/put helpers to reference and dereference %s" % (object) | ||
coccilib.report.print_report(p[0], msg) |