From: Markus Elfring elfring@users.sourceforge.net Date: Fri, 6 Nov 2015 13:38:22 +0100
The pwm_put() function tests whether its argument is NULL and then returns immediately. Thus the test around the call is not needed.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring elfring@users.sourceforge.net --- drivers/gpu/drm/i915/intel_panel.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c index a24df35..3d8d913 100644 --- a/drivers/gpu/drm/i915/intel_panel.c +++ b/drivers/gpu/drm/i915/intel_panel.c @@ -1729,8 +1729,7 @@ void intel_panel_destroy_backlight(struct drm_connector *connector) struct intel_panel *panel = &intel_connector->panel;
/* dispose of the pwm */ - if (panel->backlight.pwm) - pwm_put(panel->backlight.pwm); + pwm_put(panel->backlight.pwm);
panel->backlight.present = false; }
On Fri, 06 Nov 2015, SF Markus Elfring elfring@users.sourceforge.net wrote:
From: Markus Elfring elfring@users.sourceforge.net Date: Fri, 6 Nov 2015 13:38:22 +0100
The pwm_put() function tests whether its argument is NULL and then returns immediately. Thus the test around the call is not needed.
The compiler doesn't need it, but IMO it's useful documentation for humans.
BR, Jani.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring elfring@users.sourceforge.net
drivers/gpu/drm/i915/intel_panel.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c index a24df35..3d8d913 100644 --- a/drivers/gpu/drm/i915/intel_panel.c +++ b/drivers/gpu/drm/i915/intel_panel.c @@ -1729,8 +1729,7 @@ void intel_panel_destroy_backlight(struct drm_connector *connector) struct intel_panel *panel = &intel_connector->panel;
/* dispose of the pwm */
- if (panel->backlight.pwm)
pwm_put(panel->backlight.pwm);
pwm_put(panel->backlight.pwm);
panel->backlight.present = false;
}
The pwm_put() function tests whether its argument is NULL and then returns immediately. Thus the test around the call is not needed.
The compiler doesn't need it, but IMO it's useful documentation for humans.
How do you think about to extend the explicit documentation for the affected parameters in the Linux programming interfaces?
Regards, Markus
On Fri, 06 Nov 2015, SF Markus Elfring elfring@users.sourceforge.net wrote:
The pwm_put() function tests whether its argument is NULL and then returns immediately. Thus the test around the call is not needed.
The compiler doesn't need it, but IMO it's useful documentation for humans.
How do you think about to extend the explicit documentation for the affected parameters in the Linux programming interfaces?
The question is, while reading intel_panel.c, which one conveys the reader better the idea that panel->backlight.pwm may be NULL for some connectors:
a) if (panel->backlight.pwm) pwm_put(panel->backlight.pwm); b) pwm_put(panel->backlight.pwm);
No amount of documentation in pwm_put() kernel-doc is going to help with that. In most cases, panel->backlight.pwm is in fact NULL. IMO unconditionally calling pwm_put() on it gives the reader the wrong idea.
Others may disagree.
BR, Jani.
dri-devel@lists.freedesktop.org