Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Make delayed free non-optional and make F do an extensive double free check. | otto | 2017-09-23 | 1 | -21/+26 | |
| | | | | ok tb@ tedu@ | |||||
* | mapalign returns MAP_FAILED for failuer; from George Koehler | otto | 2017-09-12 | 1 | -2/+2 | |
| | ||||||
* | check double free before canary for chunks; ok millert@ | otto | 2017-09-11 | 1 | -5/+5 | |
| | ||||||
* | New POSIX xlocale implementation written from scratch.libressl-v2.6.1 | schwarze | 2017-09-05 | 11 | -96/+396 | |
| | | | | | | | | | | | | Complete in the sense that all POSIX *locale(3) and *_l(3) functions are included, but in OpenBSD, we of course only really care about LC_CTYPE and we only support ASCII and UTF-8. With important help from kettenis@, guenther@, and jca@. Repeated testing in ports bulk builds by naddy@. Additional testing by jca@, sebastia@, dcoppa@, and others. OK kettenis@ dcoppa@, and guenther@ on an earlier version. Riding guenther@'s libc/librthread major bump. | |||||
* | Move mutex, condvar, and thread-specific data routes, pthread_once, and | guenther | 2017-09-05 | 2 | -11/+182 | |
| | | | | | | | | pthread_exit from libpthread to libc, along with low-level bits to support them. Major bump to both libc and libpthread. Requested by libressl team. Ports testing by naddy@ ok kettenis@ | |||||
* | delete pointless .Tn ASCII found by jca@ with mandoc -Tlint | schwarze | 2017-09-02 | 1 | -5/+4 | |
| | ||||||
* | Mention strtok_r in STANDARDS | jca | 2017-08-31 | 1 | -2/+6 | |
| | | | | POSIX 2001 instead of POSIX.1c suggested by millert@ and jmc@, ok jmc@ | |||||
* | two MALLOC_STATS only tweaks; one from David CARLIER, the other found by clang | otto | 2017-08-20 | 1 | -8/+4 | |
| | ||||||
* | Use sendsyslog() directly instead of syslog_r() for the "backwards memcpy" | guenther | 2017-08-14 | 1 | -3/+12 | |
| | | | | | | | messages, to avoid pulling in piles of other machinery unnecessarily problem observed by schwarze@ ok deraadt@ millert@ | |||||
* | Minimize #includes, particularly to avoid thread_private.h | guenther | 2017-08-12 | 2 | -7/+3 | |
| | | | | ok tedu@ | |||||
* | add missing and correct misspelled names, most in NAME sections; | schwarze | 2017-08-01 | 2 | -6/+8 | |
| | | | | | found with regress/usr.bin/mandoc/db/dbm_dump; OK jmc@ | |||||
* | zap trailing whitespace; | jmc | 2017-07-22 | 1 | -2/+2 | |
| | ||||||
* | rework the page a bit, clarify a few things, maybe better wording | tedu | 2017-07-22 | 1 | -8/+13 | |
| | ||||||
* | one more instance of the previous commit; also initialize ->offset to a | otto | 2017-07-10 | 1 | -2/+3 | |
| | | | | definite value in the size == 0 case | |||||
* | update the little endian processor list to give it a chance of matching | tedu | 2017-07-08 | 2 | -6/+6 | |
| | | | | what the reader is using. | |||||
* | Only access offset if canaries are enabled *and* size > 0, otherwise offset | otto | 2017-07-07 | 1 | -2/+2 | |
| | | | | is not initialized. Problem spotted by Carlin Bingham; ok phessler@ tedu@ | |||||
* | The 0x (or 0X) prefix in base 16 is optional so only skip over the | millert | 2017-07-06 | 6 | -18/+18 | |
| | | | | | | prefix if the character following it is a valid hex char. The C99 standard is clear that given the string "0xy" zero should be returned and endptr set to point to the "x". OK deraadt@ espie@ | |||||
* | void functions don't return 0 | tb | 2017-07-05 | 1 | -6/+2 | |
| | | | | From Klemens Nanni | |||||
* | port the RBT code to userland by making it part of libc. | dlg | 2017-06-19 | 1 | -10/+11 | |
| | | | | | | | | | | | | | | src/lib/libc/gen/tree.c is a copy of src/sys/kern/subr_tree.c, but with annotations for symbol visibility. changes to one should be reflected in the other. the malloc debug code that uses RB code is ported to RBT. because libc provides the RBT code, procmap doesn't have to reach into the kernel and build subr_tree.c itself now. mild enthusiasm from many ok guenther@ | |||||
* | Don't fall back to heapsort() if we would otherwise switch to | millert | 2017-05-30 | 1 | -7/+7 | |
| | | | | insertion sort (when the number of elements is < 7). | |||||
* | Support swapping 32-bit aligned elements on 64-bit platforms. | millert | 2017-05-24 | 1 | -22/+63 | |
| | | | | | Previously they would be swapped a byte at a time when sizeof(int) != sizeof(long). Idea from FreeBSD. | |||||
* | Document that qsort falls back to heapsort() if the recursion depth | millert | 2017-05-20 | 1 | -3/+13 | |
| | | | | exceeds 2 lg N and add a reference to the introsort paper. | |||||
* | Use David Musser's introsort algorithm to fall back to heapsort(3) | millert | 2017-05-20 | 2 | -14/+45 | |
| | | | | | | when the recursion depth reaches 2*lg(n + 1). This avoids quicksort's quadratic behavior for pathological input without appreciably changing the average run time. | |||||
* | The BSD qsort() performs tail recursion elimination on the second | millert | 2017-05-17 | 1 | -10/+25 | |
| | | | | | | | | side of the array being partitioned to save on stack space. Greater savings can be gained by choosing recursion for the smaller side of the partition and eliminating recursion for the larger side. This also results in a small but measurable performance gain. OK otto@ schwarze@ | |||||
* | Typo: freezeo -> freezero | tb | 2017-05-15 | 1 | -3/+3 | |
| | | | | From "fenderq" on freenode via tj@ | |||||
* | - fix bug wrt posix_memalign(3) of blocks between half a page and a page | otto | 2017-05-13 | 2 | -8/+18 | |
| | | | | | - document posix_memalign() does not play nice with reacallocarray(3) and freezero(3) | |||||
* | make the description strings match the code | deraadt | 2017-05-03 | 1 | -10/+10 | |
| | ||||||
* | Remove "len < 0" check; len is socklen_t (uint32_t) so can't be | millert | 2017-04-27 | 1 | -2/+2 | |
| | | | | negative. Quiets a warning from clang. OK bluhm@ | |||||
* | Rearrange text a bit to make it clear what "discarded" means; ok jmc@ deraadt@ | otto | 2017-04-23 | 1 | -8/+13 | |
| | ||||||
* | For small allocations (chunk) freezero only validates the given | otto | 2017-04-22 | 1 | -5/+10 | |
| | | | | | | | | size if canaries are enabled. In that case we have the exact requested size of the allocation. But we can at least check the given size against the chunk size if C is not enabled. Plus add some braces so my brain doesn't have to scan for dangling else problems when I see this code. | |||||
* | Fix previous. | visa | 2017-04-20 | 1 | -2/+2 | |
| | ||||||
* | Get TCB address using the RDHWR instruction instead of __get_tcb(). | visa | 2017-04-20 | 1 | -4/+5 | |
| | | | | | | | | | | | This gives fast access to the address on systems that implement the UserLocal register. TCB caching is still used when running in the single-threaded mode in order not to penalize old systems. The kernel counterpart of this change must be in place before using this diff! With guenther@ | |||||
* | don't forget to fill in canary bytes for posix_memalign(3); reported by | otto | 2017-04-18 | 1 | -1/+4 | |
| | | | | and ok jeremy@ | |||||
* | consictently use .Dv NULL and a few other tweaks; ok schwarze@ | otto | 2017-04-17 | 1 | -20/+17 | |
| | ||||||
* | whitespace fixes | otto | 2017-04-17 | 1 | -14/+14 | |
| | ||||||
* | allow clearing less than allocated and document freezero(3) better | otto | 2017-04-13 | 2 | -13/+26 | |
| | ||||||
* | New strstr() implementation from musl libc by Rich Felker. This | millert | 2017-04-12 | 1 | -44/+180 | |
| | | | | | | | | version uses the two-way string matching algorithm and is faster than the old implementation. With this change, ports that check for strstr having linear complexity time strstr will no longer replace the libc strstr with a private version. OK deraadt@ espie@ | |||||
* | tweak previous; | jmc | 2017-04-10 | 1 | -4/+4 | |
| | ||||||
* | Introducing freezero(3) a version of free that guarantees the process | otto | 2017-04-10 | 2 | -36/+130 | |
| | | | | | | no longer has access to the content of a memmory object. It does this by either clearing (if the object memory remains cached) or by calling munmap(2). ok millert@, deraadt@, guenther@ | |||||
* | Consistentcy between nmembers and size order. From Christopher Hettrick; | otto | 2017-04-06 | 1 | -8/+8 | |
| | | | | ok deraadt@ | |||||
* | first print size in meta-data then supplied arg size when an inconsistency is | otto | 2017-04-06 | 1 | -3/+3 | |
| | | | | detected wrt recallocarray() | |||||
* | rephrase more enumerations of functions | otto | 2017-03-29 | 1 | -13/+10 | |
| | ||||||
* | small cleanup & optimization; ok deraadt@ millert@ | otto | 2017-03-28 | 1 | -2/+5 | |
| | ||||||
* | Stop enumeration all allocation functions, just say "allocation functions"libressl-v2.5.2 | otto | 2017-03-26 | 1 | -32/+13 | |
| | | | | ok jmc@ deraadt@ | |||||
* | add a helper function to print all pools #ifdef MALLOC_STATS | otto | 2017-03-24 | 1 | -1/+16 | |
| | | | | from David CARLIER | |||||
* | document new recallocarray diagnostic; zap a few diagnostics that should | otto | 2017-03-24 | 1 | -8/+9 | |
| | | | | never occur | |||||
* | move recallocarray to malloc.c and | otto | 2017-03-24 | 2 | -19/+207 | |
| | | | | | | | - use internal meta-data to do more consistency checking (especially with option C) - use cheap free if possible ok deraadt@ | |||||
* | remove unneccessary macro; | jmc | 2017-03-17 | 1 | -2/+2 | |
| | ||||||
* | Strengthen description of recallocarray(3) behaviour, hoping that readers | deraadt | 2017-03-17 | 1 | -5/+10 | |
| | | | | | make the behaviour -> use case connection. help from jmc and jsing | |||||
* | Some tweaks from jmc@ and describe better what recallocarray does; | otto | 2017-03-07 | 1 | -7/+16 | |
| | | | | help and ok from tom@ and deraadt@ |