On 1/18/23 17:18, Jens Axboe wrote:
On 1/18/23 3:54?PM, Bart Van Assche wrote:
Hi Jens,
Several embedded storage controllers need support for DMA segments that are
smaller than the size of one virtual memory page. Hence this patch series.
Please consider this patch series for the next merge window.
Before any real reviews are done, I have to ask "why?". This is pretty
hairy code in the middle of the fast path for some obscure controller.
Why would anyone ship that with > 4k page sizes rather than ship it with
a controller that is sane?
Hi Jens,
The new config variable CONFIG_BLK_SUB_PAGE_SEGMENTS has been introduced
to make sure that the hot path is *not* affected if that config variable
is disabled.
Regarding the question "why": the Google Android team would like to
improve performance by switching from 4 KiB pages to 16 KiB pages. One
of the widely used UFS controllers (Exynos) has a maximum segment size
of 4 KiB. Hence this patch series.
This patch series is not only useful for phones but also for Tesla cars
since Tesla cars use an Exynos UFS controller.
A contributor to the MMC driver told me that this patch series would
allow to simplify the MMC driver significantly (I have not yet double
checked this).
Bart.