blob: bf1313274f0b647183c726f0039f65dbe1824688 [file] [log] [blame]
rjw1f884582022-01-06 17:20:42 +08001// SPDX-License-Identifier: GPL-2.0
2///
3/// Use drm_*_get() and drm_*_put() helpers instead of drm_*_reference() and
4/// drm_*_unreference() helpers.
5///
6// Confidence: High
7// Copyright: (C) 2017 NVIDIA Corporation
8// Options: --no-includes --include-headers
9//
10
11virtual patch
12virtual report
13
14@depends on patch@
15expression object;
16@@
17
18(
19- drm_mode_object_reference(object)
20+ drm_mode_object_get(object)
21|
22- drm_mode_object_unreference(object)
23+ drm_mode_object_put(object)
24|
25- drm_connector_reference(object)
26+ drm_connector_get(object)
27|
28- drm_connector_unreference(object)
29+ drm_connector_put(object)
30|
31- drm_framebuffer_reference(object)
32+ drm_framebuffer_get(object)
33|
34- drm_framebuffer_unreference(object)
35+ drm_framebuffer_put(object)
36|
37- drm_gem_object_reference(object)
38+ drm_gem_object_get(object)
39|
40- drm_gem_object_unreference(object)
41+ drm_gem_object_put(object)
42|
43- __drm_gem_object_unreference(object)
44+ __drm_gem_object_put(object)
45|
46- drm_gem_object_unreference_unlocked(object)
47+ drm_gem_object_put_unlocked(object)
48|
49- drm_property_reference_blob(object)
50+ drm_property_blob_get(object)
51|
52- drm_property_unreference_blob(object)
53+ drm_property_blob_put(object)
54)
55
56@r depends on report@
57expression object;
58position p;
59@@
60
61(
62drm_mode_object_unreference@p(object)
63|
64drm_mode_object_reference@p(object)
65|
66drm_connector_unreference@p(object)
67|
68drm_connector_reference@p(object)
69|
70drm_framebuffer_unreference@p(object)
71|
72drm_framebuffer_reference@p(object)
73|
74drm_gem_object_unreference@p(object)
75|
76drm_gem_object_reference@p(object)
77|
78__drm_gem_object_unreference(object)
79|
80drm_gem_object_unreference_unlocked(object)
81|
82drm_property_unreference_blob@p(object)
83|
84drm_property_reference_blob@p(object)
85)
86
87@script:python depends on report@
88object << r.object;
89p << r.p;
90@@
91
92msg="WARNING: use get/put helpers to reference and dereference %s" % (object)
93coccilib.report.print_report(p[0], msg)