diff options
| author | Sarita Patra <saritap@vmware.com> | 2022-07-12 06:00:57 -0700 | 
|---|---|---|
| committer | Sarita Patra <saritap@vmware.com> | 2022-07-12 06:09:04 -0700 | 
| commit | af9c8e7666f91b8837c027ac733b512fe6f3a37e (patch) | |
| tree | 3f33399d8eb945b605836170c8d959e60141456f /pimd/pim_cmd.c | |
| parent | 554350c87a1da915ff555ed91fab35be94ff4c07 (diff) | |
pimd: Avoid unnecessary vrf lookup
In several places, we are getting the vrf structure using
vrf_lookup_by_name(). Again we are passing vrf->vrf_id to
pim_get_pim_instance() to get the pim_instance.
The API pim_get_pim_instance() again get the VRF structure using
vrf_lookup_by_id(). This is avoided in this PR.
Signed-off-by: Sarita Patra <saritap@vmware.com>
Diffstat (limited to 'pimd/pim_cmd.c')
| -rw-r--r-- | pimd/pim_cmd.c | 19 | 
1 files changed, 7 insertions, 12 deletions
diff --git a/pimd/pim_cmd.c b/pimd/pim_cmd.c index 813ef4ca37..806b6d1852 100644 --- a/pimd/pim_cmd.c +++ b/pimd/pim_cmd.c @@ -4158,26 +4158,21 @@ DEFPY_HIDDEN (pim_test_sg_keepalive,  	      "The Group we are resetting\n")  {  	struct pim_upstream *up; +	struct vrf *vrf;  	struct pim_instance *pim;  	pim_sgaddr sg;  	sg.src = source;  	sg.grp = group; -	if (!name) -		pim = pim_get_pim_instance(VRF_DEFAULT); -	else { -		struct vrf *vrf = vrf_lookup_by_name(name); - -		if (!vrf) { -			vty_out(vty, "%% Vrf specified: %s does not exist\n", -				name); -			return CMD_WARNING; -		} - -		pim = pim_get_pim_instance(vrf->vrf_id); +	vrf = vrf_lookup_by_name(name ? name : VRF_DEFAULT_NAME); +	if (!vrf) { +		vty_out(vty, "%% Vrf specified: %s does not exist\n", name); +		return CMD_WARNING;  	} +	pim = vrf->info; +  	if (!pim) {  		vty_out(vty, "%% Unable to find pim instance\n");  		return CMD_WARNING;  | 
