On Fri, Sep 10, 2021 at 12:04 PM Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > So only 'struct iovec' and 'struct kvec' actually have the same format > and can be used interchangeably. That was very badly and confusingly phrased. They obviously don't actually have the same format, and cannot be used interchangeably in general. But the pointer arithmetic works the same for those two union members, so for that very specific case (and _only_ that) you can treat them as equivalent and use them interchangeably. Al clearly understood that, but I just wanted to clarify my phrasing for anybody else reading this thread. Please don't use the iov/kvec members interchangeably in general. Linus