Russell Cattelan wrote: > I haven't been able to track down exactly where this > is occuring, but disabling pcm allows eliminates the crash. > > The build is current as of Sun 18th. > > The one strange thing about this box, it has > two sounds cards. A build in Yamaha OPL-3 (really really crappy) > and Ensoniq AudioPCI 1371 (very hacked driver, So the problem may be my > fault). > But I guessing it has more to do with the newbus stuff. >
Ok I finally tracked down what was going wrong, I'm not saying I found the problem of how to fix it correctly. The cause: pcmprobe gets called after es_pci_attach (which has setup the snddev_info structure), the first thing pcmprobe does is bzero that structure. Which of course cause a page fault the next time that structure is access. (by es_intr in this case) The really Q&D fix was to just return from pcmprobe. int pcmprobe(struct isa_device * dev) { DEB(printf("pcmprobe dev:0x%x name:%s\n",dev, &(pcm_info[dev->id_unit]).name)); /* The AudioPCI probe stuff was done already */ if(!(strncmp (&(pcm_info[dev->id_unit]).name, "ES1371",strlen("ES1371")))){ return 1; } bzero(&pcm_info[dev->id_unit], sizeof(pcm_info[dev->id_unit]) ); return generic_snd_probe(dev, pcm_devslist, "pcm") ? 1 : 0 ; } -- Russell Cattelan catte...@thebarn.com To Unsubscribe: send mail to majord...@freebsd.org with "unsubscribe freebsd-current" in the body of the message