staging: lustre: lnet: klnds: o2iblnd: fix null dereference on failed path in o2iblnd.c
If net is null and failed path is executed, dereference null may happen.
This patch fixes it. The following Coccinelle semantic patch was used.
@@
expression E, E1;
identifier f;
statement S1,S2,S3;
@@
* if (E == NULL)
{
... when != if (E == NULL) S1 else S2
when != E = E1
* E->f
... when any
return ...;
}
else S3
Signed-off-by: Jiayi Ye <yejiayily@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
85b4260ddf
commit
3247c4e5ef
1 changed files with 2 additions and 1 deletions
|
|
@ -3081,7 +3081,7 @@ kiblnd_startup (lnet_ni_t *ni)
|
|||
LIBCFS_ALLOC(net, sizeof(*net));
|
||||
ni->ni_data = net;
|
||||
if (net == NULL)
|
||||
goto failed;
|
||||
goto net_failed;
|
||||
|
||||
do_gettimeofday(&tv);
|
||||
net->ibn_incarnation = (((__u64)tv.tv_sec) * 1000000) + tv.tv_usec;
|
||||
|
|
@ -3147,6 +3147,7 @@ failed:
|
|||
if (net->ibn_dev == NULL && ibdev != NULL)
|
||||
kiblnd_destroy_dev(ibdev);
|
||||
|
||||
net_failed:
|
||||
kiblnd_shutdown(ni);
|
||||
|
||||
CDEBUG(D_NET, "kiblnd_startup failed\n");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue