#
e735c007 |
| 02-Nov-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert iomap_add_to_ioend() to take a folio
We still iterate one block at a time, but now we call compound_head() less often.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Re
iomap: Convert iomap_add_to_ioend() to take a folio
We still iterate one block at a time, but now we call compound_head() less often.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
81d4782a |
| 02-Nov-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Simplify iomap_do_writepage()
Rename end_offset to end_pos and offset_into_page to poff to match the rest of the file. Simplify the handling of the last page straddling i_size by doing the E
iomap: Simplify iomap_do_writepage()
Rename end_offset to end_pos and offset_into_page to poff to match the rest of the file. Simplify the handling of the last page straddling i_size by doing the EOF check based on the byte granularity i_size instead of converting to a pgoff prematurely.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
92655036 |
| 02-Nov-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Simplify iomap_writepage_map()
Rename end_offset to end_pos and file_offset to pos to match the rest of the file. Simplify the loop by calculating nblocks up front instead of each time aroun
iomap: Simplify iomap_writepage_map()
Rename end_offset to end_pos and file_offset to pos to match the rest of the file. Simplify the loop by calculating nblocks up front instead of each time around the loop.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
6e478521 |
| 30-Jul-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap,xfs: Convert ->discard_page to ->discard_folio
XFS has the only implementation of ->discard_page today, so convert it to use folios in the same patch as converting the API.
Signed-off-by: Mat
iomap,xfs: Convert ->discard_page to ->discard_folio
XFS has the only implementation of ->discard_page today, so convert it to use folios in the same patch as converting the API.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
9c4ce08d |
| 02-May-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert iomap_write_end_inline to take a folio
This conversion is only safe because iomap only supports writes to inline data which starts at the beginning of the file.
Signed-off-by: Matthe
iomap: Convert iomap_write_end_inline to take a folio
This conversion is only safe because iomap only supports writes to inline data which starts at the beginning of the file.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
bc6123a8 |
| 02-May-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert iomap_write_begin() and iomap_write_end() to folios
These functions still only work in PAGE_SIZE chunks, but there are fewer conversions from tail to head pages as a result of this pa
iomap: Convert iomap_write_begin() and iomap_write_end() to folios
These functions still only work in PAGE_SIZE chunks, but there are fewer conversions from tail to head pages as a result of this patch.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
a25def1f |
| 05-Nov-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert __iomap_zero_iter to use a folio
The zero iterator can work in folio-sized chunks instead of page-sized chunks. This will save a lot of page cache lookups if the file is cached in la
iomap: Convert __iomap_zero_iter to use a folio
The zero iterator can work in folio-sized chunks instead of page-sized chunks. This will save a lot of page cache lookups if the file is cached in large folios.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
d454ab82 |
| 09-Dec-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Allow iomap_write_begin() to be called with the full length
In the future, we want write_begin to know the entire length of the write so that it can choose to allocate large folios. Pass the
iomap: Allow iomap_write_begin() to be called with the full length
In the future, we want write_begin to know the entire length of the write so that it can choose to allocate large folios. Pass the full length in from __iomap_zero_iter() and limit it where necessary.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
17580470 |
| 17-Dec-2021 |
Thomas Zimmermann <tzimmermann@suse.de> |
Merge drm/drm-next into drm-misc-next-fixes
Backmerging to bring drm-misc-next-fixes up to the latest state for the current release cycle.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
|
#
ea0f843a |
| 28-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert iomap_page_mkwrite to use a folio
If we write to any page in a folio, we have to mark the entire folio as dirty, and potentially COW the entire folio, because it'll all get written ba
iomap: Convert iomap_page_mkwrite to use a folio
If we write to any page in a folio, we have to mark the entire folio as dirty, and potentially COW the entire folio, because it'll all get written back as one unit.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
3aa9c659 |
| 28-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert readahead and readpage to use a folio
Handle folios of arbitrary size instead of working in PAGE_SIZE units. readahead_folio() decreases the page refcount for you, so this is not quit
iomap: Convert readahead and readpage to use a folio
Handle folios of arbitrary size instead of working in PAGE_SIZE units. readahead_folio() decreases the page refcount for you, so this is not quite a mechanical change.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
874628a2 |
| 23-Jul-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert iomap_read_inline_data to take a folio
We still only support up to a single page of inline data (at least, per call to iomap_read_inline_data()), but it can now be written into the mi
iomap: Convert iomap_read_inline_data to take a folio
We still only support up to a single page of inline data (at least, per call to iomap_read_inline_data()), but it can now be written into the middle of a folio in case we decide to allocate a 16KiB page for a file that's 8.1KiB in size.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
431c0566 |
| 28-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Use folio offsets instead of page offsets
Pass a folio around instead of the page, and make sure the offset is relative to the start of the folio instead of the start of a page. Also use size
iomap: Use folio offsets instead of page offsets
Pass a folio around instead of the page, and make sure the offset is relative to the start of the folio instead of the start of a page. Also use size_t for offset & length to make it clear that these are byte counts, and to support >2GB folios in the future.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
8ffd74e9 |
| 01-Jan-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert bio completions to use folios
Use bio_for_each_folio() to iterate over each folio in the bio instead of iterating over each page.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infrad
iomap: Convert bio completions to use folios
Use bio_for_each_folio() to iterate over each folio in the bio instead of iterating over each page.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
cd1e5afe |
| 28-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Pass the iomap_page into iomap_set_range_uptodate
All but one caller already has the iomap_page, so we can avoid getting it again.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org
iomap: Pass the iomap_page into iomap_set_range_uptodate
All but one caller already has the iomap_page, so we can avoid getting it again.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
8306a5f5 |
| 28-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Add iomap_invalidate_folio
Keep iomap_invalidatepage around as a wrapper for use in address_space operations.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christ
iomap: Add iomap_invalidate_folio
Keep iomap_invalidatepage around as a wrapper for use in address_space operations.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
39f16c83 |
| 28-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert iomap_releasepage to use a folio
This is an address_space operation, so its argument must remain as a struct page, but we can use a folio internally.
Signed-off-by: Matthew Wilcox (O
iomap: Convert iomap_releasepage to use a folio
This is an address_space operation, so its argument must remain as a struct page, but we can use a folio internally.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
c46e8324 |
| 27-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert iomap_page_release to take a folio
iomap_page_release() was also assuming that it was being passed a head page.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-
iomap: Convert iomap_page_release to take a folio
iomap_page_release() was also assuming that it was being passed a head page.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
435d44b3 |
| 27-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert iomap_page_create to take a folio
This function already assumed it was being passed a head page, so just formalise that.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
iomap: Convert iomap_page_create to take a folio
This function already assumed it was being passed a head page, so just formalise that.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
95c4cd05 |
| 27-Apr-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
iomap: Convert to_iomap_page to take a folio
The big comment about only using a head page can go away now that it takes a folio argument.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org
iomap: Convert to_iomap_page to take a folio
The big comment about only using a head page can go away now that it takes a folio argument.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Christoph Hellwig <hch@lst.de>
show more ...
|
#
d1bd0b4e |
| 03-Nov-2021 |
Matthew Wilcox (Oracle) <willy@infradead.org> |
fs/buffer: Convert __block_write_begin_int() to take a folio
There are no plans to convert buffer_head infrastructure to use large folios, but __block_write_begin_int() is called from iomap, and it'
fs/buffer: Convert __block_write_begin_int() to take a folio
There are no plans to convert buffer_head infrastructure to use large folios, but __block_write_begin_int() is called from iomap, and it's more convenient and less error-prone if we pass in a folio from iomap. It also has a nice saving of almost 200 bytes of code from removing repeated calls to compound_head().
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
show more ...
|
#
9758ff2f |
| 16-Dec-2021 |
Thomas Zimmermann <tzimmermann@suse.de> |
Merge drm/drm-next into drm-misc-next
Backmerging for v5.16-rc5. Resolves a conflict between drm-misc-next and drm-misc-fixes in the vc4 driver.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.d
Merge drm/drm-next into drm-misc-next
Backmerging for v5.16-rc5. Resolves a conflict between drm-misc-next and drm-misc-fixes in the vc4 driver.
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
show more ...
|
#
4922f092 |
| 14-Dec-2021 |
Jason Gunthorpe <jgg@nvidia.com> |
Merge tag 'v5.16-rc5' into rdma.git for-next
Required due to dependencies in following patches.
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
|
#
99b03ca6 |
| 14-Dec-2021 |
Daniel Vetter <daniel.vetter@ffwll.ch> |
Merge v5.16-rc5 into drm-next
Thomas Zimmermann requested a fixes backmerge, specifically also for 96c5f82ef0a1 ("drm/vc4: fix error code in vc4_create_object()")
Just a bunch of adjacent changes c
Merge v5.16-rc5 into drm-next
Thomas Zimmermann requested a fixes backmerge, specifically also for 96c5f82ef0a1 ("drm/vc4: fix error code in vc4_create_object()")
Just a bunch of adjacent changes conflicts, even the big pile of them in vc4.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
show more ...
|
#
6773cc31 |
| 13-Dec-2021 |
Ingo Molnar <mingo@kernel.org> |
Merge tag 'v5.16-rc5' into locking/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
|