[ALSA] Fix Oops with PCM OSS sync
The PCM OSS emulation can cause Oops at sync operation due to the wrong data size calculation. Typically happening on Sparc64: http://lkml.org/lkml/2008/1/24/426 Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
ce875f079e
commit
4939c66034
1 changed files with 1 additions and 0 deletions
|
@ -1621,6 +1621,7 @@ static int snd_pcm_oss_sync(struct snd_pcm_oss_file *pcm_oss_file)
|
|||
snd_pcm_format_set_silence(runtime->format,
|
||||
runtime->oss.buffer,
|
||||
size1);
|
||||
size1 /= runtime->channels; /* frames */
|
||||
fs = snd_enter_user();
|
||||
snd_pcm_lib_write(substream, (void __user *)runtime->oss.buffer, size1);
|
||||
snd_leave_user(fs);
|
||||
|
|
Loading…
Reference in a new issue