diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index cdbd20e62bb65fccbbc99ab26ccf2f74b80577e3..f265f413acba39e59c99aac57b58998f98ab1d3c 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -6767,8 +6767,10 @@ bool btrfs_page_exists_in_range(struct inode *inode, loff_t start, loff_t end) break; if (radix_tree_exception(page)) { - if (radix_tree_deref_retry(page)) + if (radix_tree_deref_retry(page)) { + page = NULL; continue; + } /* * Otherwise, shmem/tmpfs must be storing a swap entry * here as an exceptional entry: so return it without