In the Linux kernel, the following vulnerability has been resolved: ALSA: usb-mixer: us16x08: validate meter packet indices get_meter_levels_from_urb() parses the 64-byte meter packets sent by the device and fills the per-channel arrays meter_level[], comp_level[] and master_level[] in struct snd_us16x08_meter_store. Currently the function derives the channel index directly from the meter packet (MUB2(meter_urb, s) - 1) and uses it to index those arrays without validating the range. If the packet contains a negative or out-of-range channel number, the driver may write past the end of these arrays. Introduce a local channel variable and validate it before updating the arrays. We reject negative indices, limit meter_level[] and comp_level[] to SND_US16X08_MAX_CHANNELS, and guard master_level[] updates with ARRAY_SIZE(master_level).
https://git.kernel.org/stable/c/eaa95228b8a56c4880a182c0350d67922b22408f
https://git.kernel.org/stable/c/cde47f4ccad6751ac36b7471572ddf38ee91870c
https://git.kernel.org/stable/c/a8ad320efb663be30b794e3dd3e829301c0d0ed3
https://git.kernel.org/stable/c/5526c1c6ba1d0913c7dfcbbd6fe1744ea7c55f1e
https://git.kernel.org/stable/c/2f21a7cbaaa93926f5be15bc095b9c57c35748d9