ocfs2: correctly check the return value of ocfs2_search_extent_list
authorYingtai Xie <xieyingtai@huawei.com>
Wed, 6 Aug 2014 23:03:54 +0000 (16:03 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 7 Aug 2014 01:01:13 +0000 (18:01 -0700)
commit981035b47d7da8ba7c153ed431bf515f593853d8
tree675aab83a7118389728f0dbcc733a3d3cf18ae8d
parentc811f5f41e37d16b2839988426ffde78d2273d48
ocfs2: correctly check the return value of ocfs2_search_extent_list

ocfs2_search_extent_list may return -1, so we should check the return
value in ocfs2_split_and_insert, otherwise it may cause array index out of
bound.

And ocfs2_search_extent_list can only return value less than
el->l_next_free_rec, so check if it is equal or larger than
le16_to_cpu(el->l_next_free_rec) is meaningless.

Signed-off-by: Yingtai Xie <xieyingtai@huawei.com>
Signed-off-by: Joseph Qi <joseph.qi@huawei.com>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Mark Fasheh <mfasheh@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/ocfs2/alloc.c
fs/ocfs2/move_extents.c
fs/ocfs2/refcounttree.c