18c2ecf20Sopenharmony_ci====================== 28c2ecf20Sopenharmony_ciMemory Management APIs 38c2ecf20Sopenharmony_ci====================== 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ciUser Space Memory Access 68c2ecf20Sopenharmony_ci======================== 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci.. kernel-doc:: arch/x86/include/asm/uaccess.h 98c2ecf20Sopenharmony_ci :internal: 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci.. kernel-doc:: arch/x86/lib/usercopy_32.c 128c2ecf20Sopenharmony_ci :export: 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ci.. kernel-doc:: mm/gup.c 158c2ecf20Sopenharmony_ci :functions: get_user_pages_fast 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci.. _mm-api-gfp-flags: 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ciMemory Allocation Controls 208c2ecf20Sopenharmony_ci========================== 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciFunctions which need to allocate memory often use GFP flags to express 238c2ecf20Sopenharmony_cihow that memory should be allocated. The GFP acronym stands for "get 248c2ecf20Sopenharmony_cifree pages", the underlying memory allocation function. Not every GFP 258c2ecf20Sopenharmony_ciflag is allowed to every function which may allocate memory. Most 268c2ecf20Sopenharmony_ciusers will want to use a plain ``GFP_KERNEL``. 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci.. kernel-doc:: include/linux/gfp.h 298c2ecf20Sopenharmony_ci :doc: Page mobility and placement hints 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci.. kernel-doc:: include/linux/gfp.h 328c2ecf20Sopenharmony_ci :doc: Watermark modifiers 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci.. kernel-doc:: include/linux/gfp.h 358c2ecf20Sopenharmony_ci :doc: Reclaim modifiers 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci.. kernel-doc:: include/linux/gfp.h 388c2ecf20Sopenharmony_ci :doc: Useful GFP flag combinations 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ciThe Slab Cache 418c2ecf20Sopenharmony_ci============== 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ci.. kernel-doc:: include/linux/slab.h 448c2ecf20Sopenharmony_ci :internal: 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci.. kernel-doc:: mm/slab.c 478c2ecf20Sopenharmony_ci :export: 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci.. kernel-doc:: mm/slab_common.c 508c2ecf20Sopenharmony_ci :export: 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci.. kernel-doc:: mm/util.c 538c2ecf20Sopenharmony_ci :functions: kfree_const kvmalloc_node kvfree 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ciVirtually Contiguous Mappings 568c2ecf20Sopenharmony_ci============================= 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_ci.. kernel-doc:: mm/vmalloc.c 598c2ecf20Sopenharmony_ci :export: 608c2ecf20Sopenharmony_ci 618c2ecf20Sopenharmony_ciFile Mapping and Page Cache 628c2ecf20Sopenharmony_ci=========================== 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ci.. kernel-doc:: mm/readahead.c 658c2ecf20Sopenharmony_ci :export: 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci.. kernel-doc:: mm/filemap.c 688c2ecf20Sopenharmony_ci :export: 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci.. kernel-doc:: mm/page-writeback.c 718c2ecf20Sopenharmony_ci :export: 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ci.. kernel-doc:: mm/truncate.c 748c2ecf20Sopenharmony_ci :export: 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ci.. kernel-doc:: include/linux/pagemap.h 778c2ecf20Sopenharmony_ci :internal: 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ciMemory pools 808c2ecf20Sopenharmony_ci============ 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ci.. kernel-doc:: mm/mempool.c 838c2ecf20Sopenharmony_ci :export: 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ciDMA pools 868c2ecf20Sopenharmony_ci========= 878c2ecf20Sopenharmony_ci 888c2ecf20Sopenharmony_ci.. kernel-doc:: mm/dmapool.c 898c2ecf20Sopenharmony_ci :export: 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ciMore Memory Management Functions 928c2ecf20Sopenharmony_ci================================ 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ci.. kernel-doc:: mm/memory.c 958c2ecf20Sopenharmony_ci :export: 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ci.. kernel-doc:: mm/page_alloc.c 98