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
This commit is contained in:
Kristof Provost 2021-03-10 15:11:59 +01:00
parent aaf998056e
commit b8f7267d49

View File

@ -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);
}