On Mon, Aug 31, 2020 at 9:48 AM Sagi Grimberg <sagi@xxxxxxxxxxx> wrote: > > > >> Currently we allocate rx buffers in a single contiguous buffers > >> for headers (iser and iscsi) and data trailer. This means > >> that most likely the data starting offset is aligned to 76 > >> bytes (size of both headers). > >> > >> This worked fine for years, but at some point this broke. > >> To fix this, we should avoid passing unaligned buffers for > >> I/O. > > > > That is a bit vauge - what suddenly broke it? > > Somewhere around the multipage bvec work that Ming did. The issue was > that brd assumed a 512 aligned page vector. IIRC the discussion settled > that the block layer expects a 512B aligned buffer(s). I will second that block layers expect "at least" 512B aligned buffers. Many of them get less efficient when bvecs are not full, 4K aligned, pages. > > Adding Ming to the thread. -- Doug Dumitru EasyCo LLC