On Thu, Aug 10, 2023 at 06:00:12PM +0200, Richard Weinberger wrote:
Currently sg_virt() is used while filling the sg list from LEB data. This approach cannot work with highmem.
Refactor ubi_eba_read_leb_sg() to use kmap_atomic() for sg list access. Since kmap_atomic() disables preempt a bounce buffer is needed. kmap_local_page() is not used to allow easy backporting of this patch to older kernels.
The followup patches in this series will switch to kmap_sg() and we can remove our own helper and the bounce buffer.
Please just use kmap_local and avoid the bounce buffering.