Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S261297AbVDDR0r (ORCPT ); Mon, 4 Apr 2005 13:26:47 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S261298AbVDDR0r (ORCPT ); Mon, 4 Apr 2005 13:26:47 -0400 Received: from ns2.suse.de ([195.135.220.15]:57030 "EHLO mx2.suse.de") by vger.kernel.org with ESMTP id S261297AbVDDR0o (ORCPT ); Mon, 4 Apr 2005 13:26:44 -0400 Date: Mon, 04 Apr 2005 19:26:42 +0200 Message-ID: From: Takashi Iwai To: Daniel Drake Cc: David Ford , linux-kernel mailing list Subject: Re: ALSA bugs with 2.6.12-rc1 In-Reply-To: <4251749B.5060603@gentoo.org> References: <42515358.7020101@blue-labs.org> <4251749B.5060603@gentoo.org> User-Agent: Wanderlust/2.10.1 (Watching The Wheels) SEMI/1.14.5 (Awara-Onsen) FLIM/1.14.5 (Demachiyanagi) APEL/10.6 MULE XEmacs/21.4 (patch 15) (Security Through Obscurity) (i386-suse-linux) MIME-Version: 1.0 (generated by SEMI 1.14.5 - "Awara-Onsen") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2114 Lines: 67 At Mon, 04 Apr 2005 18:08:43 +0100, Daniel Drake wrote: > > David Ford wrote: > > It seems that 2.6.12-rc1 introduced an ALSA bug generating an oops for a > > null pointer. > > > > codec_semaphore: semaphore is not ready [0x1][0x300300] > > codec_read 0: semaphore is not ready for register 0x2c > > Unable to handle kernel NULL pointer dereference at virtual address > > 00000000 > > > > This happens on multiple machines, 32b and 64bit. I'll be happy to > > provide further information if needed. > > This only happens when you mismatch your kernel and alsa-lib versions, e.g. > running alsa-lib-1.0.9-rc2 with alsa-1.0.8 in-kernel drivers, or possibly > vice-versa. Only the former case (kernel < lib). It's already fixed in linux-sound bk tree. The relevant patch is below. The patch was already submitted to stable, too. Takashi # This is a BitKeeper generated diff -Nru style patch. # # ChangeSet # 2005/03/22 09:01:11+01:00 perex@suse.cz # [ALSA] Fix Oops with timer notifying # # Timer Midlevel # Fixed Oops with timer notifying after TIMER_TREAD ioctl. # # Signed-off-by: Takashi Iwai # # sound/core/timer.c # 2005/03/15 04:25:51+01:00 perex@suse.cz +2 -1 # [ALSA] Fix Oops with timer notifying # # D:2005/03/15 11:25:51 # C:Timer Midlevel # F:core/timer.c:1.65->1.66 # L:Fixed Oops with timer notifying after TIMER_TREAD ioctl. # Signed-off-by: Takashi Iwai # diff -Nru a/sound/core/timer.c b/sound/core/timer.c --- a/sound/core/timer.c 2005-04-04 19:25:12 +02:00 +++ b/sound/core/timer.c 2005-04-04 19:25:12 +02:00 @@ -1117,7 +1117,8 @@ if (tu->qused >= tu->queue_size) { tu->overrun++; } else { - memcpy(&tu->queue[tu->qtail++], tread, sizeof(*tread)); + memcpy(&tu->tqueue[tu->qtail++], tread, sizeof(*tread)); + tu->qtail %= tu->queue_size; tu->qused++; } } - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/