We need check exception entry after radix_tree lookup.
Signed-off-by: Yang Sheng <yang.sheng@intel.com>
Change-Id: I9a8493e0de7d44f04b00d43919ed5f3ab6c1d0d9
Reviewed-on: http://review.whamcloud.com/10709
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
spin_lock_irq(&mapping->tree_lock);
found = radix_tree_gang_lookup(&mapping->page_tree,
(void **)&page, offset, 1);
spin_lock_irq(&mapping->tree_lock);
found = radix_tree_gang_lookup(&mapping->page_tree,
(void **)&page, offset, 1);
+ if (found > 0 && !radix_tree_exceptional_entry(page)) {
struct lu_dirpage *dp;
page_cache_get(page);
struct lu_dirpage *dp;
page_cache_get(page);