lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Sat, 23 Mar 2024 22:04:47 -0400
From: Emilio Mendoza Reyes <emendoz@...lemson.edu>
To: neil.armstrong@...aro.org, dianders@...omium.org,
 linux-kernel@...r.kernel.org, dri-devel@...ts.freedesktop.org
Subject:
 [PATCH 2/2] drm/panel: Promote warn_dev to WARN for invalid calls in
 drm_panel.c

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

From: Emilio Mendoza Reyes <emendoz@...mson.edu>

This patch is the second of a set of two.

In the kernel docs there is a todo:
Link: https://www.kernel.org/doc/html/v6.8/gpu/todo.html#clean-up-checks-for-already-prepared-enabled-in-panels

The first patch addresses removing the duplicated code. This second
patch addresses promoting instances of dev_warn to WARN as it is an
error in other code for these functions to be called in the invalid
state that triggers the checks.

Signed-off-by: Emilio Mendoza Reyes <emendoz@...mson.edu>
- ---
 drivers/gpu/drm/drm_panel.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_panel.c b/drivers/gpu/drm/drm_panel.c
index cfbe020de54e..0b7602c8b387 100644
- --- a/drivers/gpu/drm/drm_panel.c
+++ b/drivers/gpu/drm/drm_panel.c
@@ -114,7 +114,9 @@ int drm_panel_prepare(struct drm_panel *panel)
 		return -EINVAL;
 
 	if (panel->prepared) {
- -		dev_warn(panel->dev, "Skipping prepare of already prepared panel\n");
+		const char *name = dev_name(panel->dev);
+
+		WARN(1, "Unexpected attempt to prepare an already prepared panel by %s\n", name);
 		return 0;
 	}
 
@@ -162,7 +164,9 @@ int drm_panel_unprepare(struct drm_panel *panel)
 		return -EINVAL;
 
 	if (!panel->prepared) {
- -		dev_warn(panel->dev, "Skipping unprepare of already unprepared panel\n");
+		const char *name = dev_name(panel->dev);
+
+		WARN(1, "Unexpected attempt to unprepare an already unprepared panel by %s\n", name);
 		return 0;
 	}
 
@@ -208,7 +212,9 @@ int drm_panel_enable(struct drm_panel *panel)
 		return -EINVAL;
 
 	if (panel->enabled) {
- -		dev_warn(panel->dev, "Skipping enable of already enabled panel\n");
+		const char *name = dev_name(panel->dev);
+
+		WARN(1, "Unexpected attempt to enable an already enabled panel by %s\n", name);
 		return 0;
 	}
 
@@ -246,7 +252,9 @@ int drm_panel_disable(struct drm_panel *panel)
 		return -EINVAL;
 
 	if (!panel->enabled) {
- -		dev_warn(panel->dev, "Skipping disable of already disabled panel\n");
+		const char *name = dev_name(panel->dev);
+
+		WARN(1, "Unexpected attempt to disable an already disabled panel by %s\n", name);
 		return 0;
 	}
 
- -- 
2.44.0

-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQTcaZbABwnECYA0cZI0LAN3EqikFgUCZf+KPwAKCRA0LAN3Eqik
FgImAQCqtDgta8+cyU8aAaWN2QTflyiHrNWqB1YmPkVggV1xSwEAx6Ge9YOH7vNL
hmew94ipW21OuQzIeHtSjLpqJ5Creww=
=aLEl
-----END PGP SIGNATURE-----




Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ