| // SPDX-License-Identifier: GPL-2.0 |
| /// |
| /// 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_connector_reference(object) |
| + drm_connector_get(object) |
| | |
| - drm_connector_unreference(object) |
| + drm_connector_put(object) |
| | |
| - drm_framebuffer_reference(object) |
| + drm_framebuffer_get(object) |
| | |
| - drm_framebuffer_unreference(object) |
| + drm_framebuffer_put(object) |
| | |
| - drm_gem_object_reference(object) |
| + drm_gem_object_get(object) |
| | |
| - drm_gem_object_unreference(object) |
| + drm_gem_object_put(object) |
| | |
| - __drm_gem_object_unreference(object) |
| + __drm_gem_object_put(object) |
| | |
| - drm_gem_object_unreference_unlocked(object) |
| + drm_gem_object_put_unlocked(object) |
| | |
| - drm_dev_unref(object) |
| + drm_dev_put(object) |
| ) |
| |
| @r depends on report@ |
| expression object; |
| position p; |
| @@ |
| |
| ( |
| drm_connector_unreference@p(object) |
| | |
| drm_connector_reference@p(object) |
| | |
| drm_framebuffer_unreference@p(object) |
| | |
| drm_framebuffer_reference@p(object) |
| | |
| drm_gem_object_unreference@p(object) |
| | |
| drm_gem_object_reference@p(object) |
| | |
| __drm_gem_object_unreference(object) |
| | |
| drm_gem_object_unreference_unlocked(object) |
| | |
| drm_dev_unref@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) |