summaryrefslogtreecommitdiff
path: root/sound/synth
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2018-09-09 22:25:12 +0900
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-09-29 03:07:30 -0700
commitcc6fc7b038b213a591df3ff3f6e745a66a69e6a4 (patch)
tree2bfd4bb075f894f1f7a74f2daf2066ae8f911c1a /sound/synth
parentcfedc16ac4f84cd92cb3336e0b8ce7a84962e2cb (diff)
ALSA: bebob: use address returned by kmalloc() instead of kernel stack for streaming DMA mapping
commit 493626f2d87a74e6dbea1686499ed6e7e600484e upstream. When executing 'fw_run_transaction()' with 'TCODE_WRITE_BLOCK_REQUEST', an address of 'payload' argument is used for streaming DMA mapping by 'firewire_ohci' module if 'size' argument is larger than 8 byte. Although in this case the address should not be on kernel stack, current implementation of ALSA bebob driver uses data in kernel stack for a cue to boot M-Audio devices. This often brings unexpected result, especially for a case of CONFIG_VMAP_STACK=y. This commit fixes the bug. Reference: https://bugzilla.kernel.org/show_bug.cgi?id=201021 Reference: https://forum.manjaro.org/t/firewire-m-audio-410-driver-wont-load-firmware/51165 Fixes: a2b2a7798fb6('ALSA: bebob: Send a cue to load firmware for M-Audio Firewire series') Cc: <stable@vger.kernel.org> # v3.16+ Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound/synth')
0 files changed, 0 insertions, 0 deletions