blk_unregister_region(MKDEV(hwif->major, 0), MAX_DRIVES<<PARTN_BITS);
kfree(hwif->sg_table);
unregister_blkdev(hwif->major, hwif->name);
blk_unregister_region(MKDEV(hwif->major, 0), MAX_DRIVES<<PARTN_BITS);
kfree(hwif->sg_table);
unregister_blkdev(hwif->major, hwif->name);
/* restore hwif data to pristine status */
ide_init_port_data(hwif, hwif->index);
/* restore hwif data to pristine status */
ide_init_port_data(hwif, hwif->index);