Re: [PATCH] scsi: ufshpb: Opt out pre-reqs from HPB2.0 flows

From: Bart Van Assche
Date: Fri Oct 29 2021 - 12:10:15 EST


On 10/29/21 8:57 AM, Avri Altman wrote:
HPB allows its read commands to carry the physical addresses along with
the LBAs, thus allowing less internal L2P-table switches in the device.
HPB1.0 allowed a single LBA, while HPB2.0 increases this capacity up to
255 blocks.

Carrying more than a single record, the read operation is no longer
purly of type "read" per-se, but some sort of a "hybrid" command -
^^^^^
purely?
writing the physical address to the device and reading the required
payload.

The HPB JEDEC spec came-up with a dual-command for that operation:
HPB-WRITE-BUFFER (0x2) to write the physical addresses to device, and
HPB-READ to read the payload.

Alas, the current HPB driver design - a single-scsi-LLD-module, has no
other alternative but to spawn the READ10 command into 2 commands:
HPB-WRITE-BUFFER and HPB-READ.
This causes a grat deal of aggrevation to the block layer guys, up to a
point, in which that they were willing to revert the entire HPB driver,
regardless of the huge amount of corporate effort already inversted in
it.

Therefore, remove the pre-req API for now, as a matter of urgency to get
it done before the closing of the merge window.

Anyway:

Reviewed-by: Bart Van Assche <bvanassche@xxxxxxx>