All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Jason Yan <yanaijie@huawei.com>,
	chenxiang <chenxiang66@hisilicon.com>,
	John Garry <john.garry@huawei.com>,
	Johannes Thumshirn <jthumshirn@suse.de>,
	Ewan Milne <emilne@redhat.com>, Christoph Hellwig <hch@lst.de>,
	Tomas Henzl <thenzl@redhat.com>,
	Dan Williams <dan.j.williams@intel.com>,
	Hannes Reinecke <hare@suse.com>,
	"Martin K . Petersen" <martin.petersen@oracle.com>,
	Sasha Levin <sashal@kernel.org>,
	linux-scsi@vger.kernel.org
Subject: [PATCH AUTOSEL 4.4 33/40] scsi: libsas: always unregister the old device if going to discover new
Date: Sat,  9 Nov 2019 21:50:25 -0500	[thread overview]
Message-ID: <20191110025032.827-33-sashal@kernel.org> (raw)
In-Reply-To: <20191110025032.827-1-sashal@kernel.org>

From: Jason Yan <yanaijie@huawei.com>

[ Upstream commit 32c850bf587f993b2620b91e5af8a64a7813f504 ]

If we went into sas_rediscover_dev() the attached_sas_addr was already insured
not to be zero. So it's unnecessary to check if the attached_sas_addr is zero.

And although if the sas address is not changed, we always have to unregister
the old device when we are going to register a new one. We cannot just leave
the device there and bring up the new.

Signed-off-by: Jason Yan <yanaijie@huawei.com>
CC: chenxiang <chenxiang66@hisilicon.com>
CC: John Garry <john.garry@huawei.com>
CC: Johannes Thumshirn <jthumshirn@suse.de>
CC: Ewan Milne <emilne@redhat.com>
CC: Christoph Hellwig <hch@lst.de>
CC: Tomas Henzl <thenzl@redhat.com>
CC: Dan Williams <dan.j.williams@intel.com>
CC: Hannes Reinecke <hare@suse.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/scsi/libsas/sas_expander.c | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/drivers/scsi/libsas/sas_expander.c b/drivers/scsi/libsas/sas_expander.c
index 400eee9d77832..d44f18f773c0f 100644
--- a/drivers/scsi/libsas/sas_expander.c
+++ b/drivers/scsi/libsas/sas_expander.c
@@ -2049,14 +2049,11 @@ static int sas_rediscover_dev(struct domain_device *dev, int phy_id, bool last)
 		return res;
 	}
 
-	/* delete the old link */
-	if (SAS_ADDR(phy->attached_sas_addr) &&
-	    SAS_ADDR(sas_addr) != SAS_ADDR(phy->attached_sas_addr)) {
-		SAS_DPRINTK("ex %016llx phy 0x%x replace %016llx\n",
-			    SAS_ADDR(dev->sas_addr), phy_id,
-			    SAS_ADDR(phy->attached_sas_addr));
-		sas_unregister_devs_sas_addr(dev, phy_id, last);
-	}
+	/* we always have to delete the old device when we went here */
+	SAS_DPRINTK("ex %016llx phy 0x%x replace %016llx\n",
+		    SAS_ADDR(dev->sas_addr), phy_id,
+		    SAS_ADDR(phy->attached_sas_addr));
+	sas_unregister_devs_sas_addr(dev, phy_id, last);
 
 	return sas_discover_new(dev, phy_id);
 }
-- 
2.20.1


  parent reply	other threads:[~2019-11-10  2:52 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-10  2:49 [PATCH AUTOSEL 4.4 01/40] s390/qeth: invoke softirqs after napi_schedule() Sasha Levin
2019-11-10  2:49 ` [PATCH AUTOSEL 4.4 02/40] PCI/ACPI: Correct error message for ASPM disabling Sasha Levin
2019-11-10  2:49 ` [PATCH AUTOSEL 4.4 03/40] serial: mxs-auart: Fix potential infinite loop Sasha Levin
2019-11-10  2:49 ` [PATCH AUTOSEL 4.4 04/40] powerpc/iommu: Avoid derefence before pointer check Sasha Levin
2019-11-10  2:49   ` Sasha Levin
2019-11-10  2:49 ` [PATCH AUTOSEL 4.4 05/40] powerpc/64s/hash: Fix stab_rr off by one initialization Sasha Levin
2019-11-10  2:49   ` Sasha Levin
2019-11-10  2:49 ` [PATCH AUTOSEL 4.4 06/40] powerpc/pseries: Disable CPU hotplug across migrations Sasha Levin
2019-11-10  2:49   ` Sasha Levin
2019-11-10  2:49 ` [PATCH AUTOSEL 4.4 07/40] libfdt: Ensure INT_MAX is defined in libfdt_env.h Sasha Levin
2019-11-10  2:49   ` Sasha Levin
2019-11-10  2:49   ` Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 08/40] power: supply: twl4030_charger: fix charging current out-of-bounds Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 09/40] power: supply: twl4030_charger: disable eoc interrupt on linear charge Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 10/40] net: toshiba: fix return type of ndo_start_xmit function Sasha Levin
2019-11-10  2:50   ` Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 11/40] net: xilinx: " Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 12/40] net: broadcom: " Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 13/40] net: amd: " Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 14/40] usb: chipidea: Fix otg event handler Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 15/40] ARM: dts: am335x-evm: fix number of cpsw Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 16/40] ARM: dts: ux500: Correct SCU unit address Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 17/40] ARM: dts: ux500: Fix LCDA clock line muxing Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 18/40] ARM: dts: ste: Fix SPI controller node names Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 19/40] cpufeature: avoid warning when compiling with clang Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 20/40] bnx2x: Ignore bandwidth attention in single function mode Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 21/40] net: micrel: fix return type of ndo_start_xmit function Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 22/40] x86/CPU: Use correct macros for Cyrix calls Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 23/40] MIPS: kexec: Relax memory restriction Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 24/40] media: pci: ivtv: Fix a sleep-in-atomic-context bug in ivtv_yuv_init() Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 25/40] media: davinci: Fix implicit enum conversion warning Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 26/40] usb: gadget: uvc: configfs: Drop leaked references to config items Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 27/40] usb: gadget: uvc: configfs: Prevent format changes after linking header Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 28/40] usb: gadget: uvc: Factor out video USB request queueing Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 29/40] usb: gadget: uvc: Only halt video streaming endpoint in bulk mode Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 30/40] misc: kgdbts: Fix restrict error Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 31/40] misc: genwqe: should return proper error value Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 32/40] vfio/pci: Fix potential memory leak in vfio_msi_cap_len Sasha Levin
2019-11-10  2:50 ` Sasha Levin [this message]
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 34/40] ARM: dts: tegra30: fix xcvr-setup-use-fuses Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 35/40] ARM: tegra: apalis_t30: fix mmc1 cmd pull-up Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 36/40] net: smsc: fix return type of ndo_start_xmit function Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 37/40] EDAC: Raise the maximum number of memory controllers Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 38/40] Bluetooth: L2CAP: Detect if remote is not able to use the whole MPS Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 39/40] arm64: dts: amd: Fix SPI bus warnings Sasha Levin
2019-11-10  2:50 ` [PATCH AUTOSEL 4.4 40/40] fuse: use READ_ONCE on congestion_threshold and max_background Sasha Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191110025032.827-33-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=chenxiang66@hisilicon.com \
    --cc=dan.j.williams@intel.com \
    --cc=emilne@redhat.com \
    --cc=hare@suse.com \
    --cc=hch@lst.de \
    --cc=john.garry@huawei.com \
    --cc=jthumshirn@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=stable@vger.kernel.org \
    --cc=thenzl@redhat.com \
    --cc=yanaijie@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.