... so let's go the bisect route, I will replicate the excellent small howto from Uwe Kleine-Koenig here.
The whole will involve to compile multiple kernels. First we need to prepare a config for your system and to prepare the respective upstream versions, in your case we want to bisect the stable versions in one specific branch, so we can shortcut, and we know we want to bisect changes between 6.12.35 and 6.12.38 in your case.
git clone --single-branch -b linux-6.12.y https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
cd linux-stable
git checkout v6.12.35
cp /boot/config-$(uname -r) .config
yes '' | make localmodconfig
make savedefconfig
mv defconfig arch/x86/configs/my_defconfig
As a fist step now compile a local 6.12.35 to ensure it is "good".
# test 6.12.35 to ensure this is "good"
make my_defconfig
make -j $(nproc) bindeb-pkg
... install the resulting .deb package and confirm the problem is not present.
And now the same for the version you suspect is broken, is "bad" for git bisect speach.
# test 6.12.38 to ensure this is "bad"
git checkout v6.12.38
make my_defconfig
make -j $(nproc) bindeb-pkg
... install the resulting .deb package and confirm the problem with audio exists.
So we have now a range of from good to bad kernel and we can start the bisect:
git bisect start v6.12.38 v6.12.35
In each bisection step git checks out a state between the oldest
known-bad and the newest known-good commit. In each step test using:
make my_defconfig
make -j $(nproc) bindeb-pkg
... install, try to boot and verify the state of the problem
and if the problem is hit run:
git bisect bad
and if the problem doesn't trigger run:
git bisect good
Please pay attention to always select the just built kernel for booting, it won't always be the default kernel picked up by grub.
Then provide the output of
git bisect log
In the course of the bisection you might have to uninstall previous kernels again to not exhaust the disk space in /boot. Also in the end uninstall all self-built kernels again.

