<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libc/include, branch OPENBSD_7_3</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_3</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_3'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2021-12-25T01:13:44+00:00</updated>
<entry>
<title>Update to reflect changes over the last six years</title>
<updated>2021-12-25T01:13:44+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2021-12-25T01:13:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=53c5e2cba9eff61f67c99cd18ea5209d02611f16'/>
<id>urn:sha1:53c5e2cba9eff61f67c99cd18ea5209d02611f16</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix two issues related to thread private data in asr.</title>
<updated>2021-01-06T19:54:17+00:00</updated>
<author>
<name>otto</name>
<email></email>
</author>
<published>2021-01-06T19:54:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a99f91343a365d71d137ae486285fdf049c5cf74'/>
<id>urn:sha1:a99f91343a365d71d137ae486285fdf049c5cf74</id>
<content type='text'>
- setting up asr in single thread mode and then starting threads using asr
  would lead to multiple threads sharing the same resolver.
- destruction of a thread that has been using asr would leak data.
Problem originally reported by Alexey Sokolov and Uli Schlachter.
ok kettenis@
</content>
</entry>
<entry>
<title>gcc3, like clang and unlike our gcc4, doesn't support redirecting builtins</title>
<updated>2019-11-25T22:57:28+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2019-11-25T22:57:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=dbf2b9876db143d9320fa3f1b2b0d9e451c964c0'/>
<id>urn:sha1:dbf2b9876db143d9320fa3f1b2b0d9e451c964c0</id>
<content type='text'>
like mem{set,cpy,move} or __stack_smash_handler using asm() renaming.  So
treat gcc3 like clang and mark such functions as protected instead.

ok ayoma@
</content>
</entry>
<entry>
<title>Complete the ld.so boot cleanup: move most libc initialization from</title>
<updated>2019-06-02T01:03:01+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2019-06-02T01:03:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=a6e675c6e949db993e297cb4af8780a6a40a5b9c'/>
<id>urn:sha1:a6e675c6e949db993e297cb4af8780a6a40a5b9c</id>
<content type='text'>
_csu_finish() to _libc_preinit(), which is an .init_array function
in shared libc (and mark it INITFIRST) or a .preinit_array function
in static libc, grabbing the _dl_cb callback there from ld.so.  Then
in _csu_finish(), invoke the dl_clean_boot() callback to free ld.so's
startup bits before main() gets control.

Other cleanups this permits:
 - move various startup structures into .data.rel.ro
 - the dl* stubs in libc can be strong and call the callbacks provided
   via _dl_cb
 - no longer need to conditionalize dlctl() calls on presence of _DYNAMIC

original concept and full diff ok kettenis@
ok deraadt@
</content>
</entry>
<entry>
<title>Move 'how this works' details from namespace.h to DETAILS</title>
<updated>2019-05-13T20:00:32+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2019-05-13T20:00:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=cbcc12d4538b785f730b753915a6885e7c6a4601'/>
<id>urn:sha1:cbcc12d4538b785f730b753915a6885e7c6a4601</id>
<content type='text'>
</content>
</entry>
<entry>
<title>New futex(2) based rwlock implementation based on the mutex code.</title>
<updated>2019-02-13T13:22:14+00:00</updated>
<author>
<name>mpi</name>
<email></email>
</author>
<published>2019-02-13T13:22:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=1cc08e9dfa205222edf7fcc2dfc13ff00f572c84'/>
<id>urn:sha1:1cc08e9dfa205222edf7fcc2dfc13ff00f572c84</id>
<content type='text'>
This implementation reduces contention because threads no longer need
to spin calling sched_yield(2) before going to sleep.

Tested by many, thanks!

ok visa@, pirofti@
</content>
</entry>
<entry>
<title>Make the "not my pool" searching loop a tiny bit smarter, while</title>
<updated>2019-01-10T18:45:33+00:00</updated>
<author>
<name>otto</name>
<email></email>
</author>
<published>2019-01-10T18:45:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=93282eac7fa28695cb6880305f3757cbff94eca0'/>
<id>urn:sha1:93282eac7fa28695cb6880305f3757cbff94eca0</id>
<content type='text'>
making the number of pools variable.  Do not document the malloc
conf settings atm, don't know yet if they will stay.  Thanks to all
the testers. ok deraadt@
</content>
</entry>
<entry>
<title>Instead of trying to handle ffs() with the normal rename-mark-hidden-and-alias</title>
<updated>2018-01-18T08:23:44+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2018-01-18T08:23:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=35352e830aefedf0f54a965ee2aaf8a6ff643231'/>
<id>urn:sha1:35352e830aefedf0f54a965ee2aaf8a6ff643231</id>
<content type='text'>
dance, mark it protected.  This works better for both gcc and clang: gcc
blocks overriding of internal calls, while clang permits inlining again.

ok otto@
</content>
</entry>
<entry>
<title>Implement __cxa_thread_atexit to support C++11 thread_local scope.  The</title>
<updated>2017-12-05T13:45:31+00:00</updated>
<author>
<name>kettenis</name>
<email></email>
</author>
<published>2017-12-05T13:45:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=6995a7e31c862e513fc32eae98d52c8fc9e09580'/>
<id>urn:sha1:6995a7e31c862e513fc32eae98d52c8fc9e09580</id>
<content type='text'>
interface is also made available as __cxa_thread_atexit_impl to satisfy the
needs of GNU libstdc++.

ok guenther@, millert@
</content>
</entry>
<entry>
<title>clang doesn't propagate attributes like "asm labels" and "visibility(hidden)"</title>
<updated>2017-11-29T05:13:57+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2017-11-29T05:13:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=91809a23ddd15af26964fe79c11bc52b08afeb95'/>
<id>urn:sha1:91809a23ddd15af26964fe79c11bc52b08afeb95</id>
<content type='text'>
to builtins like mem{set,cpy,move} and __stack_smash_handler.  So, when
building with clang, instead mark those as protected visibility to get rid
of the PLT relocations.  We can't take the address of them then, but that's
ok: it's a build-time error not a run-time error.

ok kettenis@
</content>
</entry>
</feed>
