On Thu, Jul 29, 2021 at 05:54:56AM +0200, Andreas Gruenbacher wrote: > > - /* inline data must start page aligned in the file */ > > - if (WARN_ON_ONCE(offset_in_page(iomap->offset))) > > - return -EIO; > > Maybe add a WARN_ON_ONCE(size > PAGE_SIZE - poff) here? Sure! > > if (WARN_ON_ONCE(size > PAGE_SIZE - > > offset_in_page(iomap->inline_data))) > > return -EIO; > > if (WARN_ON_ONCE(size > iomap->length)) > > return -EIO; > > - if (WARN_ON_ONCE(page_has_private(page))) > > - return -EIO; > > + if (poff > 0) > > + iomap_page_create(inode, page); > > > > - addr = kmap_atomic(page); > > + addr = kmap_atomic(page) + poff; > > Maybe kmap_local_page? Heh, I do that later when I convert to folios (there is no kmap_atomic_folio(), only kmap_local_folio()). But I can throw that in here too.