Re: [PATCH] scsi: ufs: revert HPB support

Bart Van Assche
2021-10-25T18:40:02Z

On 10/25/21 11:26 AM, Greg Kroah-Hartman wrote:
> Is there a link to where the HPB developer said they would look into
> this? Perhaps until that happens this should be marked as BROKEN?

Hi Greg,

Daejun wrote the following on Thursday: "I will find out how to make
the HPB code without blk_insert_cloned_request() API." Unfortunately
that email was sent as MIME-encoded so it was only received by the
people Cc-ed on that email and has not been archived by any of the
websites that archives linux-scsi or linux-block emails. The email
that I received is available below. I think it is fine to make this
email public given the presence of two mailing lists in the Cc-list.

Thanks,

Bart.

-------- Forwarded Message --------
Subject: Re: please revert the UFS HPB support
Date: Fri, 22 Oct 2021 07:41:43 +0900
From: 박대준 <pdaejun@gmail.com>
To: Bart Van Assche <bvanassche@acm.org>
CC: Christoph Hellwig <hch@lst.de>, Jens Axboe <axboe@kernel.dk>, martin.petersen@oracle.com, linux-scsi@vger.kernel.org, linux-block@vger.kernel.org, Daejun Park <daejun7.park@samsung.com>, Jaegeuk Kim <jaegeuk@kernel.org>

Hi Bart,

2021년 10월 22일 (금) 오전 1:23, Bart Van Assche <bvanassche@acm.org <mailto:bvanassche@acm.org>>님이 작성:

On 10/21/21 8:17 AM, Christoph Hellwig wrote:
> On Thu, Oct 21, 2021 at 05:15:20PM +0200, Christoph Hellwig wrote:
>>>> I just noticed the UFS HPB support landed in 5.15, and just as
>>>> before it is completely broken by allocating another request on
>>>> the same device and then reinserting it in the queue. It is bad
>>>> enough that we have to live with blk_insert_cloned_request for
>>>> dm-mpath, but this is too big of an API abuse to make it into
>>>> a release. We need to drop this code ASAP, and I can prepare
>>>> a patch for that.
>>>
>>> That sounds awful, do you have a link to the offending commit(s)?
>>
>> I'll need to look for it, busy in calls right now, but just grep for
>> blk_insert_cloned_request.
>
> Might as well finish the git blame:
>
> commit 41d8a9333cc96f5ad4dd7a52786585338257d9f1
> Author: Daejun Park <daejun7.park@samsung.com <mailto:daejun7.park@samsung.com>>
> Date: Mon Jul 12 18:00:25 2021 +0900
>
> scsi: ufs: ufshpb: Add HPB 2.0 support
>
> Version 2.0 of HBP supports reads of varying sizes from 4KB to 1MB.
>
> A read operation <= 32KB is supported as single HPB read. A read between
> 36KB and 1MB is supported by a combination of write buffer command and HPB
> read command to deliver more PPN. The write buffer commands may not be
> issued immediately due to busy tags. To use HPB read more aggressively, the
> driver can requeue the write buffer command. The requeue threshold is
> implemented as timeout and can be modified with requeue_timeout_ms entry in
> sysfs.

(+Daejun)

Daejun, can the HPB code be reworked such that it does not use
blk_insert_cloned_request()? I'm concerned that if the HPB code is not
reworked that it will be removed from the upstream kernel.

Thanks,

Bart.

I will find out how to make the HPB code without blk_insert_cloned_request() API.

Thanks,
Daejun