Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp4370345pxb; Tue, 2 Mar 2021 13:26:07 -0800 (PST) X-Google-Smtp-Source: ABdhPJyuYIdtFYu7qDn0OEOburpY88tUJofw+1JOcc3EZIgYrBVlrgeng7cRdjw8WIhw7d5D+Ptz X-Received: by 2002:a17:906:3409:: with SMTP id c9mr22623947ejb.314.1614720366918; Tue, 02 Mar 2021 13:26:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614720366; cv=none; d=google.com; s=arc-20160816; b=dgA120TCaCGm8ygnqxhUPOwdOeCkWhz84nbr9qI4bWSkOwYJO6YbrghtKH7s4M6uk3 dcRQTwNZGMO/6pG/xJceQ7eVLlSH4Fv/LiNW3yaqg1vYdNAiOR/XnU535F6tjsxitPWo jq7vKsSx3zGrghYnwbZdOhLXpQ7fWBoaaVdl9rJUj4yi28+bp7mk0tnYE5P7d2zn3F6p 4TxdK5SQirJS4saUBR/QXCpS5NsSXAJkm8w9zc88M4GH/wHYD0fDToI+xBcygygG4dgl iCDbGH23xGB5O0fuDMV3rQTYOuCWxaj5pO4KZme+F+czo2pwoPdoz3LugcdYQPXV99W0 6Xvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:content-transfer-encoding:date :message-id:in-reply-to:cc:to:from:sender:reply-to:subject :mime-version:dkim-signature:dkim-filter; bh=7skspc6R+OWIcd2Nt3lRmZny23gnAZ+tKdkuAkGkBi8=; b=hiMqbj1fnAiyN8Sinic3DNTHAQPwR3m6OJC0QCeG2ywQ2YtTaDTUeS9DNEVSOWEsUF OJowCt7q9KtdJjJAfC0oVkpB0yCPVeEQ+eak94RVdbRDhk+RIejdrbnYZ2T/ttxyT06m si+bMqU9UpZo7rA4f+F2/kL9kc7a4XbEvrOsblJc3m67PccN+xh63dV8asI4pKgQYJKU b1MdVKWjNLI33KU6D7gOFuXY0jDptxW+3Ka3XcdTwW9s5fNW4x84NCjQanOcvHHF/fhW 9a7ZRnXZJJD5yaXpizMTMGmAh1BRsvnw6ekYbM4VzYAFXJurNUG8yHBjju+CQODL2CEq uLUQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=IN3n1geY; 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 jg5si13481102ejc.490.2021.03.02.13.25.43; Tue, 02 Mar 2021 13:26:06 -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=IN3n1geY; 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 S241926AbhCBJU6 (ORCPT + 99 others); Tue, 2 Mar 2021 04:20:58 -0500 Received: from mailout1.samsung.com ([203.254.224.24]:49189 "EHLO mailout1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1837822AbhCBI7E (ORCPT ); Tue, 2 Mar 2021 03:59:04 -0500 Received: from epcas3p3.samsung.com (unknown [182.195.41.21]) by mailout1.samsung.com (KnoxPortal) with ESMTP id 20210302082803epoutp010b1034c4f960e79660fb110f66f39c80~oeSkbvAVu0518705187epoutp01Q for ; Tue, 2 Mar 2021 08:28:03 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.samsung.com 20210302082803epoutp010b1034c4f960e79660fb110f66f39c80~oeSkbvAVu0518705187epoutp01Q DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1614673683; bh=7skspc6R+OWIcd2Nt3lRmZny23gnAZ+tKdkuAkGkBi8=; h=Subject:Reply-To:From:To:CC:In-Reply-To:Date:References:From; b=IN3n1geYYkojaEZ4HIYWQIK7tzBMPjOTiq8EX8O7GSjBbTfM0DZHLcWYQA5tKtsI6 SQ3Sl9EbllgzEra/lXHTesrefInc0Q9CugqmJO0t8bbmacQYN/GZzPhUSfx0pxS+hA Mjble6rW9uNAqtsjsld4zuwvpGQpW7xA8oExQy8I= Received: from epsnrtp1.localdomain (unknown [182.195.42.162]) by epcas3p1.samsung.com (KnoxPortal) with ESMTP id 20210302082803epcas3p16f4072a14ab5ea91ca477c183e3a9faa~oeSkCjqBo1935019350epcas3p1S; Tue, 2 Mar 2021 08:28:03 +0000 (GMT) Received: from epcpadp4 (unknown [182.195.40.18]) by epsnrtp1.localdomain (Postfix) with ESMTP id 4DqVcz2zMmz4x9QN; Tue, 2 Mar 2021 08:28:03 +0000 (GMT) Mime-Version: 1.0 Subject: RE: [PATCH v4 7/9] scsi: ufshpb: Add "Cold" regions timer Reply-To: daejun7.park@samsung.com Sender: Daejun Park From: Daejun Park To: "James E . J . Bottomley" , "Martin K . Petersen" , "linux-scsi@vger.kernel.org" , "linux-kernel@vger.kernel.org" CC: "gregkh@linuxfoundation.org" , Bart Van Assche , yongmyung lee , Daejun Park , ALIM AKHTAR , "asutoshd@codeaurora.org" , Zang Leigang , Avi Shchislowski , Bean Huo , "cang@codeaurora.org" , "stanley.chu@mediatek.com" , Avri Altman X-Priority: 3 X-Content-Kind-Code: NORMAL In-Reply-To: <20210226083300.30934-8-avri.altman@wdc.com> 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: <878274034.81614673683390.JavaMail.epsvc@epcpadp4> Date: Tue, 02 Mar 2021 17:26:28 +0900 X-CMS-MailID: 20210302082628epcms2p7d6e8a9b4b119e795ee097b3ec63ce69c Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" X-Sendblock-Type: AUTO_CONFIDENTIAL X-CPGSPASS: Y X-CPGSPASS: Y X-Hop-Count: 3 X-CMS-RootMailID: 20210226083459epcas2p1862e3e2c18208074336cc9faf14a7139 References: <20210226083300.30934-8-avri.altman@wdc.com> <20210226083300.30934-1-avri.altman@wdc.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Avri, > +static void ufshpb_read_to_handler(struct work_struct *work) > +{ > + struct delayed_work *dwork = to_delayed_work(work); > + struct ufshpb_lu *hpb; > + struct victim_select_info *lru_info; > + struct ufshpb_region *rgn; > + unsigned long flags; > + LIST_HEAD(expired_list); > + > + hpb = container_of(dwork, struct ufshpb_lu, ufshpb_read_to_work); > + > + if (test_and_set_bit(TIMEOUT_WORK_PENDING, &hpb->work_data_bits)) > + return; > + > + spin_lock_irqsave(&hpb->rgn_state_lock, flags); > + > + lru_info = &hpb->lru_info; > + > + list_for_each_entry(rgn, &lru_info->lh_lru_rgn, list_lru_rgn) { > + bool timedout = ktime_after(ktime_get(), rgn->read_timeout); > + > + if (timedout) { It is important not just to check the timeout, but how much time has passed. If the time exceeded is twice the threshold, the read_timeout_expiries value should be reduced by 2 instead of 1. > + rgn->read_timeout_expiries--; Thanks, Daejun