* [PATCH] drm/vkms: Suppress context imbalance sparse warning
@ 2024-09-12 15:25 Louis Chauvet
2024-09-17 16:02 ` José Expósito
2024-09-24 23:59 ` Maíra Canal
0 siblings, 2 replies; 3+ messages in thread
From: Louis Chauvet @ 2024-09-12 15:25 UTC (permalink / raw)
To: Rodrigo Siqueira, Maíra Canal, Haneen Mohammed,
Simona Vetter, Melissa Wen, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie
Cc: thomas.petazzoni, dri-devel, linux-kernel, Louis Chauvet
The functions `vkms_crtc_atomic_begin` and `vkms_crtc_atomic_flush` are
responsible for locking and unlocking a mutex, respectively. Add the
`__acquires` and `__releases` annotations to these functions to prevent
the associated sparse warning about context imbalance.
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
---
drivers/gpu/drm/vkms/vkms_crtc.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/vkms/vkms_crtc.c b/drivers/gpu/drm/vkms/vkms_crtc.c
index 40b4d084e3ceef9e1e24b7338efdd9253afee8d6..2ad164b518fb93f5b6b86948116ff7ed97770b60 100644
--- a/drivers/gpu/drm/vkms/vkms_crtc.c
+++ b/drivers/gpu/drm/vkms/vkms_crtc.c
@@ -232,6 +232,7 @@ static void vkms_crtc_atomic_disable(struct drm_crtc *crtc,
static void vkms_crtc_atomic_begin(struct drm_crtc *crtc,
struct drm_atomic_state *state)
+ __acquires(&vkms_output->lock)
{
struct vkms_output *vkms_output = drm_crtc_to_vkms_output(crtc);
@@ -243,6 +244,7 @@ static void vkms_crtc_atomic_begin(struct drm_crtc *crtc,
static void vkms_crtc_atomic_flush(struct drm_crtc *crtc,
struct drm_atomic_state *state)
+ __releases(&vkms_output->lock)
{
struct vkms_output *vkms_output = drm_crtc_to_vkms_output(crtc);
---
base-commit: d2194256049910d286cd6c308c2689df521d8842
change-id: 20240912-vkms-warnings-e0e331bc5e6d
Best regards,
--
Louis Chauvet <louis.chauvet@bootlin.com>
^ permalink raw reply [flat|nested] 3+ messages in thread* [PATCH] drm/vkms: Suppress context imbalance sparse warning
2024-09-12 15:25 [PATCH] drm/vkms: Suppress context imbalance sparse warning Louis Chauvet
@ 2024-09-17 16:02 ` José Expósito
2024-09-24 23:59 ` Maíra Canal
1 sibling, 0 replies; 3+ messages in thread
From: José Expósito @ 2024-09-17 16:02 UTC (permalink / raw)
To: louis.chauvet
Cc: airlied, dri-devel, hamohammed.sa, linux-kernel,
maarten.lankhorst, mairacanal, melissa.srw, mripard,
rodrigosiqueiramelo, simona, thomas.petazzoni, tzimmermann,
José Expósito
Hi Louis,
> The functions `vkms_crtc_atomic_begin` and `vkms_crtc_atomic_flush` are
> responsible for locking and unlocking a mutex, respectively. Add the
> `__acquires` and `__releases` annotations to these functions to prevent
> the associated sparse warning about context imbalance.
>
> Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
Thanks for fixing this warning. Tested it and I can confirm that these
warnings are fixed now:
drivers/gpu/drm/vkms/vkms_crtc.c:233:13: warning: context imbalance in 'vkms_crtc_atomic_begin' - wrong count at exit
drivers/gpu/drm/vkms/vkms_crtc.c:262:39: warning: context imbalance in 'vkms_crtc_atomic_flush' - unexpected unlock
Feel free to add:
Reviewed-by: José Expósito <jose.exposito89@gmail.com>
> ---
> drivers/gpu/drm/vkms/vkms_crtc.c | 2 ++
> 1 file changed, 2 insertions(+)
>
>
> ---
> base-commit: d2194256049910d286cd6c308c2689df521d8842
> change-id: 20240912-vkms-warnings-e0e331bc5e6d
>
> Best regards,
>
> diff --git a/drivers/gpu/drm/vkms/vkms_crtc.c b/drivers/gpu/drm/vkms/vkms_crtc.c
> index 40b4d084e3ceef9e1e24b7338efdd9253afee8d6..2ad164b518fb93f5b6b86948116ff7ed97770b60 100644
> --- a/drivers/gpu/drm/vkms/vkms_crtc.c
> +++ b/drivers/gpu/drm/vkms/vkms_crtc.c
> @@ -232,6 +232,7 @@ static void vkms_crtc_atomic_disable(struct drm_crtc *crtc,
>
> static void vkms_crtc_atomic_begin(struct drm_crtc *crtc,
> struct drm_atomic_state *state)
> + __acquires(&vkms_output->lock)
> {
> struct vkms_output *vkms_output = drm_crtc_to_vkms_output(crtc);
>
> @@ -243,6 +244,7 @@ static void vkms_crtc_atomic_begin(struct drm_crtc *crtc,
>
> static void vkms_crtc_atomic_flush(struct drm_crtc *crtc,
> struct drm_atomic_state *state)
> + __releases(&vkms_output->lock)
> {
> struct vkms_output *vkms_output = drm_crtc_to_vkms_output(crtc);
>
>
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] drm/vkms: Suppress context imbalance sparse warning
2024-09-12 15:25 [PATCH] drm/vkms: Suppress context imbalance sparse warning Louis Chauvet
2024-09-17 16:02 ` José Expósito
@ 2024-09-24 23:59 ` Maíra Canal
1 sibling, 0 replies; 3+ messages in thread
From: Maíra Canal @ 2024-09-24 23:59 UTC (permalink / raw)
To: Louis Chauvet, Rodrigo Siqueira, Haneen Mohammed, Simona Vetter,
Melissa Wen, Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann,
David Airlie
Cc: thomas.petazzoni, dri-devel, linux-kernel
Hi Louis,
On 9/12/24 12:25, Louis Chauvet wrote:
> The functions `vkms_crtc_atomic_begin` and `vkms_crtc_atomic_flush` are
> responsible for locking and unlocking a mutex, respectively. Add the
> `__acquires` and `__releases` annotations to these functions to prevent
> the associated sparse warning about context imbalance.
>
> Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
When I was applying this patch, I got the following warning:
137f51649b04 (HEAD -> drm-misc-next) drm/vkms: Suppress context
imbalance sparse warning
-:4: WARNING:EMAIL_SUBJECT: A patch subject line should describe the
change not the tool that found it
#4:
Subject: [PATCH] drm/vkms: Suppress context imbalance sparse warning
total: 0 errors, 1 warnings, 0 checks, 14 lines checked
Therefore, before pushing the patch, I changed the commit title to
"drm/vkms: Suppress context imbalance detected by sparse warning". Hope
you don't mind.
Applied to misc/kernel.git (drm-misc-next).
Best Regards,
- Maíra
> ---
> drivers/gpu/drm/vkms/vkms_crtc.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/vkms/vkms_crtc.c b/drivers/gpu/drm/vkms/vkms_crtc.c
> index 40b4d084e3ceef9e1e24b7338efdd9253afee8d6..2ad164b518fb93f5b6b86948116ff7ed97770b60 100644
> --- a/drivers/gpu/drm/vkms/vkms_crtc.c
> +++ b/drivers/gpu/drm/vkms/vkms_crtc.c
> @@ -232,6 +232,7 @@ static void vkms_crtc_atomic_disable(struct drm_crtc *crtc,
>
> static void vkms_crtc_atomic_begin(struct drm_crtc *crtc,
> struct drm_atomic_state *state)
> + __acquires(&vkms_output->lock)
> {
> struct vkms_output *vkms_output = drm_crtc_to_vkms_output(crtc);
>
> @@ -243,6 +244,7 @@ static void vkms_crtc_atomic_begin(struct drm_crtc *crtc,
>
> static void vkms_crtc_atomic_flush(struct drm_crtc *crtc,
> struct drm_atomic_state *state)
> + __releases(&vkms_output->lock)
> {
> struct vkms_output *vkms_output = drm_crtc_to_vkms_output(crtc);
>
>
> ---
> base-commit: d2194256049910d286cd6c308c2689df521d8842
> change-id: 20240912-vkms-warnings-e0e331bc5e6d
>
> Best regards,
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-09-24 23:59 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-09-12 15:25 [PATCH] drm/vkms: Suppress context imbalance sparse warning Louis Chauvet
2024-09-17 16:02 ` José Expósito
2024-09-24 23:59 ` Maíra Canal
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®