[PATCH] ocxl: Simplify free_spa()

Andrew Donnellan andrew.donnellan at au1.ibm.com
Tue Dec 11 12:05:49 AEDT 2018


On 11/12/18 2:15 am, Greg Kurz wrote:
> The only users of free_spa() are alloc_link() and free_link(), and
> in both cases:
> 
> - link->spa != NULL
> 
> - free_spa(link) is immediatly followed by kfree(link)
> 
> The check isn't needed, and it doesn't bring much to clear the link->spa
> pointer. Drop both.
> 
> Signed-off-by: Greg Kurz <groug at kaod.org>

I like defensive programming but for this case I don't really care too 
much either way

Acked-by: Andrew Donnellan <andrew.donnellan at au1.ibm.com>

> ---
>   drivers/misc/ocxl/link.c |    7 ++-----
>   1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/misc/ocxl/link.c b/drivers/misc/ocxl/link.c
> index 31695a078485..eed92055184d 100644
> --- a/drivers/misc/ocxl/link.c
> +++ b/drivers/misc/ocxl/link.c
> @@ -352,11 +352,8 @@ static void free_spa(struct link *link)
>   	pr_debug("Freeing SPA for %x:%x:%x\n", link->domain, link->bus,
>   		link->dev);
>   
> -	if (spa && spa->spa_mem) {
> -		free_pages((unsigned long) spa->spa_mem, spa->spa_order);
> -		kfree(spa);
> -		link->spa = NULL;
> -	}
> +	free_pages((unsigned long) spa->spa_mem, spa->spa_order);
> +	kfree(spa);
>   }
>   
>   static int alloc_link(struct pci_dev *dev, int PE_mask, struct link **out_link)
> 

-- 
Andrew Donnellan              OzLabs, ADL Canberra
andrew.donnellan at au1.ibm.com  IBM Australia Limited



More information about the Linuxppc-dev mailing list