diff options
author | Kashyap, Desai <kashyap.desai@lsi.com> | 2009-09-02 02:13:36 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2009-09-12 10:35:25 -0400 |
commit | 9e39089b958818c8f3d772414cd27f84fb2622f2 (patch) | |
tree | 9117ffceb2bbfd29296eb0f154a20fd3b25ece3c /drivers/message | |
parent | 5bab08858cecaacba803e8c90638db14bde470c0 (diff) |
[SCSI] mptsas : Sanity check for phyinfo is added
Check for phyinfo->phy before calling sas_port_delete_phy.
Signed-off-by: Kashyap Desai <kashyap.desai@lsi.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/message')
-rw-r--r-- | drivers/message/fusion/mptsas.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c index 21bd78e4f306..f744f0fc9491 100644 --- a/drivers/message/fusion/mptsas.c +++ b/drivers/message/fusion/mptsas.c | |||
@@ -852,7 +852,13 @@ mptsas_setup_wide_ports(MPT_ADAPTER *ioc, struct mptsas_portinfo *port_info) | |||
852 | port_details->num_phys--; | 852 | port_details->num_phys--; |
853 | port_details->phy_bitmask &= ~ (1 << phy_info->phy_id); | 853 | port_details->phy_bitmask &= ~ (1 << phy_info->phy_id); |
854 | memset(&phy_info->attached, 0, sizeof(struct mptsas_devinfo)); | 854 | memset(&phy_info->attached, 0, sizeof(struct mptsas_devinfo)); |
855 | sas_port_delete_phy(port_details->port, phy_info->phy); | 855 | if (phy_info->phy) { |
856 | devtprintk(ioc, dev_printk(KERN_DEBUG, | ||
857 | &phy_info->phy->dev, MYIOC_s_FMT | ||
858 | "delete phy %d, phy-obj (0x%p)\n", ioc->name, | ||
859 | phy_info->phy_id, phy_info->phy)); | ||
860 | sas_port_delete_phy(port_details->port, phy_info->phy); | ||
861 | } | ||
856 | phy_info->port_details = NULL; | 862 | phy_info->port_details = NULL; |
857 | } | 863 | } |
858 | 864 | ||