Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

+10 -17
+10 -17
drivers/ieee1394/eth1394.c
··· 655 655 static void ether1394_remove_host (struct hpsb_host *host) 656 656 { 657 657 struct eth1394_host_info *hi; 658 + struct eth1394_priv *priv; 658 659 659 660 hi = hpsb_get_hostinfo(&eth1394_highlevel, host); 660 - if (hi != NULL) { 661 - struct eth1394_priv *priv = netdev_priv(hi->dev); 662 - 663 - hpsb_unregister_addrspace(&eth1394_highlevel, host, 664 - priv->local_fifo); 665 - 666 - if (priv->iso != NULL) 667 - hpsb_iso_shutdown(priv->iso); 668 - 669 - if (hi->dev) { 670 - unregister_netdev (hi->dev); 671 - free_netdev(hi->dev); 672 - } 673 - } 674 - 675 - return; 661 + if (!hi) 662 + return; 663 + priv = netdev_priv(hi->dev); 664 + hpsb_unregister_addrspace(&eth1394_highlevel, host, priv->local_fifo); 665 + if (priv->iso) 666 + hpsb_iso_shutdown(priv->iso); 667 + unregister_netdev(hi->dev); 668 + free_netdev(hi->dev); 676 669 } 677 670 678 671 /* A reset has just arisen */ ··· 682 689 hi = hpsb_get_hostinfo(&eth1394_highlevel, host); 683 690 684 691 /* This can happen for hosts that we don't use */ 685 - if (hi == NULL) 692 + if (!hi) 686 693 return; 687 694 688 695 dev = hi->dev;