ieee1394: eth1394: clean up host removal

ether1394_add_host() guarantees that hi->dev != NULL if hi != NULL.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
This commit is contained in:
Stefan Richter 2007-02-10 23:57:57 +01:00
parent 157188cb54
commit 2cd556ae61
1 changed files with 10 additions and 17 deletions

View File

@ -655,24 +655,17 @@ out:
static void ether1394_remove_host (struct hpsb_host *host)
{
struct eth1394_host_info *hi;
struct eth1394_priv *priv;
hi = hpsb_get_hostinfo(&eth1394_highlevel, host);
if (hi != NULL) {
struct eth1394_priv *priv = netdev_priv(hi->dev);
hpsb_unregister_addrspace(&eth1394_highlevel, host,
priv->local_fifo);
if (priv->iso != NULL)
hpsb_iso_shutdown(priv->iso);
if (hi->dev) {
unregister_netdev (hi->dev);
free_netdev(hi->dev);
}
}
return;
if (!hi)
return;
priv = netdev_priv(hi->dev);
hpsb_unregister_addrspace(&eth1394_highlevel, host, priv->local_fifo);
if (priv->iso)
hpsb_iso_shutdown(priv->iso);
unregister_netdev(hi->dev);
free_netdev(hi->dev);
}
/* A reset has just arisen */
@ -689,7 +682,7 @@ static void ether1394_host_reset (struct hpsb_host *host)
hi = hpsb_get_hostinfo(&eth1394_highlevel, host);
/* This can happen for hosts that we don't use */
if (hi == NULL)
if (!hi)
return;
dev = hi->dev;