Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Mar 2021 12:15:33 GMT
From:      Kristof Provost <kp@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: b8f7267d499c - main - uma: allow uma_zfree_pcu(..., NULL)
Message-ID:  <202103121215.12CCFXXD031168@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by kp:

URL: https://cgit.FreeBSD.org/src/commit/?id=b8f7267d499c8ef8e70b021879d3e9e087ecc32d

commit b8f7267d499c8ef8e70b021879d3e9e087ecc32d
Author:     Kristof Provost <kp@FreeBSD.org>
AuthorDate: 2021-03-10 14:11:59 +0000
Commit:     Kristof Provost <kp@FreeBSD.org>
CommitDate: 2021-03-12 11:12:35 +0000

    uma: allow uma_zfree_pcu(..., NULL)
    
    We already allow free(NULL) and uma_zfree(..., NULL). Make
    uma_zfree_pcpu(..., NULL) work as well.
    This also means that counter_u64_free(NULL) will work.
    
    These make cleanup code simpler.
    
    MFC after:      1 week
    Sponsored by:   Rubicon Communications, LLC ("Netgate")
    Differential Revision:  https://reviews.freebsd.org/D29189
---
 sys/vm/uma_core.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c
index 8cbd1216678a..b1762500c147 100644
--- a/sys/vm/uma_core.c
+++ b/sys/vm/uma_core.c
@@ -3171,6 +3171,11 @@ uma_zfree_pcpu_arg(uma_zone_t zone, void *pcpu_item, void *udata)
 #ifdef SMP
 	MPASS(zone->uz_flags & UMA_ZONE_PCPU);
 #endif
+
+        /* uma_zfree_pcu_*(..., NULL) does nothing, to match free(9). */
+        if (pcpu_item == NULL)
+                return;
+
 	item = zpcpu_offset_to_base(pcpu_item);
 	uma_zfree_arg(zone, item, udata);
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202103121215.12CCFXXD031168>