Commit ae602c0
ALSA: usb-audio: Update Babyface Pro control caches only after successful writes
commit d8f802c upstream.
snd_bbfpro_ctl_put() and snd_bbfpro_vol_put()
cache the requested packed control state in
kcontrol->private_value before issuing the USB write.
Their get and resume paths use that cached value directly,
so a failed write can leave the driver reporting and later
replaying a setting the hardware never accepted.
Update the cached state only after a successful USB write.
Fixes: 3e8f3bd ("ALSA: usb-audio: RME Babyface Pro mixer patch")
Cc: stable@vger.kernel.org
Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
Link: https://patch.msgid.link/20260429-alsa-usb-quirks-cache-rollback-v1-2-01b35c688b80@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>1 parent b9db615 commit ae602c0
1 file changed
Lines changed: 10 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2950 | 2950 | | |
2951 | 2951 | | |
2952 | 2952 | | |
| 2953 | + | |
| 2954 | + | |
| 2955 | + | |
| 2956 | + | |
2953 | 2957 | | |
2954 | 2958 | | |
2955 | 2959 | | |
2956 | | - | |
2957 | | - | |
2958 | | - | |
| 2960 | + | |
2959 | 2961 | | |
2960 | 2962 | | |
2961 | 2963 | | |
| |||
3040 | 3042 | | |
3041 | 3043 | | |
3042 | 3044 | | |
| 3045 | + | |
| 3046 | + | |
| 3047 | + | |
| 3048 | + | |
3043 | 3049 | | |
3044 | 3050 | | |
3045 | | - | |
3046 | | - | |
3047 | | - | |
| 3051 | + | |
3048 | 3052 | | |
3049 | 3053 | | |
3050 | 3054 | | |
| |||
0 commit comments