diff --git a/fs/dax.c b/fs/dax.c index f32d7125ad0f237d61173cd72383683ac380c4e4..e4ef8af31aa646fae08dd08010e77d1df57a53d0 100644 --- a/fs/dax.c +++ b/fs/dax.c @@ -447,6 +447,7 @@ bool dax_lock_mapping_entry(struct page *page) xa_unlock_irq(&mapping->i_pages); break; } else if (IS_ERR(entry)) { + xa_unlock_irq(&mapping->i_pages); WARN_ON_ONCE(PTR_ERR(entry) != -EAGAIN); continue; }