Lines Matching refs:rwc
539 struct rmap_walk_control *rwc) in folio_lock_anon_vma_read() argument
567 if (rwc && rwc->try_lock) { in folio_lock_anon_vma_read()
569 rwc->contended = true; in folio_lock_anon_vma_read()
905 struct rmap_walk_control rwc = { in folio_referenced() local
926 rmap_walk(folio, &rwc); in folio_referenced()
932 return rwc.contended ? -1 : pra.referenced; in folio_referenced()
1020 struct rmap_walk_control rwc = { in folio_mkclean() local
1035 rmap_walk(folio, &rwc); in folio_mkclean()
1798 struct rmap_walk_control rwc = { in try_to_unmap() local
1806 rmap_walk_locked(folio, &rwc); in try_to_unmap()
1808 rmap_walk(folio, &rwc); in try_to_unmap()
2138 struct rmap_walk_control rwc = { in try_to_migrate() local
2166 rwc.invalid_vma = invalid_migration_vma; in try_to_migrate()
2169 rmap_walk_locked(folio, &rwc); in try_to_migrate()
2171 rmap_walk(folio, &rwc); in try_to_migrate()
2288 struct rmap_walk_control rwc = { in folio_make_device_exclusive() local
2302 rmap_walk(folio, &rwc); in folio_make_device_exclusive()
2371 struct rmap_walk_control *rwc) in rmap_walk_anon_lock() argument
2375 if (rwc->anon_lock) in rmap_walk_anon_lock()
2376 return rwc->anon_lock(folio, rwc); in rmap_walk_anon_lock()
2391 if (rwc->try_lock) { in rmap_walk_anon_lock()
2393 rwc->contended = true; in rmap_walk_anon_lock()
2413 struct rmap_walk_control *rwc, bool locked) in rmap_walk_anon() argument
2424 anon_vma = rmap_walk_anon_lock(folio, rwc); in rmap_walk_anon()
2439 if (rwc->invalid_vma && rwc->invalid_vma(vma, rwc->arg)) in rmap_walk_anon()
2442 if (!rwc->rmap_one(folio, vma, address, rwc->arg)) in rmap_walk_anon()
2444 if (rwc->done && rwc->done(folio)) in rmap_walk_anon()
2462 struct rmap_walk_control *rwc, bool locked) in rmap_walk_file() argument
2485 if (rwc->try_lock) { in rmap_walk_file()
2486 rwc->contended = true; in rmap_walk_file()
2500 if (rwc->invalid_vma && rwc->invalid_vma(vma, rwc->arg)) in rmap_walk_file()
2503 if (!rwc->rmap_one(folio, vma, address, rwc->arg)) in rmap_walk_file()
2505 if (rwc->done && rwc->done(folio)) in rmap_walk_file()
2514 void rmap_walk(struct folio *folio, struct rmap_walk_control *rwc) in rmap_walk() argument
2517 rmap_walk_ksm(folio, rwc); in rmap_walk()
2519 rmap_walk_anon(folio, rwc, false); in rmap_walk()
2521 rmap_walk_file(folio, rwc, false); in rmap_walk()
2525 void rmap_walk_locked(struct folio *folio, struct rmap_walk_control *rwc) in rmap_walk_locked() argument
2530 rmap_walk_anon(folio, rwc, true); in rmap_walk_locked()
2532 rmap_walk_file(folio, rwc, true); in rmap_walk_locked()