Size: 1813
Comment:
|
← Revision 10 as of 2022-06-13 20:33:39 ⇥
Size: 2767
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 4: | Line 4: |
MM: * Get large folio support in (5.18) * Convert GUP to folios (5.18) * Convert page_vma_mapped to folios * Convert rmap to folios (depends on page_vma_mapped) * Convert vmscan to folios (depends on rmap) * Move split_huge_page() to non-THP code * Get rid of all thp_size(), thp_order() and thp_nr_pages() calls (probably?) FS: * Adapt NFS to use large folios * Adapt btrfs to use large folios * Adapt CIFS to use large folios |
* MM: * Convert vmscan.c to folios (partly done for 5.18) * isolate_lru_pages() * alloc_demote_page() * reclaim_clean_pages_from_list() * move_pages_to_lru() * shrink_active_list() * reclaim_pages() * Convert filemap.c to folios * filemap_range_has_page() * __filemap_fdatawait_range() * filemap_range_has_writeback() * replace_page_cache_page() * page_endio() * find_get_pages_contig() (or can we remove it?) * find_get_pages_range_tag() * filemap_map_pmd() * filemap_map_pages() * generic_perform_write() * Get rid of readahead_page() * * Move split_huge_page() to non-THP code * Get rid of all thp_size(), thp_order() and thp_nr_pages() calls (probably?) * FS: * Adapt NFS to use large folios * Adapt btrfs to use large folios * Adapt CIFS to use large folios * Convert the a_ops to take folios instead of pages (most aops done for 5.19) |
Line 19: | Line 35: |
* Slab (Vlastimil took this over. merged 5.17) | |
Line 24: | Line 39: |
* Implement iomap ->writepages properly | |
Line 27: | Line 43: |
* Shrinking struct mutex (Vishal has taken this on) * Removing PG_private |
* Shrink struct mutex (Vishal has taken this on) * Remove PG_private * Remove PG_error |
Line 33: | Line 50: |
* Make the last argument to read_mapping_page() / read_mapping_folio() a struct file ptr | |
Line 37: | Line 53: |
* Usercopy (5.18. Sent to Kees) * If we check ->mapping for order-0 pages, is that a sure sign of individual allocation? |
* Usercopy for order-0 pages * If we check ->mapping, is that a sure sign of individual allocation? |
Line 43: | Line 59: |
* Use an iov_iter in proc/vmcore (sent for 5.17? 5.18?) | |
Line 45: | Line 60: |
* Share memory when caching reflinked files * Make page cache better at writethrough for O_SYNC (and related) Completed projects Folios: * MM: * Get large folio support in (5.18) * Convert GUP to folios (5.18) * Convert page_vma_mapped to PFNs (5.18) * Convert rmap to folios (5.18) * FS: * Convert XFS to large folios (5.18) * Remove aops->readpages (5.18) * Use an iov_iter in proc/vmcore (5.19) * Usercopy improvements (5.19) * Make the last argument to read_mapping_page() / read_mapping_folio() a struct file ptr (5.19) * Slab (Vlastimil took this over. merged 5.17) |
I have "a few" projects I'm working on / intending to work on in the near future.
Folios is the big one. This has sub-projects:
- MM:
- Convert vmscan.c to folios (partly done for 5.18)
- isolate_lru_pages()
- alloc_demote_page()
- reclaim_clean_pages_from_list()
- move_pages_to_lru()
- shrink_active_list()
- reclaim_pages()
- Convert filemap.c to folios
- filemap_range_has_page()
filemap_fdatawait_range()
- filemap_range_has_writeback()
- replace_page_cache_page()
- page_endio()
- find_get_pages_contig() (or can we remove it?)
- find_get_pages_range_tag()
- filemap_map_pmd()
- filemap_map_pages()
- generic_perform_write()
- Get rid of readahead_page()
- Move split_huge_page() to non-THP code
- Get rid of all thp_size(), thp_order() and thp_nr_pages() calls (probably?)
- Convert vmscan.c to folios (partly done for 5.18)
- FS:
- Adapt NFS to use large folios
- Adapt btrfs to use large folios
- Adapt CIFS to use large folios
- Convert the a_ops to take folios instead of pages (most aops done for 5.19)
Tangential to folios:
- Phyr
- net pool as its own type
- pt pages as its own type
- zspage as its own type
- Can we make mapcount more sensible or disappear entirely?
Implement iomap ->writepages properly
Unrelated to folios:
- Maple Tree (Liam is doing most of the work)
- Shrink struct mutex (Vishal has taken this on)
- Remove PG_private
- Remove PG_error
Synchronous ->readpage
- Broadcast readpage errors to all waiters
Implement ->readahead for squashfs (Hsin-Yi)
- Slab Sevenths (Bill is attacking this one)
- NUMA-aware zero page (Bill is working on this one too)
- NUMA text pages in the page cache (Linus seems sceptical)
- Usercopy for order-0 pages
If we check ->mapping, is that a sure sign of individual allocation?
- Big Buckets (or integrate with Maple Tree)
- Readahead for compressed filesystems in general
- Fix XArray memory leak when memory allocation fails
- Removing b_end_io (Jitendra)
- Enable -Wshadow (needs header file cleanups)
- Share memory when caching reflinked files
- Make page cache better at writethrough for O_SYNC (and related)
Completed projects
- Folios:
- MM:
- Get large folio support in (5.18)
- Convert GUP to folios (5.18)
- Convert page_vma_mapped to PFNs (5.18)
- Convert rmap to folios (5.18)
- FS:
- Convert XFS to large folios (5.18)
Remove aops->readpages (5.18)
- Use an iov_iter in proc/vmcore (5.19)
- Usercopy improvements (5.19)
- Make the last argument to read_mapping_page() / read_mapping_folio() a struct file ptr (5.19)
- Slab (Vlastimil took this over. merged 5.17)