|
@@ -124,6 +124,15 @@ static inline int page_ref_sub_and_test(struct page *page, int nr)
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
+static inline int page_ref_inc_return(struct page *page)
|
|
|
+{
|
|
|
+ int ret = atomic_inc_return(&page->_refcount);
|
|
|
+
|
|
|
+ if (page_ref_tracepoint_active(__tracepoint_page_ref_mod_and_return))
|
|
|
+ __page_ref_mod_and_return(page, 1, ret);
|
|
|
+ return ret;
|
|
|
+}
|
|
|
+
|
|
|
static inline int page_ref_dec_and_test(struct page *page)
|
|
|
{
|
|
|
int ret = atomic_dec_and_test(&page->_refcount);
|