Lines Matching refs:rwc
537 struct rmap_walk_control *rwc) in folio_lock_anon_vma_read() argument
565 if (rwc && rwc->try_lock) { in folio_lock_anon_vma_read()
567 rwc->contended = true; in folio_lock_anon_vma_read()
904 struct rmap_walk_control rwc = { in folio_referenced() local
930 rwc.invalid_vma = invalid_folio_referenced_vma; in folio_referenced()
933 rmap_walk(folio, &rwc); in folio_referenced()
939 return rwc.contended ? -1 : pra.referenced; in folio_referenced()
1035 struct rmap_walk_control rwc = { in folio_mkclean() local
1050 rmap_walk(folio, &rwc); in folio_mkclean()
1822 struct rmap_walk_control rwc = { in try_to_unmap() local
1830 rmap_walk_locked(folio, &rwc); in try_to_unmap()
1832 rmap_walk(folio, &rwc); in try_to_unmap()
2150 struct rmap_walk_control rwc = { in try_to_migrate() local
2178 rwc.invalid_vma = invalid_migration_vma; in try_to_migrate()
2181 rmap_walk_locked(folio, &rwc); in try_to_migrate()
2183 rmap_walk(folio, &rwc); in try_to_migrate()
2298 struct rmap_walk_control rwc = { in folio_make_device_exclusive() local
2312 rmap_walk(folio, &rwc); in folio_make_device_exclusive()
2381 struct rmap_walk_control *rwc) in rmap_walk_anon_lock() argument
2385 if (rwc->anon_lock) in rmap_walk_anon_lock()
2386 return rwc->anon_lock(folio, rwc); in rmap_walk_anon_lock()
2401 if (rwc->try_lock) { in rmap_walk_anon_lock()
2403 rwc->contended = true; in rmap_walk_anon_lock()
2422 struct rmap_walk_control *rwc, bool locked) in rmap_walk_anon() argument
2433 anon_vma = rmap_walk_anon_lock(folio, rwc); in rmap_walk_anon()
2448 if (rwc->invalid_vma && rwc->invalid_vma(vma, rwc->arg)) in rmap_walk_anon()
2451 if (!rwc->rmap_one(folio, vma, address, rwc->arg)) in rmap_walk_anon()
2453 if (rwc->done && rwc->done(folio)) in rmap_walk_anon()
2470 struct rmap_walk_control *rwc, bool locked) in rmap_walk_file() argument
2493 if (rwc->try_lock) { in rmap_walk_file()
2494 rwc->contended = true; in rmap_walk_file()
2508 if (rwc->invalid_vma && rwc->invalid_vma(vma, rwc->arg)) in rmap_walk_file()
2511 if (!rwc->rmap_one(folio, vma, address, rwc->arg)) in rmap_walk_file()
2513 if (rwc->done && rwc->done(folio)) in rmap_walk_file()
2522 void rmap_walk(struct folio *folio, struct rmap_walk_control *rwc) in rmap_walk() argument
2525 rmap_walk_ksm(folio, rwc); in rmap_walk()
2527 rmap_walk_anon(folio, rwc, false); in rmap_walk()
2529 rmap_walk_file(folio, rwc, false); in rmap_walk()
2533 void rmap_walk_locked(struct folio *folio, struct rmap_walk_control *rwc) in rmap_walk_locked() argument
2538 rmap_walk_anon(folio, rwc, true); in rmap_walk_locked()
2540 rmap_walk_file(folio, rwc, true); in rmap_walk_locked()