libceph: check pointer before assigned to "c->rules[]"
It should be better to check pointer firstly, then assign it to c->rules[]. Refine code a little bit. Signed-off-by: Li Qiong <liqiong@nfschina.com> Reviewed-by: Ilya Dryomov <idryomov@gmail.com> Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
This commit is contained in:
parent
4849077604
commit
fc54cb8d87
@ -571,10 +571,10 @@ static struct crush_map *crush_decode(void *pbyval, void *end)
|
||||
goto bad;
|
||||
#endif
|
||||
r = kmalloc(struct_size(r, steps, yes), GFP_NOFS);
|
||||
c->rules[i] = r;
|
||||
if (r == NULL)
|
||||
goto badmem;
|
||||
dout(" rule %d is at %p\n", i, r);
|
||||
c->rules[i] = r;
|
||||
r->len = yes;
|
||||
ceph_decode_copy_safe(p, end, &r->mask, 4, bad); /* 4 u8's */
|
||||
ceph_decode_need(p, end, r->len*3*sizeof(u32), bad);
|
||||
|
Loading…
Reference in New Issue
Block a user