Re: [PATCH] dax: Fix missed PMD wakeups

From: Matthew Wilcox
Date: Wed Jul 10 2019 - 23:09:00 EST


On Wed, Jul 10, 2019 at 09:02:04PM +0200, Jan Kara wrote:
> @@ -848,7 +853,7 @@ static int dax_writeback_one(struct xa_state *xas, struct dax_device *dax_dev,
> if (unlikely(dax_is_locked(entry))) {
> void *old_entry = entry;
>
> - entry = get_unlocked_entry(xas);
> + entry = get_unlocked_entry(xas, 0);
>
> /* Entry got punched out / reallocated? */
> if (!entry || WARN_ON_ONCE(!xa_is_value(entry)))

I'm not sure about this one. Are we sure there will never be a dirty
PMD entry? Even if we can't create one today, it feels like a bit of
a landmine to leave for someone who creates one in the future.