libceph: potential NULL dereference in ceph_msg_data_create()
If kmem_cache_zalloc() returns NULL then the INIT_LIST_HEAD(&data->links);
will Oops. The callers aren't really prepared for NULL returns so it
doesn't make a lot of difference in real life.
Fixes: 5240d9f95d
("libceph: replace message data pointer with list")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
This commit is contained in:
Родитель
84583cfb97
Коммит
7c40b22f6f
|
@ -3203,8 +3203,10 @@ static struct ceph_msg_data *ceph_msg_data_create(enum ceph_msg_data_type type)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
data = kmem_cache_zalloc(ceph_msg_data_cache, GFP_NOFS);
|
data = kmem_cache_zalloc(ceph_msg_data_cache, GFP_NOFS);
|
||||||
if (data)
|
if (!data)
|
||||||
data->type = type;
|
return NULL;
|
||||||
|
|
||||||
|
data->type = type;
|
||||||
INIT_LIST_HEAD(&data->links);
|
INIT_LIST_HEAD(&data->links);
|
||||||
|
|
||||||
return data;
|
return data;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче