Update of /cvsroot/alsa/alsa-kernel/pci In directory sc8-pr-cvs1:/tmp/cvs-serv16068/pci
Modified Files: azt3328.c cs4281.c ens1370.c es1938.c es1968.c sonicvibes.c via82xx.c Log Message: fixed the wrong order of object destruction: a released object is referred after the *_free() call. Index: azt3328.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/azt3328.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- azt3328.c 12 Aug 2003 14:10:12 -0000 1.2 +++ azt3328.c 14 Aug 2003 11:05:38 -0000 1.3 @@ -1347,38 +1347,38 @@ chip->codec_port = pci_resource_start(pci, 0); if ((chip->res_codec_port = request_region(chip->codec_port, 0x80, "Aztech AZF3328 I/O")) == NULL) { - snd_azf3328_free(chip); snd_printk("unable to grab I/O port at 0x%lx-0x%lx\n", chip->codec_port, chip->codec_port + 0x80 - 1); + snd_azf3328_free(chip); return -EBUSY; } chip->io2_port = pci_resource_start(pci, 1); if ((chip->res_io2_port = request_region(chip->io2_port, 0x08, "Aztech AZF3328 I/O 2")) == NULL) { - snd_azf3328_free(chip); snd_printk("unable to grab I/O 2 port at 0x%lx-0x%lx\n", chip->io2_port, chip->io2_port + 0x08 - 1); + snd_azf3328_free(chip); return -EBUSY; } chip->mpu_port = pci_resource_start(pci, 2); if ((chip->res_mpu_port = request_region(chip->mpu_port, 0x04, "Aztech AZF3328 MPU401")) == NULL) { - snd_azf3328_free(chip); snd_printk("unable to grab MPU401 port at 0x%lx-0x%lx\n", chip->mpu_port, chip->mpu_port + 0x04 - 1); + snd_azf3328_free(chip); return -EBUSY; } chip->synth_port = pci_resource_start(pci, 3); if ((chip->res_synth_port = request_region(chip->synth_port, 0x08, "Aztech AZF3328 OPL3")) == NULL) { - snd_azf3328_free(chip); snd_printk("unable to grab OPL3 port at 0x%lx-0x%lx\n", chip->synth_port, chip->synth_port + 0x08 - 1); + snd_azf3328_free(chip); return -EBUSY; } chip->mixer_port = pci_resource_start(pci, 4); if ((chip->res_mixer_port = request_region(chip->mixer_port, 0x40, "Aztech AZF3328 Mixer")) == NULL) { - snd_azf3328_free(chip); snd_printk("unable to grab mixer port at 0x%lx-0x%lx\n", chip->mixer_port, chip->mixer_port + 0x40 - 1); + snd_azf3328_free(chip); return -EBUSY; } if (request_irq(pci->irq, snd_azf3328_interrupt, SA_INTERRUPT|SA_SHIRQ, card->shortname, (void *)chip)) { - snd_azf3328_free(chip); snd_printk("unable to grab IRQ %d\n", pci->irq); + snd_azf3328_free(chip); return -EBUSY; } chip->irq = pci->irq; @@ -1499,8 +1499,8 @@ if ((err = snd_mpu401_uart_new( card, 0, MPU401_HW_MPU401, chip->mpu_port, 1, pci->irq, 0, &chip->rmidi)) < 0) { - snd_card_free(card); snd_printk("azf3328: no MPU-401 device at 0x%lx?\n", chip->mpu_port); + snd_card_free(card); return err; } Index: cs4281.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/cs4281.c,v retrieving revision 1.43 retrieving revision 1.44 diff -u -r1.43 -r1.44 --- cs4281.c 12 Aug 2003 14:10:12 -0000 1.43 +++ cs4281.c 14 Aug 2003 11:05:38 -0000 1.44 @@ -1439,18 +1439,18 @@ chip->dual_codec = dual_codec; if ((chip->ba0_res = request_mem_region(chip->ba0_addr, CS4281_BA0_SIZE, "CS4281 BA0")) == NULL) { - snd_cs4281_free(chip); snd_printk(KERN_ERR "unable to grab memory region 0x%lx-0x%lx\n", chip->ba0_addr, chip->ba0_addr + CS4281_BA0_SIZE - 1); + snd_cs4281_free(chip); return -ENOMEM; } if ((chip->ba1_res = request_mem_region(chip->ba1_addr, CS4281_BA1_SIZE, "CS4281 BA1")) == NULL) { - snd_cs4281_free(chip); snd_printk(KERN_ERR "unable to grab memory region 0x%lx-0x%lx\n", chip->ba1_addr, chip->ba1_addr + CS4281_BA1_SIZE - 1); + snd_cs4281_free(chip); return -ENOMEM; } if (request_irq(pci->irq, snd_cs4281_interrupt, SA_INTERRUPT|SA_SHIRQ, "CS4281", (void *)chip)) { - snd_cs4281_free(chip); snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq); + snd_cs4281_free(chip); return -ENOMEM; } chip->irq = pci->irq; Index: ens1370.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/ens1370.c,v retrieving revision 1.47 retrieving revision 1.48 diff -u -r1.47 -r1.48 --- ens1370.c 12 Aug 2003 14:10:12 -0000 1.47 +++ ens1370.c 14 Aug 2003 11:05:38 -0000 1.48 @@ -1902,20 +1902,20 @@ ensoniq->irq = -1; ensoniq->port = pci_resource_start(pci, 0); if ((ensoniq->res_port = request_region(ensoniq->port, 0x40, "Ensoniq AudioPCI")) == NULL) { - snd_ensoniq_free(ensoniq); snd_printk("unable to grab ports 0x%lx-0x%lx\n", ensoniq->port, ensoniq->port + 0x40 - 1); + snd_ensoniq_free(ensoniq); return -EBUSY; } if (request_irq(pci->irq, snd_audiopci_interrupt, SA_INTERRUPT|SA_SHIRQ, "Ensoniq AudioPCI", (void *)ensoniq)) { - snd_ensoniq_free(ensoniq); snd_printk("unable to grab IRQ %d\n", pci->irq); + snd_ensoniq_free(ensoniq); return -EBUSY; } ensoniq->irq = pci->irq; #ifdef CHIP1370 if ((ensoniq->bugbuf = snd_malloc_pci_pages(pci, 16, &ensoniq->bugbuf_addr)) == NULL) { - snd_ensoniq_free(ensoniq); snd_printk("unable to allocate space for phantom area - bugbuf\n"); + snd_ensoniq_free(ensoniq); return -EBUSY; } #endif Index: es1938.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/es1938.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- es1938.c 12 Aug 2003 14:10:12 -0000 1.26 +++ es1938.c 14 Aug 2003 11:05:38 -0000 1.27 @@ -1413,37 +1413,37 @@ chip->pci = pci; chip->io_port = pci_resource_start(pci, 0); if ((chip->res_io_port = request_region(chip->io_port, 8, "ESS Solo-1")) == NULL) { - snd_es1938_free(chip); snd_printk("unable to grab region 0x%lx-0x%lx\n", chip->io_port, chip->io_port + 8 - 1); + snd_es1938_free(chip); return -EBUSY; } chip->sb_port = pci_resource_start(pci, 1); if ((chip->res_sb_port = request_region(chip->sb_port, 0x10, "ESS Solo-1 SB")) == NULL) { - snd_es1938_free(chip); snd_printk("unable to grab SB region 0x%lx-0x%lx\n", chip->sb_port, chip->sb_port + 0x10 - 1); + snd_es1938_free(chip); return -EBUSY; } chip->vc_port = pci_resource_start(pci, 2); if ((chip->res_vc_port = request_region(chip->vc_port, 0x10, "ESS Solo-1 VC (DMA)")) == NULL) { - snd_es1938_free(chip); snd_printk("unable to grab VC (DMA) region 0x%lx-0x%lx\n", chip->vc_port, chip->vc_port + 0x10 - 1); + snd_es1938_free(chip); return -EBUSY; } chip->mpu_port = pci_resource_start(pci, 3); if ((chip->res_mpu_port = request_region(chip->mpu_port, 4, "ESS Solo-1 MIDI")) == NULL) { - snd_es1938_free(chip); snd_printk("unable to grab MIDI region 0x%lx-0x%lx\n", chip->mpu_port, chip->mpu_port + 4 - 1); + snd_es1938_free(chip); return -EBUSY; } chip->game_port = pci_resource_start(pci, 4); if ((chip->res_game_port = request_region(chip->game_port, 4, "ESS Solo-1 GAME")) == NULL) { - snd_es1938_free(chip); snd_printk("unable to grab GAME region 0x%lx-0x%lx\n", chip->game_port, chip->game_port + 4 - 1); + snd_es1938_free(chip); return -EBUSY; } if (request_irq(pci->irq, snd_es1938_interrupt, SA_INTERRUPT|SA_SHIRQ, "ES1938", (void *)chip)) { - snd_es1938_free(chip); snd_printk("unable to grab IRQ %d\n", pci->irq); + snd_es1938_free(chip); return -EBUSY; } chip->irq = pci->irq; Index: es1968.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/es1968.c,v retrieving revision 1.51 retrieving revision 1.52 diff -u -r1.51 -r1.52 --- es1968.c 12 Aug 2003 14:10:12 -0000 1.51 +++ es1968.c 14 Aug 2003 11:05:38 -0000 1.52 @@ -2551,14 +2551,14 @@ chip->io_port = pci_resource_start(pci, 0); if ((chip->res_io_port = request_region(chip->io_port, 0x100, "ESS Maestro")) == NULL) { - snd_es1968_free(chip); snd_printk("unable to grab region 0x%lx-0x%lx\n", chip->io_port, chip->io_port + 0x100 - 1); + snd_es1968_free(chip); return -EBUSY; } if (request_irq(pci->irq, snd_es1968_interrupt, SA_INTERRUPT|SA_SHIRQ, "ESS Maestro", (void*)chip)) { - snd_es1968_free(chip); snd_printk("unable to grab IRQ %d\n", pci->irq); + snd_es1968_free(chip); return -EBUSY; } chip->irq = pci->irq; Index: sonicvibes.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/sonicvibes.c,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- sonicvibes.c 12 Aug 2003 14:10:13 -0000 1.25 +++ sonicvibes.c 14 Aug 2003 11:05:38 -0000 1.26 @@ -1264,32 +1264,32 @@ sonic->irq = -1; sonic->sb_port = pci_resource_start(pci, 0); if ((sonic->res_sb_port = request_region(sonic->sb_port, 0x10, "S3 SonicVibes SB")) == NULL) { - snd_sonicvibes_free(sonic); snd_printk("unable to grab SB port at 0x%lx-0x%lx\n", sonic->sb_port, sonic->sb_port + 0x10 - 1); + snd_sonicvibes_free(sonic); return -EBUSY; } sonic->enh_port = pci_resource_start(pci, 1); if ((sonic->res_enh_port = request_region(sonic->enh_port, 0x10, "S3 SonicVibes Enhanced")) == NULL) { - snd_sonicvibes_free(sonic); snd_printk("unable to grab PCM port at 0x%lx-0x%lx\n", sonic->enh_port, sonic->enh_port + 0x10 - 1); + snd_sonicvibes_free(sonic); return -EBUSY; } sonic->synth_port = pci_resource_start(pci, 2); if ((sonic->res_synth_port = request_region(sonic->synth_port, 4, "S3 SonicVibes Synth")) == NULL) { - snd_sonicvibes_free(sonic); snd_printk("unable to grab synth port at 0x%lx-0x%lx\n", sonic->synth_port, sonic->synth_port + 4 - 1); + snd_sonicvibes_free(sonic); return -EBUSY; } sonic->midi_port = pci_resource_start(pci, 3); if ((sonic->res_midi_port = request_region(sonic->midi_port, 4, "S3 SonicVibes Midi")) == NULL) { - snd_sonicvibes_free(sonic); snd_printk("unable to grab MIDI port at 0x%lx-0x%lx\n", sonic->midi_port, sonic->midi_port + 4 - 1); + snd_sonicvibes_free(sonic); return -EBUSY; } sonic->game_port = pci_resource_start(pci, 4); if (request_irq(pci->irq, snd_sonicvibes_interrupt, SA_INTERRUPT|SA_SHIRQ, "S3 SonicVibes", (void *)sonic)) { - snd_magic_kfree(sonic); snd_printk("unable to grab IRQ %d\n", pci->irq); + snd_sonicvibes_free(sonic); return -EBUSY; } sonic->irq = pci->irq; Index: via82xx.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/via82xx.c,v retrieving revision 1.45 retrieving revision 1.46 diff -u -r1.45 -r1.46 --- via82xx.c 12 Aug 2003 14:10:14 -0000 1.45 +++ via82xx.c 14 Aug 2003 11:05:38 -0000 1.46 @@ -1897,14 +1897,14 @@ chip->port = pci_resource_start(pci, 0); if ((chip->res_port = request_region(chip->port, 256, card->driver)) == NULL) { - snd_via82xx_free(chip); snd_printk("unable to grab ports 0x%lx-0x%lx\n", chip->port, chip->port + 256 - 1); + snd_via82xx_free(chip); return -EBUSY; } if (request_irq(pci->irq, snd_via82xx_interrupt, SA_INTERRUPT|SA_SHIRQ, card->driver, (void *)chip)) { - snd_via82xx_free(chip); snd_printk("unable to grab IRQ %d\n", pci->irq); + snd_via82xx_free(chip); return -EBUSY; } chip->irq = pci->irq; ------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01 _______________________________________________ Alsa-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-cvslog