Lines Matching refs:folio
87 static inline int folio_ref_count(const struct folio *folio) in folio_ref_count() argument
89 return page_ref_count(&folio->page); in folio_ref_count()
104 static inline void folio_set_count(struct folio *folio, int v) in folio_set_count() argument
106 set_page_count(&folio->page, v); in folio_set_count()
125 static inline void folio_ref_add(struct folio *folio, int nr) in folio_ref_add() argument
127 page_ref_add(&folio->page, nr); in folio_ref_add()
137 static inline void folio_ref_sub(struct folio *folio, int nr) in folio_ref_sub() argument
139 page_ref_sub(&folio->page, nr); in folio_ref_sub()
142 static inline int folio_ref_sub_return(struct folio *folio, int nr) in folio_ref_sub_return() argument
144 int ret = atomic_sub_return(nr, &folio->_refcount); in folio_ref_sub_return()
147 __page_ref_mod_and_return(&folio->page, -nr, ret); in folio_ref_sub_return()
158 static inline void folio_ref_inc(struct folio *folio) in folio_ref_inc() argument
160 page_ref_inc(&folio->page); in folio_ref_inc()
170 static inline void folio_ref_dec(struct folio *folio) in folio_ref_dec() argument
172 page_ref_dec(&folio->page); in folio_ref_dec()
184 static inline int folio_ref_sub_and_test(struct folio *folio, int nr) in folio_ref_sub_and_test() argument
186 return page_ref_sub_and_test(&folio->page, nr); in folio_ref_sub_and_test()
198 static inline int folio_ref_inc_return(struct folio *folio) in folio_ref_inc_return() argument
200 return page_ref_inc_return(&folio->page); in folio_ref_inc_return()
212 static inline int folio_ref_dec_and_test(struct folio *folio) in folio_ref_dec_and_test() argument
214 return page_ref_dec_and_test(&folio->page); in folio_ref_dec_and_test()
226 static inline int folio_ref_dec_return(struct folio *folio) in folio_ref_dec_return() argument
228 return page_ref_dec_return(&folio->page); in folio_ref_dec_return()
246 static inline bool folio_ref_add_unless(struct folio *folio, int nr, int u) in folio_ref_add_unless() argument
248 return page_ref_add_unless(&folio->page, nr, u); in folio_ref_add_unless()
262 static inline bool folio_try_get(struct folio *folio) in folio_try_get() argument
264 return folio_ref_add_unless(folio, 1, 0); in folio_try_get()
267 static inline bool folio_ref_try_add(struct folio *folio, int count) in folio_ref_try_add() argument
269 return folio_ref_add_unless(folio, count, 0); in folio_ref_try_add()
281 static inline int folio_ref_freeze(struct folio *folio, int count) in folio_ref_freeze() argument
283 return page_ref_freeze(&folio->page, count); in folio_ref_freeze()
296 static inline void folio_ref_unfreeze(struct folio *folio, int count) in folio_ref_unfreeze() argument
298 page_ref_unfreeze(&folio->page, count); in folio_ref_unfreeze()