KernelNewbies
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Kernel Hacking

  • Frontpage

  • Kernel Hacking

  • Kernel Documentation

  • Kernel Glossary

  • FAQ

  • Found a bug?

  • Kernel Changelog

  • Upstream Merge Guide

Projects

  • KernelTasklists

  • KernelJanitors

  • KernelMentors

  • KernelProjects

Community

  • Why a community?

  • Regional Kernelnewbies

  • Personal Pages

  • Upcoming Events

References

  • Mailing Lists

  • Related Sites

  • Programming Links

Wiki

  • Recent Changes

  • Site Editors

  • Side Bar

  • Tips for Editors

  • Hosted by WikiWall

Navigation

  • RecentChanges
  • FindPage
  • HelpContents

Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

KernelNewbies:
  • MatthewWilcox
  • Projects

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?)
  • 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)

  • MatthewWilcox/ImprovedReadaheadAlgorithm

  • 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)
  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01