Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp2235901pxb; Tue, 23 Feb 2021 01:52:38 -0800 (PST) X-Google-Smtp-Source: ABdhPJyoOO8pwFs39GO9TKnUjMpOcq1DmVJR+dKtgs4f0WK8EnDrJqK20CfvhpOl+IHfUu3DEeH6 X-Received: by 2002:a17:906:503:: with SMTP id j3mr24852923eja.172.1614073958544; Tue, 23 Feb 2021 01:52:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614073958; cv=none; d=google.com; s=arc-20160816; b=lLgcMjALUAWNq0CyL0gyZBELXZE4t+m4RQGgxXxh5arfFfgysH+OlLBh+ilK/hWOWa ATSd/29RyCj1/qDLeO71pVPzq+G+JJGECTJe1MrRyh5u0n7j2dDtipZ1xzQRvTSp6AbY KW97QObcuDYar0L50/x+GsO1qJ1c7FC7SXekmhbs2DOw4zB0G000NJ+dgoa+IE4v22/m 0CmJzXmU6fWGvzgXfaUlS1lMl//CgmNnNoFmN78PVwK72QJWYEK+GCf4hGv2/m6ZoHoA s9iTLuBTY7rl9MozKNAwQPn0Gnqa4f2drSjEtEKr/41DrroCgXwsZXSmDFA2SAsSFNcS DziQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:dlp-filter:cms-type :content-transfer-encoding:date:message-id:in-reply-to:cc:to:from :sender:reply-to:subject:mime-version:dkim-signature:dkim-filter; bh=d0gOIuQUPCQxZRJQkKwdEW+V7cqTiJ3TqS4Et/IoMh0=; b=bBiEwPIj3A7WluGGcvSOzfVaI9Gz6WGgEez6vhHs1zxRnDzrExUdlnBCkg88q/zNvv 50hBHaxWkjbiG17kLK+hBbL6Re2izDglHR8dHmOnotRca6MMEoVjO99Th9v+uIZ+o+qY 1yWd0PE9/Vlx2iVxr2g9iCuLRnFPZ7WP7Wokgap0IPhomG795JMW+U2SYHCQal3zkkKw pq7zWT62rqXqgU02hei0ypNXsDH1mO3ZfMEyyR4tAE/dqj+tLRxsk2fzFbbDly229oo6 3cQDS2JsupaClySxAz4rTmeI+rgcocr5JL5LXXQFlJILtv4Vqcy98qZl94oggKrd9dkm OkBQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=N4bhozeu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id gs11si13676146ejb.429.2021.02.23.01.51.56; Tue, 23 Feb 2021 01:52:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=N4bhozeu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231808AbhBWI4f (ORCPT + 99 others); Tue, 23 Feb 2021 03:56:35 -0500 Received: from mailout3.samsung.com ([203.254.224.33]:12628 "EHLO mailout3.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231751AbhBWI4b (ORCPT ); Tue, 23 Feb 2021 03:56:31 -0500 Received: from epcas2p3.samsung.com (unknown [182.195.41.55]) by mailout3.samsung.com (KnoxPortal) with ESMTP id 20210223085547epoutp03a08dddfbf613ef6b0366c3c00ddc5a58~mVJxvQfVf0299802998epoutp035 for ; Tue, 23 Feb 2021 08:55:47 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout3.samsung.com 20210223085547epoutp03a08dddfbf613ef6b0366c3c00ddc5a58~mVJxvQfVf0299802998epoutp035 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1614070547; bh=d0gOIuQUPCQxZRJQkKwdEW+V7cqTiJ3TqS4Et/IoMh0=; h=Subject:Reply-To:From:To:CC:In-Reply-To:Date:References:From; b=N4bhozeuwzxqXeZW26u1n+/z4gTOoWrYFW/aS9gqEu7fUOjuxp6R28MnzBgTw3NCR X7LHb9/zA4Gre7WqqU+UdLbjXLAXG/8qSZ9Og5MmjgdA9RSAI1nLf2GgCHuTYG0Pff 05n8G8ubetl/nxGwAfdboUkfNEBdnV/sMIal+zO0= Received: from epsnrtp4.localdomain (unknown [182.195.42.165]) by epcas2p3.samsung.com (KnoxPortal) with ESMTP id 20210223085546epcas2p33b74d382f135e0ff450998680399d4df~mVJw-Zg292016520165epcas2p3_; Tue, 23 Feb 2021 08:55:46 +0000 (GMT) Received: from epsmges2p3.samsung.com (unknown [182.195.40.190]) by epsnrtp4.localdomain (Postfix) with ESMTP id 4DlCZ82xzRz4x9QB; Tue, 23 Feb 2021 08:55:44 +0000 (GMT) X-AuditID: b6c32a47-b97ff7000000148e-f9-6034c31019bf Received: from epcas2p1.samsung.com ( [182.195.41.53]) by epsmges2p3.samsung.com (Symantec Messaging Gateway) with SMTP id C6.4F.05262.013C4306; Tue, 23 Feb 2021 17:55:44 +0900 (KST) Mime-Version: 1.0 Subject: RE: RE: RE: RE: [PATCH v22 2/4] scsi: ufs: L2P map management for HPB read Reply-To: daejun7.park@samsung.com Sender: Daejun Park From: Daejun Park To: Avri Altman , Daejun Park , Greg KH , "jejb@linux.ibm.com" , "martin.petersen@oracle.com" , "asutoshd@codeaurora.org" , "stanley.chu@mediatek.com" , "cang@codeaurora.org" , "bvanassche@acm.org" , "huobean@gmail.com" , ALIM AKHTAR , Javier Gonzalez CC: "linux-scsi@vger.kernel.org" , "linux-kernel@vger.kernel.org" , JinHwan Park , SEUNGUK SHIN , Sung-Jun Park , yongmyung lee , Jinyoung CHOI , BoRam Shin X-Priority: 3 X-Content-Kind-Code: NORMAL In-Reply-To: X-CPGS-Detection: blocking_info_exchange X-Drm-Type: N,general X-Msg-Generator: Mail X-Msg-Type: PERSONAL X-Reply-Demand: N Message-ID: <20210223085543epcms2p32abd20cbc9dda715eab38a8a382d9057@epcms2p3> Date: Tue, 23 Feb 2021 17:55:43 +0900 X-CMS-MailID: 20210223085543epcms2p32abd20cbc9dda715eab38a8a382d9057 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" X-Sendblock-Type: AUTO_CONFIDENTIAL X-CPGSPASS: Y X-CPGSPASS: Y CMS-TYPE: 102P X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrEJsWRmVeSWpSXmKPExsWy7bCmqa7AYZMEg1Vn2CwezNvGZrG37QS7 xcufV9ksDt9+x24x7cNPZotP65exWrw8pGmx6kG4RfPi9WwWc842MFn09m9ls3h85zO7xaIb 25gs+v+1s1hc3jWHzaL7+g42i+XH/zFZ3N7CZbF0601Gi87pa1gsFi3czeIg6nH5irfH5b5e Jo+ds+6ye0xYdIDRY//cNeweLSf3s3h8fHqLxaNvyypGj8+b5DzaD3QzBXBF5dhkpCampBYp pOYl56dk5qXbKnkHxzvHm5oZGOoaWlqYKynkJeam2iq5+AToumXmAH2opFCWmFMKFApILC5W 0rezKcovLUlVyMgvLrFVSi1IySkwNCzQK07MLS7NS9dLzs+1MjQwMDIFqkzIyTgw1aXgEW/F y7fP2RoYz3J2MXJySAiYSJw8to6xi5GLQ0hgB6PE6Ql/mLsYOTh4BQQl/u4QBjGFBUIldl3T AykXElCSWH9xFjuILSygJ3Hr4RpGEJtNQEdi+on77CBjRARWsEhc/HWJDcRhFvjFJHHi8QdG iGW8EjPan7JA2NIS25dvBYtzCsRKnFm6lAkiriHxY1kvM4QtKnFz9Vt2GPv9sflQc0QkWu+d haoRlHjwczdUXFLi2O4PUHPqJbbe+QX2mIRAD6PE4Z23WCES+hLXOjaCHcEr4Ctxv/UuWDOL gKrE9VVXoJpdJPZ3LQOrZxaQl9j+dg44UJgFNCXW79IHMSUElCWO3GKBeath4292dDazAJ9E x+G/cPEd855ATVeTWPdzPdMERuVZiJCehWTXLIRdCxiZVzGKpRYU56anFhsVGCPH7SZGcGLX ct/BOOPtB71DjEwcjIcYJTiYlUR42e4aJQjxpiRWVqUW5ccXleakFh9iNAX6ciKzlGhyPjC3 5JXEG5oamZkZWJpamJoZWSiJ8xYbPIgXEkhPLEnNTk0tSC2C6WPi4JRqYJrVeuN7/UnDQp79 Z5vuPc9wknnp4iakXm97Ik66KV28KKRnjuKO3wV6hvl3pOwe6dSZRE2cc0N6zSXBUo01Voky S9T5rSRX9Z9ZpKfIV1l8L66IfdeGylDmOoXJdkzzlXIeTm4JYpXe8sZVjinAVEOI7722y9/W k2eSF/EcX+Em+GS2QbTXj2PpCS//ejDel5boWrr2femsNaanwrZEZS+IbW3ddL6A98r1aXKd DE3JZ5MEH0Sz9vxaV3JiQoHoe5brKz3+zLmadYPhnr/B+x93vxUfUfa6cdB+oY/GlremQk3L xXR2lB/ZeyXfVsIsuszLadYMk8Aau2DdzoYqz6bXa28YXHnidCCynydLiaU4I9FQi7moOBEA QZfrAnUEAAA= DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20210222092907epcms2p307f3c4116349ebde6eed05c767287449 References: <20210223080043epcms2p83f813841174ade50ef97481b3f4cdef7@epcms2p8> <20210222092907epcms2p307f3c4116349ebde6eed05c767287449@epcms2p3> <20210222093050epcms2p6506a476c777785c6212cc80fc6158714@epcms2p6> <20210223083136epcms2p89ada047f0da1fb700ace8b4e3e396697@epcms2p8> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > > > > +/* > > > > + * This function will parse recommended active subregion information in > > > > sense > > > > + * data field of response UPIU with SAM_STAT_GOOD state. > > > > + */ > > > > +void ufshpb_rsp_upiu(struct ufs_hba *hba, struct ufshcd_lrb *lrbp) > > > > +{ > > > > + struct ufshpb_lu *hpb; > > > > + struct scsi_device *sdev; > > > > + struct utp_hpb_rsp *rsp_field = &lrbp->ucd_rsp_ptr->hr; > > > > + int data_seg_len; > > > > + bool found = false; > > > > + > > > > + __shost_for_each_device(sdev, hba->host) { > > > > + hpb = ufshpb_get_hpb_data(sdev); > > > > + > > > > + if (!hpb) > > > > + continue; > > > > + > > > > + if (rsp_field->lun == hpb->lun) { > > > > + found = true; > > > > + break; > > > This piece of code looks awkward, although it is probably working. > > > Why not just having a reference to the hpb luns, e.g. something like: > > > struct ufshpb_lu *hpb_luns[8] in struct ufs_hba. > > > Less elegant - but much more effective than iterating the scsi host on every > > completion interrupt. > > > > How about checking (cmd->lun == rsp->lun) before the iteration? > > Major case will be have same lun. And, it is hard to add struct ufshpb_lu > > *hpb_luns[128] > > in struct ufs_hba, because LUN can be upto 127. > Oh - yes, 8 is for write booster. > OK. Whatever you think. Then, I want to keep this code with adding code that checking same LUN for fast path. > However, I think there can be up to 32 regular luns, > meaning UFS_UPIU_MAX_UNIT_NUM_ID need to be fixed as well. OK, it can be fixed another patch. Thanks, Daejun