Skip to content

Commit

Permalink
Merge branch 'tj-upstream-fixes' of git://htj.dyndns.org/libata-tj in…
Browse files Browse the repository at this point in the history
…to upstream-fixes
  • Loading branch information
Jeff Garzik committed Aug 9, 2006
2 parents 9f73763 + 77f3f87 commit c71d6be
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 27 deletions.
1 change: 1 addition & 0 deletions drivers/scsi/ata_piix.c
Original file line number Diff line number Diff line change
Expand Up @@ -828,6 +828,7 @@ static void __devinit piix_init_sata_map(struct pci_dev *pdev,
case IDE:
WARN_ON((i & 1) || map[i + 1] != IDE);
pinfo[i / 2] = piix_port_info[ich5_pata];
pinfo[i / 2].private_data = hpriv;
i++;
printk(" IDE IDE");
break;
Expand Down
34 changes: 8 additions & 26 deletions drivers/scsi/libata-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -5185,28 +5185,6 @@ void ata_host_stop (struct ata_host_set *host_set)
iounmap(host_set->mmio_base);
}


/**
* ata_host_remove - Unregister SCSI host structure with upper layers
* @ap: Port to unregister
* @do_unregister: 1 if we fully unregister, 0 to just stop the port
*
* LOCKING:
* Inherited from caller.
*/

static void ata_host_remove(struct ata_port *ap, unsigned int do_unregister)
{
struct Scsi_Host *sh = ap->host;

DPRINTK("ENTER\n");

if (do_unregister)
scsi_remove_host(sh);

ap->ops->port_stop(ap);
}

/**
* ata_dev_init - Initialize an ata_device structure
* @dev: Device structure to initialize
Expand Down Expand Up @@ -5532,8 +5510,11 @@ int ata_device_add(const struct ata_probe_ent *ent)

err_out:
for (i = 0; i < count; i++) {
ata_host_remove(host_set->ports[i], 1);
scsi_host_put(host_set->ports[i]->host);
struct ata_port *ap = host_set->ports[i];
if (ap) {
ap->ops->port_stop(ap);
scsi_host_put(ap->host);
}
}
err_free_ret:
kfree(host_set);
Expand All @@ -5558,7 +5539,7 @@ void ata_port_detach(struct ata_port *ap)
int i;

if (!ap->ops->error_handler)
return;
goto skip_eh;

/* tell EH we're leaving & flush EH */
spin_lock_irqsave(ap->lock, flags);
Expand Down Expand Up @@ -5594,6 +5575,7 @@ void ata_port_detach(struct ata_port *ap)
cancel_delayed_work(&ap->hotplug_task);
flush_workqueue(ata_aux_wq);

skip_eh:
/* remove the associated SCSI host */
scsi_remove_host(ap->host);
}
Expand Down Expand Up @@ -5662,7 +5644,7 @@ int ata_scsi_release(struct Scsi_Host *host)
DPRINTK("ENTER\n");

ap->ops->port_disable(ap);
ata_host_remove(ap, 0);
ap->ops->port_stop(ap);

DPRINTK("EXIT\n");
return 1;
Expand Down
1 change: 0 additions & 1 deletion drivers/scsi/sata_sil24.c
Original file line number Diff line number Diff line change
Expand Up @@ -1106,7 +1106,6 @@ static int sil24_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)

probe_ent->irq = pdev->irq;
probe_ent->irq_flags = IRQF_SHARED;
probe_ent->mmio_base = port_base;
probe_ent->private_data = hpriv;

hpriv->host_base = host_base;
Expand Down

0 comments on commit c71d6be

Please sign in to comment.