-static inline unsigned long dax_folio_share_put(struct folio *folio)
+static inline unsigned long dax_folio_put(struct folio *folio)
  {
-       return --folio->page.share;
+       unsigned long ref;
+       int order, i;
+
+       if (!dax_folio_is_shared(folio))
+               ref = 0;
+       else
+               ref = --folio->share;
+

It would still be good to learn how this non-atomic update here is safe (@Dan?), but that's independent of this series.

Staring at it, I would have thought we have to us an atomic_t here.

Acked-by: David Hildenbrand <da...@redhat.com>

--
Cheers,

David / dhildenb


Reply via email to