OSDN Git Service

staging: lustre: lnet-route: use kmalloc for small allocation
authorNeilBrown <neilb@suse.com>
Tue, 9 Jan 2018 01:19:38 +0000 (12:19 +1100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 9 Jan 2018 14:41:57 +0000 (15:41 +0100)
This allocation is reasonably small.
As the function is called "*_locked", it might not be safe
to perform a GFP_KERNEL allocation, so be safe and
use GFP_NOFS.

Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/lustre/lnet/lnet/router.c

index 409244e..476d6d2 100644 (file)
@@ -884,8 +884,7 @@ lnet_destroy_rc_data(struct lnet_rc_data *rcd)
                lnet_net_unlock(cpt);
        }
 
-       if (rcd->rcd_pinginfo)
-               LIBCFS_FREE(rcd->rcd_pinginfo, LNET_PINGINFO_SIZE);
+       kfree(rcd->rcd_pinginfo);
 
        kfree(rcd);
 }
@@ -908,7 +907,7 @@ lnet_create_rc_data_locked(struct lnet_peer *gateway)
        LNetInvalidateMDHandle(&rcd->rcd_mdh);
        INIT_LIST_HEAD(&rcd->rcd_list);
 
-       LIBCFS_ALLOC(pi, LNET_PINGINFO_SIZE);
+       pi = kzalloc(LNET_PINGINFO_SIZE, GFP_NOFS);
        if (!pi)
                goto out;