if (boardp->orig_carrp) { kfree(boardp->orig_carrp); boardp->orig_carrp = NULL; } 
kfree(boardp->orig_carrp); boardp->orig_carrp = NULL; 
advansys_release(struct Scsi_Host *shp){    asc_board_t    *boardp;    ASC_DBG(1, "advansys_release: begin\n");    boardp = ASC_BOARDP(shp);    free_irq(shp->irq, boardp);    if (shp->dma_channel != NO_ISA_DMA) {        ASC_DBG(1, "advansys_release: free_dma()\n");        free_dma(shp->dma_channel);    }    release_region(shp->io_port, boardp->asc_n_io_port);    if (ASC_WIDE_BOARD(boardp)) {        adv_sgblk_t    *sgp = NULL;        iounmap(boardp->ioremap_addr);        if (boardp->orig_carrp) {            kfree(boardp->orig_carrp);            boardp->orig_carrp = NULL;        }        if (boardp->orig_reqp) {            kfree(boardp->orig_reqp);            boardp->orig_reqp = boardp->adv_reqp = NULL;        }        while ((sgp = boardp->adv_sgblkp) != NULL)        {            boardp->adv_sgblkp = sgp->next_sgblkp;            kfree(sgp);        }    }#ifdef CONFIG_PROC_FS    ASC_ASSERT(boardp->prtbuf != NULL);    kfree(boardp->prtbuf);#endif /* CONFIG_PROC_FS */    scsi_unregister(shp);    ASC_DBG(1, "advansys_release: end\n");    return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/c9475cb0c358ff0dd473544280d92482df491913/advansys.c/buggy/drivers/scsi/advansys.c