El 5/5/2014 1:28 PM, David Chisnall escribió:
On 5 May 2014, at 18:42, Andrey Chernov <a...@freebsd.org> wrote:

Please don't commit OpenBSD errors. Now you mix calloc() with the
realloc() for the same variable later which makes calloc() zeroing
pointless and waste of CPU.

The purpose of calloc() here is not (primarily) to get the zero'd size, it's to 
get the overflow-checking behaviour for calloc.


Yes, but I reverted it because there are other ways to check for overflows without the performance hit.

The uses of realloc() later do still potentially overflow, as they follow the 
realloc(pointer, size * sizeof(type)) antipattern.


FWIW, I actually got to this by checking kern/169302: unfortunately it is unclear if the NetBSD patch there (with or without the OpenBSD change) helps with the test case.

Pedro.


_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to