Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4939c660341d1439b8c70c3e006e7fc182f5111e
Commit:     4939c660341d1439b8c70c3e006e7fc182f5111e
Parent:     ce875f079efcfdcf693de89c7ab0ca7f71a9bdce
Author:     Takashi Iwai <[EMAIL PROTECTED]>
AuthorDate: Mon Jan 28 23:53:41 2008 +0100
Committer:  Jaroslav Kysela <[EMAIL PROTECTED]>
CommitDate: Thu Jan 31 17:30:20 2008 +0100

    [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 <[EMAIL PROTECTED]>
    Signed-off-by: Jaroslav Kysela <[EMAIL PROTECTED]>
---
 sound/core/oss/pcm_oss.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/sound/core/oss/pcm_oss.c b/sound/core/oss/pcm_oss.c
index 092c2d8..4c601b1 100644
--- a/sound/core/oss/pcm_oss.c
+++ b/sound/core/oss/pcm_oss.c
@@ -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);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to