| /linux-6.15/Documentation/translations/zh_TW/filesystems/ |
| H A D | tmpfs.rst | 76 mpol=default 採用進程分配策略 78 mpol=prefer:Node 傾向從給定的節點分配 79 mpol=bind:NodeList 只允許從指定的鏈表分配 80 mpol=interleave 傾向於依次從每個節點分配 81 mpol=interleave:NodeList 依次從每個節點分配 82 mpol=local 優先本地節點分配內存 86 分隔符的十進制數來表示。例如,mpol=bind0-3,5,7,9-15 104 例如,mpol=bind=staticNodeList相當於MPOL_BIND|MPOL_F_STATIC_NODES的分配策略 106 請注意,如果內核不支持NUMA,那麼使用mpol選項掛載tmpfs將會失敗;nodelist指定不 108 revocery內核),或者具有較少的節點在線,建議從自動模式中省略mpol選項掛載選項。 [all …]
|
| /linux-6.15/Documentation/translations/zh_CN/filesystems/ |
| H A D | tmpfs.rst | 76 mpol=default 采用进程分配策略 78 mpol=prefer:Node 倾向从给定的节点分配 79 mpol=bind:NodeList 只允许从指定的链表分配 80 mpol=interleave 倾向于依次从每个节点分配 81 mpol=interleave:NodeList 依次从每个节点分配 82 mpol=local 优先本地节点分配内存 86 分隔符的十进制数来表示。例如,mpol=bind0-3,5,7,9-15 104 例如,mpol=bind=staticNodeList相当于MPOL_BIND|MPOL_F_STATIC_NODES的分配策略 106 请注意,如果内核不支持NUMA,那么使用mpol选项挂载tmpfs将会失败;nodelist指定不 108 revocery内核),或者具有较少的节点在线,建议从自动模式中省略mpol选项挂载选项。 [all …]
|
| /linux-6.15/include/linux/ |
| H A D | mempolicy.h | 122 void mpol_shared_policy_init(struct shared_policy *sp, struct mempolicy *mpol); 124 struct vm_area_struct *vma, struct mempolicy *mpol); 143 struct mempolicy **mpol, nodemask_t **nodemask); 162 extern int mpol_parse_str(char *str, struct mempolicy **mpol); 210 struct mempolicy *mpol) in mpol_shared_policy_init() argument 256 struct mempolicy **mpol, nodemask_t **nodemask) in huge_node() argument 258 *mpol = NULL; in huge_node() 279 static inline int mpol_parse_str(char *str, struct mempolicy **mpol) in mpol_parse_str() argument
|
| H A D | gfp.h | 320 struct mempolicy *mpol, pgoff_t ilx, int nid); 333 struct mempolicy *mpol, pgoff_t ilx, int nid) in folio_alloc_mpol_noprof() argument
|
| H A D | shmem_fs.h | 71 struct mempolicy *mpol; /* default memory policy for mappings */ member
|
| /linux-6.15/mm/ |
| H A D | swap_state.c | 489 struct mempolicy *mpol; in read_swap_cache_async() local 497 mpol = get_vma_policy(vma, addr, 0, &ilx); in read_swap_cache_async() 498 folio = __read_swap_cache_async(entry, gfp_mask, mpol, ilx, in read_swap_cache_async() 500 mpol_cond_put(mpol); in read_swap_cache_async() 589 struct mempolicy *mpol, pgoff_t ilx) in swap_cluster_readahead() argument 618 gfp_mask, mpol, ilx, &page_allocated, false); in swap_cluster_readahead() 807 struct mempolicy *mpol; in swapin_readahead() local 811 mpol = get_vma_policy(vmf->vma, vmf->address, 0, &ilx); in swapin_readahead() 813 swap_vma_readahead(entry, gfp_mask, mpol, ilx, vmf) : in swapin_readahead() 814 swap_cluster_readahead(entry, gfp_mask, mpol, ilx); in swapin_readahead() [all …]
|
| H A D | swap.h | 72 struct mempolicy *mpol, pgoff_t ilx, bool *new_page_allocated, 75 struct mempolicy *mpol, pgoff_t ilx); 133 gfp_t gfp_mask, struct mempolicy *mpol, pgoff_t ilx) in swap_cluster_readahead() argument
|
| H A D | shmem.c | 1669 if (!mpol || mpol->mode == MPOL_DEFAULT) in shmem_show_mpol() 1682 mpol = sbinfo->mpol; in shmem_get_sbmpol() 1683 mpol_get(mpol); in shmem_get_sbmpol() 1686 return mpol; in shmem_get_sbmpol() 2888 return mpol ? mpol : get_task_policy(current); in shmem_get_pgoff_policy() 4871 if (ctx->mpol) { in shmem_reconfigure() 4872 mpol = sbinfo->mpol; in shmem_reconfigure() 4873 sbinfo->mpol = ctx->mpol; /* transfers initial ref */ in shmem_reconfigure() 4881 mpol_put(mpol); in shmem_reconfigure() 4935 mpol_put(mpol); in shmem_show_options() [all …]
|
| H A D | mempolicy.c | 2139 struct mempolicy **mpol, nodemask_t **nodemask) in huge_node() argument 2145 *mpol = get_vma_policy(vma, addr, hstate_vma(vma)->order, &ilx); in huge_node() 2146 *nodemask = policy_nodemask(gfp_flags, *mpol, ilx, &nid); in huge_node() 3017 void mpol_shared_policy_init(struct shared_policy *sp, struct mempolicy *mpol) in mpol_shared_policy_init() argument 3024 if (mpol) { in mpol_shared_policy_init() 3033 npol = mpol_new(mpol->mode, mpol->flags, &mpol->w.user_nodemask); in mpol_shared_policy_init() 3038 ret = mpol_set_nodemask(npol, &mpol->w.user_nodemask, scratch); in mpol_shared_policy_init() 3052 mpol_put(mpol); /* drop our incoming ref on sb mpol */ in mpol_shared_policy_init() 3223 int mpol_parse_str(char *str, struct mempolicy **mpol) in mpol_parse_str() argument 3343 *mpol = new; in mpol_parse_str()
|
| H A D | hugetlb.c | 1372 struct mempolicy *mpol; in dequeue_hugetlb_folio_vma() local 1387 if (mpol_is_preferred_many(mpol)) { in dequeue_hugetlb_folio_vma() 1399 mpol_cond_put(mpol); in dequeue_hugetlb_folio_vma() 2330 struct mempolicy *mpol; in alloc_buddy_hugetlb_folio_with_mpol() local 2336 if (mpol_is_preferred_many(mpol)) { in alloc_buddy_hugetlb_folio_with_mpol() 2347 mpol_cond_put(mpol); in alloc_buddy_hugetlb_folio_with_mpol() 2401 if (mpol->mode == MPOL_BIND && in policy_mbind_nodemask() 2402 (apply_policy_zone(mpol, gfp_zone(gfp)) && in policy_mbind_nodemask() 2404 return &mpol->nodes; in policy_mbind_nodemask() 6868 struct mempolicy *mpol; in alloc_hugetlb_folio_vma() local [all …]
|
| H A D | zswap.c | 1070 struct mempolicy *mpol; in zswap_writeback_entry() local 1083 mpol = get_task_policy(current); in zswap_writeback_entry() 1084 folio = __read_swap_cache_async(swpentry, GFP_KERNEL, mpol, in zswap_writeback_entry()
|
| H A D | slub.c | 4003 struct mempolicy *mpol = current->mempolicy; in __slab_alloc_node() local 4005 if (mpol) { in __slab_alloc_node() 4013 if (mpol->mode != MPOL_BIND || !slab || in __slab_alloc_node() 4014 !node_isset(slab_nid(slab), mpol->nodes)) in __slab_alloc_node()
|
| /linux-6.15/Documentation/filesystems/ |
| H A D | tmpfs.rst | 165 mpol=default use the process allocation policy 167 mpol=prefer:Node prefers to allocate memory from the given Node 168 mpol=bind:NodeList allocates memory only from nodes in NodeList 169 mpol=interleave prefers to allocate from each node in turn 170 mpol=interleave:NodeList allocates from each node of NodeList in turn 171 mpol=local prefers to allocate memory from the local node 176 largest node numbers in the range. For example, mpol=bind:0-3,5,7,9-15 198 For example, mpol=bind=static:NodeList, is the equivalent of an 201 Note that trying to mount a tmpfs with an mpol option will fail if the 206 online, then it is advisable to omit the mpol option from automatic [all …]
|
| /linux-6.15/ipc/ |
| H A D | shm.c | 566 static int shm_set_policy(struct vm_area_struct *vma, struct mempolicy *mpol) in shm_set_policy() argument 572 err = sfd->vm_ops->set_policy(vma, mpol); in shm_set_policy() 580 struct mempolicy *mpol = vma->vm_policy; in shm_get_policy() local 583 mpol = sfd->vm_ops->get_policy(vma, addr, ilx); in shm_get_policy() 584 return mpol; in shm_get_policy()
|