-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 <[email protected]>
--
Cheers,
David / dhildenb