All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <gregkh@linuxfoundation.org>
To: Avri Altman <avri.altman@wdc.com>
Cc: "James E . J . Bottomley" <jejb@linux.vnet.ibm.com>,
	"Martin K . Petersen" <martin.petersen@oracle.com>,
	linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org,
	Bart Van Assche <bvanassche@acm.org>,
	yongmyung lee <ymhungry.lee@samsung.com>,
	Daejun Park <daejun7.park@samsung.com>,
	alim.akhtar@samsung.com, asutoshd@codeaurora.org,
	Zang Leigang <zangleigang@hisilicon.com>,
	Avi Shchislowski <avi.shchislowski@wdc.com>,
	Bean Huo <beanhuo@micron.com>,
	cang@codeaurora.org, stanley.chu@mediatek.com
Subject: Re: [PATCH v2 9/9] scsi: ufshpb: Make host mode parameters configurable
Date: Tue, 2 Feb 2021 12:17:07 +0100	[thread overview]
Message-ID: <YBk0s1Y4DOXuup+q@kroah.com> (raw)
In-Reply-To: <20210202083007.104050-10-avri.altman@wdc.com>

On Tue, Feb 02, 2021 at 10:30:07AM +0200, Avri Altman wrote:
> We can make use of this commit, to elaborate some more of the host
> control mode logic, explaining what role play each and every variable:
> 
>  - activation_thld - In host control mode, reads are the major source of
>     activation trials.  once this threshold hs met, the region is added
>     to the "to-be-activated" list.  Since we reset the read counter upon
>     write, this include sending a rb command updating the region ppn as
>     well.
> 
> - normalization_factor - We think of the regions as "buckets".  Those
>     buckets are being filled with reads, and emptied on write.  We use
>     entries_per_srgn - the amount of blocks in a subregion as our bucket
>     size.  This applies because HPB1.0 only concern a single-block
>     reads.  Once the bucket size is crossed, we trigger a normalization
>     work - not only to avoid overflow, but mainly because we want to
>     keep those counters normalized, as we are using those reads as a
>     comparative score, to make various decisions. The normalization is
>     dividing (shift right) the read counter by the normalization_factor.
>     If during consecutive normalizations an active region has exhaust
>     its reads - inactivate it.
> 
> - eviction_thld_enter - Region deactivation is often due to the fact
>     that eviction took place: a region become active on the expense of
>     another. This is happening when the max-active-regions limit has
>     crossed. In host mode, eviction is considered an extreme measure.
>     We want to verify that the entering region has enough reads, and the
>     exiting region has much less reads.  eviction_thld_enter is the min
>     reads that a region must have in order to be considered as a
>     candidate to evict other region.
> 
> - eviction_thld_exit - same as above for the exiting region.  A region
>     is consider to be a candidate to be evicted, only if it has less
>     reads than eviction_thld_exit.
> 
>  - read_timeout_ms - In order not to hang on to “cold” regions, we
>     shall inactivate a region that has no READ access for a predefined
>     amount of time - read_timeout_ms. If read_timeout_ms has expired,
>     and the region is dirty - it is less likely that we can make any
>     use of HPB-READing it.  So we inactivate it.  Still, deactivation
>     has its overhead, and we may still benefit from HPB-READing this
>     region if it is clean - see read_timeout_expiries.
> 
> - read_timeout_expiries - if the region read timeout has expired, but
>     the region is clean, just re-wind its timer for another spin.  Do
>     that as long as it is clean and did not exhaust its
>     read_timeout_expiries threshold.
> 
> - timeout_polling_interval_ms - the frequency in which the delayed
>     worker that checks the read_timeouts is awaken.

You create new sysfs files, but fail to document them in
Documentation/ABI/ which is where the above information needs to go :(

thanks,

greg k-h

  reply	other threads:[~2021-02-02 11:17 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-02  8:29 [PATCH v2 0/9] Add Host control mode to HPB Avri Altman
2021-02-02  8:29 ` [PATCH v2 1/9] scsi: ufshpb: Cache HPB Control mode on init Avri Altman
2021-02-02  8:30 ` [PATCH v2 2/9] scsi: ufshpb: Add host control mode support to rsp_upiu Avri Altman
2021-02-02 11:13   ` Greg KH
2021-02-02 11:24     ` Avri Altman
2021-02-02 11:51       ` Greg KH
2021-02-02 11:54         ` Avri Altman
2021-02-02  8:30 ` [PATCH v2 3/9] scsi: ufshpb: Add region's reads counter Avri Altman
2021-02-02 11:15   ` Greg KH
2021-02-02 11:23     ` Avri Altman
2021-02-02 11:51       ` Greg KH
2021-02-02 11:16   ` Greg KH
2021-02-02 11:22     ` Avri Altman
2021-02-02  8:30 ` [PATCH v2 4/9] scsi: ufshpb: Make eviction depends on region's reads Avri Altman
2021-02-02  8:30 ` [PATCH v2 5/9] scsi: ufshpb: Region inactivation in host mode Avri Altman
2021-02-02  8:30 ` [PATCH v2 6/9] scsi: ufshpb: Add hpb dev reset response Avri Altman
2021-02-08  6:34   ` Can Guo
2021-02-08  7:50     ` Avri Altman
2021-02-02  8:30 ` [PATCH v2 7/9] scsi: ufshpb: Add "Cold" regions timer Avri Altman
2021-02-02  8:30 ` [PATCH v2 8/9] scsi: ufshpb: Add support for host control mode Avri Altman
2021-02-02  8:30 ` [PATCH v2 9/9] scsi: ufshpb: Make host mode parameters configurable Avri Altman
2021-02-02 11:17   ` Greg KH [this message]
2021-02-02 11:21     ` Avri Altman
     [not found]     ` <CGME20210202112157epcas2p3b04677e1380e0fa2c3f38217dfcba8bf@epcms2p8>
2021-02-04  0:48       ` Daejun Park
2021-02-02 11:18   ` Greg KH
2021-02-02 11:20     ` Avri Altman
2021-02-05 11:36 ` [PATCH v2 0/9] Add Host control mode to HPB Bean Huo
2021-02-05 11:43   ` Bean Huo
2021-02-07 14:07     ` Avri Altman

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=YBk0s1Y4DOXuup+q@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=alim.akhtar@samsung.com \
    --cc=asutoshd@codeaurora.org \
    --cc=avi.shchislowski@wdc.com \
    --cc=avri.altman@wdc.com \
    --cc=beanhuo@micron.com \
    --cc=bvanassche@acm.org \
    --cc=cang@codeaurora.org \
    --cc=daejun7.park@samsung.com \
    --cc=jejb@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=stanley.chu@mediatek.com \
    --cc=ymhungry.lee@samsung.com \
    --cc=zangleigang@hisilicon.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.