lkml.org 
[lkml]   [2020]   [Apr]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] sound:hdmi:fix without unlocked before return
From
Date
> After add sanity check to pass klockwork check,
> The spdif_mutex should be unlock before return true
> in check_non_pcm_per_cvt().

How do you think about a wording variant like the following?

Subject:
[PATCH v2] ALSA: hda/hdmi: Unlock a mutex always before returning from check_non_pcm_per_cvt()

Change description (according to a solution alternative):
The exception handling was incomplete in an if branch for
a null pointer check of the variable “spdif”.
Thus assign an appropriate value to the local variable “non_pcm”
by using a conditional operator instead.
A mutex is also appropriately unlocked then.



> +++ b/sound/pci/hda/patch_hdmi.c
> @@ -1848,8 +1848,10 @@ static bool check_non_pcm_per_cvt(struct hda_codec *codec, hda_nid_t cvt_nid)

> - if (WARN_ON(spdif == NULL))
> + if (WARN_ON(spdif == NULL)) {
> + mutex_unlock(&codec->spdif_mutex);
> return true;
> + }
> non_pcm = !!(spdif->status & IEC958_AES0_NONAUDIO);

- if (WARN_ON(spdif == NULL))
- return true;
- non_pcm = !!(spdif->status & IEC958_AES0_NONAUDIO);
+ non_pcm = WARN_ON(!spdif)
+ ? true
+ : !!(spdif->status & IEC958_AES0_NONAUDIO);
mutex_unlock(&codec->spdif_mutex);
return non_pcm;
}


Would you like to add the tag “Fixes” to the change description?

Regards,
Markus

\
 
 \ /
  Last update: 2020-04-26 19:02    [W:0.671 / U:3.268 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site