| Date | Tue, 19 Oct 2004 19:35:10 +0200 | From | Ingo Molnar <> | Subject | Re: [patch] Real-Time Preemption, -RT-2.6.9-rc4-mm1-U6 |
| |
* Adam Heath <doogie@debian.org> wrote:
> I am still having the same bug(repeatable by running liquidwar) as I > reported with -U5(see my earlier email).
ok, this seems to be some questionable code in OSS. It really has no business up()-ing the inode semaphore - nobody down()-ed it before! This could be either a bad workaround for a bug/hang someone saw, or an old VFS assumption that doesnt hold anymore. In any case, could you try the patch below, does it fix liquidwar?
Ingo
--- linux/sound/core/oss/pcm_oss.c.orig +++ linux/sound/core/oss/pcm_oss.c @@ -2120,9 +2120,7 @@ static ssize_t snd_pcm_oss_write(struct substream = pcm_oss_file->streams[SNDRV_PCM_STREAM_PLAYBACK]; if (substream == NULL) return -ENXIO; - up(&file->f_dentry->d_inode->i_sem); result = snd_pcm_oss_write1(substream, buf, count); - down(&file->f_dentry->d_inode->i_sem); #ifdef OSS_DEBUG printk("pcm_oss: write %li bytes (wrote %li bytes)\n", (long)count, (long)result); #endif - 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/
|