From: Yang Sheng Date: Fri, 13 Jun 2014 03:33:02 +0000 (+0800) Subject: LU-5162 mdc: Add exception entry check for radix_tree X-Git-Tag: 2.6.0-RC1~88 X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=commitdiff_plain;h=c394068ee148595711c661651368b91373bcc78a;hp=26d8420f685bfbf3e0cf35f69e04cc68588340dc;ds=sidebyside LU-5162 mdc: Add exception entry check for radix_tree We need check exception entry after radix_tree lookup. Signed-off-by: Yang Sheng Change-Id: I9a8493e0de7d44f04b00d43919ed5f3ab6c1d0d9 Reviewed-on: http://review.whamcloud.com/10709 Tested-by: Jenkins Reviewed-by: Bob Glossman Tested-by: Maloo Reviewed-by: James Simmons Reviewed-by: Oleg Drokin --- diff --git a/lustre/mdc/mdc_request.c b/lustre/mdc/mdc_request.c index 135a55e..37f9032 100644 --- a/lustre/mdc/mdc_request.c +++ b/lustre/mdc/mdc_request.c @@ -1181,7 +1181,7 @@ static struct page *mdc_page_locate(struct address_space *mapping, __u64 *hash, spin_lock_irq(&mapping->tree_lock); found = radix_tree_gang_lookup(&mapping->page_tree, (void **)&page, offset, 1); - if (found > 0) { + if (found > 0 && !radix_tree_exceptional_entry(page)) { struct lu_dirpage *dp; page_cache_get(page);