Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp541540ybl; Wed, 11 Dec 2019 03:46:10 -0800 (PST) X-Google-Smtp-Source: APXvYqxEROJLp8N1WSnwYF3nMlRln5SAn/8OPwTy7zVLJV5SMoH8J6doFCktzsDgpFu2H1TsvNyy X-Received: by 2002:aca:75d0:: with SMTP id q199mr2431212oic.121.1576064770868; Wed, 11 Dec 2019 03:46:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576064770; cv=none; d=google.com; s=arc-20160816; b=fp6S/xmjF/INr7yqhNSnMHR735W4USE9DLgIN52qbi0VAd0M98fCVPeu3Qj0MuxBIB 2IUVIf0WnzI1eS8181HLUx33Yy3G7jjrbEVQ0TR1ZrFfAuBwG9zjP/vczBD7iQR30TEz KWfn+vQAvdE64pAN9ov+VpNVnAoVp+RIrbnw3PW6aSioUhqtKXifOwuHK1SYIVM93N8D ESxKex4k1opdzwpHvx4zc1abWR2P1qY/9IbD7dBvf8P6Z3/5gPwJSJrtWYqH+FdluEvX lgZRlLo5pUgBvo6UvuBKOWgWvrH6zhfvrj9OUNskBPJxGqUq3IMP2eRHRRRjlal9xlEJ Se0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:feedback-id:user-agent:message-id :references:in-reply-to:subject:cc:to:from:date :content-transfer-encoding:mime-version:dkim-signature :dkim-signature; bh=Y/HGiga9/H68UNiCT+GquQDGDjNmrZz3R1wtJx7yzPk=; b=Ax3sIG4aAMeLF75FVKtF8HJ9kIXxBa5IkHENQU/3ejfkKwcADioqeLpwFnWfo/ClW1 amD9Tg8kKZVwV6kwE0OmtoGM0soaTL5lJAn9KbDbxqT5l1FMfnyHjtf80C/7Fi2Kv/1I nGcBhQi9YhOCIR/L1hwJyQgbvdTdA5wsaUrUiGkXJysaTRIAU/JQPlUIdJq2TYyuW3c7 rAmzCUkKbuxNhpydMos+5zg6mok4txGG+V1arVgsCy4PrIeF33qSCCLADXGqU5lejPra poaHlinp+TmuBr2EHZfW5pR4+aU+cD+JPFBhBSZqMOgBOju4aQQsrRVQpJuYHvb02xrW axEg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=zsmsymrwgfyinv5wlfyidntwsjeeldzt header.b=URraAc9u; dkim=pass header.i=@amazonses.com header.s=gdwg2y3kokkkj5a55z2ilkup5wp5hhxx header.b=TD3NrOgx; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i124si952240oif.214.2019.12.11.03.45.58; Wed, 11 Dec 2019 03:46:10 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@codeaurora.org header.s=zsmsymrwgfyinv5wlfyidntwsjeeldzt header.b=URraAc9u; dkim=pass header.i=@amazonses.com header.s=gdwg2y3kokkkj5a55z2ilkup5wp5hhxx header.b=TD3NrOgx; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729076AbfLKLoK (ORCPT + 99 others); Wed, 11 Dec 2019 06:44:10 -0500 Received: from a27-56.smtp-out.us-west-2.amazonses.com ([54.240.27.56]:39350 "EHLO a27-56.smtp-out.us-west-2.amazonses.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727365AbfLKLoK (ORCPT ); Wed, 11 Dec 2019 06:44:10 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=zsmsymrwgfyinv5wlfyidntwsjeeldzt; d=codeaurora.org; t=1576064648; h=MIME-Version:Content-Type:Content-Transfer-Encoding:Date:From:To:Cc:Subject:In-Reply-To:References:Message-ID; bh=SsfCfJa0hJtH6mmOozBYFGjGWd8Fea0xhWkIg2GJsis=; b=URraAc9uX8ZPiqOn3n52TP2VHjePzZH6jysNOeabwzYeMsCIPDJIQ5+5g8+/o2CS slG674NohNzl7nuGXzelwviE/7weBMfDbKc1AqF+CkBWvWgmgxSCmdPBVoREIus+1bi BbprrExf09+a0j5R4k3TcoUbXK2Z2qzuYWVBzJ+w= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; s=gdwg2y3kokkkj5a55z2ilkup5wp5hhxx; d=amazonses.com; t=1576064648; h=MIME-Version:Content-Type:Content-Transfer-Encoding:Date:From:To:Cc:Subject:In-Reply-To:References:Message-ID:Feedback-ID; bh=SsfCfJa0hJtH6mmOozBYFGjGWd8Fea0xhWkIg2GJsis=; b=TD3NrOgx7l6OCs/F7DRd/mNVcJon3xsI6P2OpEz073fSjJK71EBJMgbAAFYWRiNU /Qu+U2EdCpZskakkSa6dyvwM8qTqHvR1lKE6I7zJv4X320RDeBYMxrK9O0YFu61CwwM /vssd4WXORRj/IaK4RMVrZDB63iMey9uAxcXDBJs= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-caf-mail-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=2.0 tests=ALL_TRUSTED autolearn=unavailable autolearn_force=no version=3.4.0 MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Wed, 11 Dec 2019 11:44:08 +0000 From: cang@codeaurora.org To: Avri Altman Cc: asutoshd@codeaurora.org, nguyenb@codeaurora.org, rnayak@codeaurora.org, linux-scsi@vger.kernel.org, kernel-team@android.com, saravanak@google.com, salyzyn@google.com, Alim Akhtar , Pedro Sousa , "James E.J. Bottomley" , "Martin K. Petersen" , Stanley Chu , Bean Huo , Venkat Gopalakrishnan , Tomas Winkler , open list Subject: Re: [PATCH v2 1/3] scsi: ufs: Put SCSI host after remove it In-Reply-To: References: <1576054123-16417-1-git-send-email-cang@codeaurora.org> <0101016ef4259a7c-76bdf010-88b1-4309-ba24-8c874734184e-000000@us-west-2.amazonses.com> <0101016ef4a3e5f5-915372c8-5e1e-4db5-b3da-f97f7ca963e4-000000@us-west-2.amazonses.com> Message-ID: <0101016ef4c605e5-295b1cc0-19d7-41e8-be2e-5d026f72dcec-000000@us-west-2.amazonses.com> X-Sender: cang@codeaurora.org User-Agent: Roundcube Webmail/1.3.9 X-SES-Outgoing: 2019.12.11-54.240.27.56 Feedback-ID: 1.us-west-2.CZuq2qbDmUIuT3qdvXlRHZZCpfZqZ4GtG9v3VKgRyF0=:AmazonSES Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2019-12-11 19:22, Avri Altman wrote: >> >> >> On 2019-12-11 18:37, Avri Altman wrote: >> >> >> >> In ufshcd_remove(), after SCSI host is removed, put it once so that >> >> its resources can be released. >> >> >> >> Signed-off-by: Can Guo >> > >> > This is not really part of this patchset, is it? >> > >> >> Hi Avri, >> >> I put this change in the same patchset due to #1. The main patch has >> dependency on it #2. Consider a scenario where platform driver is also >> compiled >> as a module, say ufs_qcom.ko. >> In this case, we have two modules, ufs-qcom.ko and ufs-bsg.ko. If >> do insmod >> ufs-qcom.ko >> then rmmod ufs-qcom.ko and do insmod ufs-qcom.ko again, without >> this >> change, because scsi >> host was not release, the new scsi host will have a different >> host number, >> meaning >> hba->host->host_no will be 1, but not 0. Now if do insmod >> ufs-bsg.ko now, >> the ufs-bsg dev >> created in /dev/bsg/ will be ufs-bsg1, but not ufs-bsg0. If keep >> trying these >> operations, >> the ufs-bsg device's name will be messed up. This change make >> sure after ufs- >> qcom.ko is removed >> and installed back, its hba->host->host_no stays 0, so that >> ufs-bsg device >> name stays same. > Looks like we needed to manage the ufs-bsg nodes using an IDA, instead > of host_no? > > Marking one ufs-bsg dev with host_no still has its advantage. If we have more than one hba host, we can find the right ufs-bsgX dev by reading the sg/sd/bsg device's host->host_unique_id (through SCSI_IOCTL_GET_IDLUN for example). But If ufs-bsg has its own ID, we will lost this "mapping". Thanks, Can Guo. >> >> Thanks, >> >> Can Guo. >> >> >> --- >> >> drivers/scsi/ufs/ufshcd.c | 1 + >> >> 1 file changed, 1 insertion(+) >> >> >> >> diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c >> >> index b5966fa..a86b0fd 100644 >> >> --- a/drivers/scsi/ufs/ufshcd.c >> >> +++ b/drivers/scsi/ufs/ufshcd.c >> >> @@ -8251,6 +8251,7 @@ void ufshcd_remove(struct ufs_hba *hba) >> >> ufs_bsg_remove(hba); >> >> ufs_sysfs_remove_nodes(hba->dev); >> >> scsi_remove_host(hba->host); >> >> + scsi_host_put(hba->host); >> >> /* disable interrupts */ >> >> ufshcd_disable_intr(hba, hba->intr_mask); >> >> ufshcd_hba_stop(hba, true); >> >> -- >> >> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora >> >> Forum, a Linux Foundation Collaborative Project