From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753832AbeAQPyt (ORCPT ); Wed, 17 Jan 2018 10:54:49 -0500 Received: from szxga06-in.huawei.com ([45.249.212.32]:38187 "EHLO huawei.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1753690AbeAQPyn (ORCPT ); Wed, 17 Jan 2018 10:54:43 -0500 From: John Garry To: , , , CC: , , , , Xiang Chen , John Garry Subject: [PATCH 3/3] scsi: hisi_sas: fix a bug in hisi_sas_dev_gone() Date: Thu, 18 Jan 2018 00:46:54 +0800 Message-ID: <1516207614-159721-4-git-send-email-john.garry@huawei.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1516207614-159721-1-git-send-email-john.garry@huawei.com> References: <1516207614-159721-1-git-send-email-john.garry@huawei.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.67.212.75] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Xiang Chen When device gone, NULL pointer can be accessed in free_device callback if during SAS controller reset as we clear structure sas_dev prior. Actually we can only set dev_type as SAS_PHY_UNUSED and not clear structure sas_dev as all the members of structure sas_dev will be re-initialized after device found. Signed-off-by: Xiang Chen Signed-off-by: John Garry --- drivers/scsi/hisi_sas/hisi_sas_main.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/scsi/hisi_sas/hisi_sas_main.c b/drivers/scsi/hisi_sas/hisi_sas_main.c index 791462d..2d4dbed 100644 --- a/drivers/scsi/hisi_sas/hisi_sas_main.c +++ b/drivers/scsi/hisi_sas/hisi_sas_main.c @@ -796,7 +796,6 @@ static void hisi_sas_dev_gone(struct domain_device *device) hisi_hba->hw->clear_itct(hisi_hba, sas_dev); device->lldd_dev = NULL; - memset(sas_dev, 0, sizeof(*sas_dev)); } if (hisi_hba->hw->free_device) -- 1.9.1