diff --git a/fs/logfs/segment.c b/fs/logfs/segment.c index d448a777166b71bc21df131c0c32a462d97b5efe..7f9b096d8d572e0753ee84d060c4018fa6978a40 100644 --- a/fs/logfs/segment.c +++ b/fs/logfs/segment.c @@ -62,7 +62,8 @@ static struct page *get_mapping_page(struct super_block *sb, pgoff_t index, page = read_cache_page(mapping, index, filler, sb); else { page = find_or_create_page(mapping, index, GFP_NOFS); - unlock_page(page); + if (page) + unlock_page(page); } return page; }