Re: uma_zfree(NULL) is broken

From: John Baldwin <jhb_at_freebsd.org>
Date: Tue, 19 Oct 2010 08:55:48 -0400
On Monday, October 18, 2010 4:59:17 pm mdf_at_freebsd.org wrote:
> There's explicit protection for free(NULL, M_FOO), but uma_zfree(zone,
> NULL) will put NULL in the local bucket and then probably return it
> later from a uma_zalloc call.  Obviously it's not a good idea to call
> uma_zfree(9) on NULL, but in this case it's an easy mistake to make
> when e.g. converting a set of malloc(9)/free(9) uses into uma(9).
> 
> So is the "right" thing to allow a uma_zfree(NULL) and silently
> succeed, like for free(9)?  That would be my guess, but I'm open to
> alternatives.

Given that free(3) and free(9) both handle NULL, I think it makes sense for 
uma_zfree() to do so as well.

-- 
John Baldwin
Received on Tue Oct 19 2010 - 11:16:26 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:08 UTC