opnsense-src/sys/dev/sound/pcm
Tai-hwa Liang 2acbe67787 sound(4): fixing panic for INVARIANTS kernel
3e7bae0821 turns the BUS_READ_IVAR() failure from a warning into a
KASSERT.  For certain PCI audio devices such like snd_csa(4) and
snd_emu10kx(4), the ac97_create() keeps the device handler generated
by device_add_child(pci_dev, "pcm"), which is not really a PCI device
handler.  This in turn causes the subsequent pci_get_subdevice()
inside ac97_initmixer() triggering a panic.

This patch tries to put a bandaid for the aforementioned pcm device
children such that they can use the correct PCI handler(from parent)
to avoid a KASSERT panic in the INVARIANTS kernel.

Tested with:	snd_csa(4), snd_ich(4), snd_emu10kx(4)
Reviewed by:	imp
MFC after:	1 month
2021-04-24 03:27:43 +00:00
..
ac97.c sound(4): fixing panic for INVARIANTS kernel 2021-04-24 03:27:43 +00:00
ac97.h
ac97_if.m
ac97_patch.c
ac97_patch.h
buffer.c
buffer.h
channel.c
channel.h sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
channel_if.m
dsp.c Fix several dev_clone callbacks to avoid out-of-bounds reads 2021-03-28 11:08:36 -04:00
dsp.h
feeder.c sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
feeder.h
feeder_chain.c
feeder_eq.c sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
feeder_format.c
feeder_if.m
feeder_matrix.c sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
feeder_mixer.c
feeder_rate.c sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
feeder_volume.c
g711.h sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
intpcm.h sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
matrix.h
matrix_map.h
mixer.c sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
mixer.h Implement new mixer API to return the device pointer based on the mixer pointer. 2020-03-30 15:36:38 +00:00
mixer_if.m
pcm.h
sndstat.c sndstat: nvlist schema and API definition changes 2021-04-21 16:19:15 +08:00
sndstat.h sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
sound.c sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
sound.h Implement sndstat nvlist-based enumeration ioctls. 2021-03-17 19:05:43 +08:00
vchan.c sound: clean up empty lines in .c and .h files 2020-09-01 21:27:34 +00:00
vchan.h