lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <cc82f3e8-6386-37d3-34e5-78f25521d9af@redhat.com>
Date:   Fri, 13 Dec 2019 11:17:28 +0100
From:   David Hildenbrand <david@...hat.com>
To:     Florian Westphal <fw@...len.de>, linux-mm@...ck.org
Cc:     cl@...ux.com, penberg@...nel.org, rientjes@...gle.com,
        iamjoonsoo.kim@....com, akpm@...ux-foundation.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mm: remove __krealloc

On 12.12.19 23:34, Florian Westphal wrote:
> Since 5.5-rc1 the last user of this function is gone, so remove the
> functionality.
> 
> See commit
> 2ad9d7747c10 ("netfilter: conntrack: free extension area immediately")
> for details.
> 
> Signed-off-by: Florian Westphal <fw@...len.de>
> ---
>  include/linux/slab.h                    |  1 -
>  mm/slab_common.c                        | 22 ----------------------
>  scripts/coccinelle/free/devm_free.cocci |  4 ----
>  3 files changed, 27 deletions(-)
> 
> diff --git a/include/linux/slab.h b/include/linux/slab.h
> index 877a95c6a2d2..03a389358562 100644
> --- a/include/linux/slab.h
> +++ b/include/linux/slab.h
> @@ -184,7 +184,6 @@ void memcg_deactivate_kmem_caches(struct mem_cgroup *, struct mem_cgroup *);
>  /*
>   * Common kmalloc functions provided by all allocators
>   */
> -void * __must_check __krealloc(const void *, size_t, gfp_t);
>  void * __must_check krealloc(const void *, size_t, gfp_t);
>  void kfree(const void *);
>  void kzfree(const void *);
> diff --git a/mm/slab_common.c b/mm/slab_common.c
> index f0ab6d4ceb4c..87e8923cf0b6 100644
> --- a/mm/slab_common.c
> +++ b/mm/slab_common.c
> @@ -1675,28 +1675,6 @@ static __always_inline void *__do_krealloc(const void *p, size_t new_size,
>  	return ret;
>  }
>  
> -/**
> - * __krealloc - like krealloc() but don't free @p.
> - * @p: object to reallocate memory for.
> - * @new_size: how many bytes of memory are required.
> - * @flags: the type of memory to allocate.
> - *
> - * This function is like krealloc() except it never frees the originally
> - * allocated buffer. Use this if you don't want to free the buffer immediately
> - * like, for example, with RCU.
> - *
> - * Return: pointer to the allocated memory or %NULL in case of error
> - */
> -void *__krealloc(const void *p, size_t new_size, gfp_t flags)
> -{
> -	if (unlikely(!new_size))
> -		return ZERO_SIZE_PTR;
> -
> -	return __do_krealloc(p, new_size, flags);
> -
> -}
> -EXPORT_SYMBOL(__krealloc);
> -
>  /**
>   * krealloc - reallocate memory. The contents will remain unchanged.
>   * @p: object to reallocate memory for.
> diff --git a/scripts/coccinelle/free/devm_free.cocci b/scripts/coccinelle/free/devm_free.cocci
> index 441799b5359b..66aaf68889a5 100644
> --- a/scripts/coccinelle/free/devm_free.cocci
> +++ b/scripts/coccinelle/free/devm_free.cocci
> @@ -94,8 +94,6 @@ position p;
>   kfree@p(x)
>  |
>   kzfree@p(x)
> -|
> - __krealloc@p(x, ...)
>  |
>   krealloc@p(x, ...)
>  |
> @@ -120,8 +118,6 @@ position p != safe.p;
>  |
>  * kzfree@p(x)
>  |
> -* __krealloc@p(x, ...)
> -|
>  * krealloc@p(x, ...)
>  |
>  * free_pages@p(x, ...)
> 

IMHO, __do_krealloc() changes can go into a separate patch.

Reviewed-by: David Hildenbrand <david@...hat.com>

-- 
Thanks,

David / dhildenb

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ