for (pfn = dax_to_pfn(entry); \
                        pfn < dax_end_pfn(entry); pfn++)
 
-static inline bool dax_mapping_is_cow(struct address_space *mapping)
+static inline bool dax_page_is_shared(struct page *page)
 {
-       return (unsigned long)mapping == PAGE_MAPPING_DAX_COW;
+       return page->mapping == PAGE_MAPPING_DAX_SHARED;
 }
 
 /*
- * Set the page->mapping with FS_DAX_MAPPING_COW flag, increase the refcount.
+ * Set the page->mapping with PAGE_MAPPING_DAX_SHARED flag, increase the
+ * refcount.
  */
-static inline void dax_mapping_set_cow(struct page *page)
+static inline void dax_page_share_get(struct page *page)
 {
-       if ((uintptr_t)page->mapping != PAGE_MAPPING_DAX_COW) {
+       if (page->mapping != PAGE_MAPPING_DAX_SHARED) {
                /*
                 * Reset the index if the page was already mapped
                 * regularly before.
                 */
                if (page->mapping)
-                       page->index = 1;
-               page->mapping = (void *)PAGE_MAPPING_DAX_COW;
+                       page->share = 1;
+               page->mapping = PAGE_MAPPING_DAX_SHARED;
        }
-       page->index++;
+       page->share++;
+}
+
+static inline unsigned long dax_page_share_put(struct page *page)
+{
+       return --page->share;
 }
 
 /*
- * When it is called in dax_insert_entry(), the cow flag will indicate that
+ * When it is called in dax_insert_entry(), the shared flag will indicate that
  * whether this entry is shared by multiple files.  If so, set the page->mapping
- * FS_DAX_MAPPING_COW, and use page->index as refcount.
+ * PAGE_MAPPING_DAX_SHARED, and use page->share as refcount.
  */
 static void dax_associate_entry(void *entry, struct address_space *mapping,
-               struct vm_area_struct *vma, unsigned long address, bool cow)
+               struct vm_area_struct *vma, unsigned long address, bool shared)
 {
        unsigned long size = dax_entry_size(entry), pfn, index;
        int i = 0;
        for_each_mapped_pfn(entry, pfn) {
                struct page *page = pfn_to_page(pfn);
 
-               if (cow) {
-                       dax_mapping_set_cow(page);
+               if (shared) {
+                       dax_page_share_get(page);
                } else {
                        WARN_ON_ONCE(page->mapping);
                        page->mapping = mapping;
                struct page *page = pfn_to_page(pfn);
 
                WARN_ON_ONCE(trunc && page_ref_count(page) > 1);
-               if (dax_mapping_is_cow(page->mapping)) {
-                       /* keep the CoW flag if this page is still shared */
-                       if (page->index-- > 0)
+               if (dax_page_is_shared(page)) {
+                       /* keep the shared flag if this page is still shared */
+                       if (dax_page_share_put(page) > 0)
                                continue;
                } else
                        WARN_ON_ONCE(page->mapping && page->mapping != mapping);