summaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Alias hypotl() and cabsl() for platforms where long double is the samedas2008-03-302-2/+12
| | | | as double.
* Implement cabsl() in terms of hypotl().das2008-03-301-0/+20
| | | | Submitted by: Steve Kargl <sgk@troutmask.apl.washington.edu>
* Implement hypotl(). This is bde's conversion of fdlibm hypot(), with minordas2008-03-301-0/+139
| | | | fixes for ld128 by me.
* Use fabs[f]() instead of bit fiddling for setting absolute values.bde2008-03-302-4/+4
| | | | | | | | | | | This makes little difference in float precision, but in double precision gives a speedup of about 30% on amd64 (A64 CPU) and i386 (A64). This depends on fabs[f]() being inline and efficient. The bit fiddling (or any use of SET_HIGH_WORD(), which libm does too much because it was best on old 32-bit machines) always causes packing overheads and sometimes causes stalls in the packing, since it operates on only part of a variable in the double precision case. It apparently did cause stalls in a critical path here.
* Use the expression fabs(x+0.0)-fabs(y+0.0) instead ofbde2008-03-302-2/+2
| | | | | | | | fabs(x+0.0)+fabs(y+0.0) when mixing NaNs. This improves consistency of the result by making it harder for the compiler to reorder the operands. (FP addition is not necessarily commutative because the order of operands makes a difference on some machines iff the operands are both NaNs.)
* Fix a missing mask in a hi+lo decomposition. Thus bug made the extrabde2008-03-301-1/+1
| | | | | | precision in software useless, so hypotf() had some errors in the 1-2 ulp range unless there is extra precision in hardware (as happens on i386).
* Don't call xdrrec_skiprecord in the non-blocking case. Ifdfr2008-03-301-1/+2
| | | | | | | | | | | __xdrrec_getrec has returned TRUE, then we have a complete request in the buffer - calling xdrrec_skiprecord is not necessary. In particular, if there is another record already buffered on the stream, xdrrec_skiprecord will discard both this request and the next one, causing the call to xdr_callmsg to fail and the stream to be closed. Sponsored by: Isilon Systems
* Don't assume that there is readable data on the stream after thedfr2008-03-301-0/+6
| | | | fragment header.
* Remove options MK_LIBKSE and DEFAULT_THREAD_LIB now that we no longerru2008-03-291-4/+1
| | | | build libkse. This should fix WITHOUT_LIBTHR builds as a side effect.
* Include math.h for the fmaf() prototype.das2008-03-291-0/+2
|
* Fix some rather obscene code that has ambiguous if...if...else...das2008-03-296-10/+36
| | | | constructs in it.
* Document modff() and modfl(). Technically, modff() and modfl()das2008-03-292-12/+23
| | | | | | live in libm, while modf() lives in libc due to historical mistakes. I'm claiming in the manpage that they all live in libm, since programmers should not rely on the mistake.
* - Add a man page for cpuset_getaffinity() and cpuset_setaffinity() andjeff2008-03-292-2/+159
| | | | | | hook it up to the build. Reviewed by: brueffer (skeleton and formatting assistance)
* - Add a man page for cpuset(), cpuset_setid(), and cpuset_getid() and hookjeff2008-03-292-1/+227
| | | | | | it up to the build. Reviewed by: brueffer (skeleton and formatting assistance)
* Add support to mincore for detecting whether a page is part of aps2008-03-281-0/+2
| | | | | | "super" page or not. Reviewed by: alc, ups
* Removed no longer existing CTL_MACHDEP defines.ru2008-03-261-12/+1
| | | | Inspired by: phk
* Add the new kernel-mode NFS Lock Manager. To use it instead of thedfr2008-03-263-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | user-mode lock manager, build a kernel with the NFSLOCKD option and add '-k' to 'rpc_lockd_flags' in rc.conf. Highlights include: * Thread-safe kernel RPC client - many threads can use the same RPC client handle safely with replies being de-multiplexed at the socket upcall (typically driven directly by the NIC interrupt) and handed off to whichever thread matches the reply. For UDP sockets, many RPC clients can share the same socket. This allows the use of a single privileged UDP port number to talk to an arbitrary number of remote hosts. * Single-threaded kernel RPC server. Adding support for multi-threaded server would be relatively straightforward and would follow approximately the Solaris KPI. A single thread should be sufficient for the NLM since it should rarely block in normal operation. * Kernel mode NLM server supporting cancel requests and granted callbacks. I've tested the NLM server reasonably extensively - it passes both my own tests and the NFS Connectathon locking tests running on Solaris, Mac OS X and Ubuntu Linux. * Userland NLM client supported. While the NLM server doesn't have support for the local NFS client's locking needs, it does have to field async replies and granted callbacks from remote NLMs that the local client has contacted. We relay these replies to the userland rpc.lockd over a local domain RPC socket. * Robust deadlock detection for the local lock manager. In particular it will detect deadlocks caused by a lock request that covers more than one blocking request. As required by the NLM protocol, all deadlock detection happens synchronously - a user is guaranteed that if a lock request isn't rejected immediately, the lock will eventually be granted. The old system allowed for a 'deferred deadlock' condition where a blocked lock request could wake up and find that some other deadlock-causing lock owner had beaten them to the lock. * Since both local and remote locks are managed by the same kernel locking code, local and remote processes can safely use file locks for mutual exclusion. Local processes have no fairness advantage compared to remote processes when contending to lock a region that has just been unlocked - the local lock manager enforces a strict first-come first-served model for both local and remote lockers. Sponsored by: Isilon Systems PR: 95247 107555 115524 116679 MFC after: 2 weeks
* Fix some "in in" typos in comments.brueffer2008-03-264-4/+4
| | | | | | | PR: 121490 Submitted by: Anatoly Borodin <anatoly.borodin@gmail.com> Approved by: rwatson (mentor), jkoshy MFC after: 3 days
* Compile libthr with warnings.ru2008-03-251-0/+3
| | | | (Somehow this file sneaked from initial commit.)
* Compile libthr with warnings.ru2008-03-254-6/+12
|
* Fixed mis-implementation of pthread_mutex_get{spin,yield}loops_np().ru2008-03-251-4/+7
| | | | Reviewed by: davidxu
* - Restore kse.h in this directory so other tools don't find it by mistake.jeff2008-03-233-1/+137
| | | | | | - Restore the ability to debug kse coredumps in 8.0. Suggested by: marcel
* Add POSIX pthread API pthread_getcpuclockid() to get a thread's cpudavidxu2008-03-223-0/+50
| | | | time clock id.
* Use linker set to collection all target operations.davidxu2008-03-224-13/+22
|
* Add MLINK for archive_write_close.kaiw2008-03-211-0/+1
| | | | Approved by: jkoshy(mentor), kientzle
* Resolve __error()'s PLT early so that it needs not to be resolved again,davidxu2008-03-211-0/+3
| | | | | otherwise rwlock is recursivly called when signal happens and the __error was never resolved before.
* pthread_mutexattr_destroy() was accidentally broken in last revision,ru2008-03-201-0/+1
| | | | unbreak it. We should really start compiling this with warnings.
* s/wait/delta/ to avoid namespace collision.des2008-03-201-16/+16
| | | | MFC after: 2 weeks
* Preserve application code's errno in rtld locking code, it attemps to keepdavidxu2008-03-201-2/+31
| | | | any case safe.
* Make pthread_mutexattr_settype to return error number directly anddavidxu2008-03-201-3/+1
| | | | | | conformant to POSIX specification. Bug reported by: modelnine at modelnine dt org
* don't reduce new thread's refcount if current thread can not set cpusetdavidxu2008-03-191-1/+1
| | | | for it, since the new thread will reduce it by itself.
* - Trim trailing spaces.davidxu2008-03-191-8/+8
| | | | - Use a different sigmask variable name to avoid confusing.
* if passed thread pointer is equal to current thread, pass -1 to kerneldavidxu2008-03-191-11/+19
| | | | to speed up searching.
* Ensure that the section header table is written out in an orderjkoshy2008-03-191-3/+2
| | | | | | | consistent with the section indices returned to the application by elf_ndxscn(). Submitted by: kaiw
* Clarify that the ELF library only sets the sh_entsize field of ajkoshy2008-03-191-4/+4
| | | | | | | | | section header entry if the application is not taking charge of ELF object layout. Update (c) years, and bump the manual page's date. Submitted by: kaiw
* Add mandatory "security description" SDP parameter to the PANU profileemax2008-03-191-0/+2
| | | | | Pointed-out by: Iain Hibbert < plunky at rya-online dot net > MFC after: 3 days
* Add PSM and Load Factor SDP parameters to the BNEP based profilesemax2008-03-181-9/+24
| | | | | | | | | | | (NAP, GN and PANU). No reason to not to support them. Separate SDP parameters data structures for the BNEP based profiles. Generalize Service Availability SDP parameter creation. Requested by: Iain Hibbert < plunky at rya-online dot net > MFC after: 3 days
* - Copy signal mask out before THR_UNLOCK(), because THR_UNLOCK() may calldavidxu2008-03-183-4/+17
| | | | | | | | _thr_suspend_check() which messes sigmask saved in thread structure. - Don't suspend a thread has force_exit set. - In pthread_exit(), if there is a suspension flag set, wake up waiting- thread after setting PS_DEAD, this causes waiting-thread to break loop in suspend_common().
* Don't allocate the constant array "props" on the stack in wctype.antoine2008-03-171-1/+1
| | | | | | | PR: 74743 Submitted by: knut st. osmundsen Approved by: rwatson (mentor) MFC after: 1 month
* scandir(3) previously used st_size to obtain an initial estimatedas2008-03-161-13/+3
| | | | | | | | | | | | | of the array length needed to store all the directory entries. Although BSD has historically guaranteed that st_size is the size of the directory file, POSIX does not, and more to the point, some recent filesystems such as ZFS use st_size to mean something else. The fix is to not stat the directory at all, set the initial array size to 32 entries, and realloc it in powers of 2 if that proves insufficient. PR: 113668
* Actually delete SIGCANCEL mask for suspended thread, so the signal will notdavidxu2008-03-161-3/+2
| | | | be masked when it is resumed.
* Update a comment: the format bid only runs once per archive; it nokientzle2008-03-151-9/+2
| | | | longer runs once per entry.
* Free up the entry objects allocated during this test.kientzle2008-03-151-0/+3
|
* Release the buffers used for exercising the compress code.kientzle2008-03-151-0/+3
|
* Remove the duplicate "archive_format" and "archive_format_name" fieldskientzle2008-03-157-29/+22
| | | | | | | from the private archive_write structure and fix up all writers to use the format fields in the base "archive" structure. This error made it impossible to query the format after setting up a writer because the write format was stored in an inaccessible place.
* Correct a sign mismatch that only showed up on 64-bit systems.kientzle2008-03-151-2/+2
| | | | Pointy hat: me
* Refactor the mtree code a bit to make the layering clearer: Eachkientzle2008-03-151-106/+172
| | | | | | "file" is described by multiple "lines" each possibly containing multiple "keywords." Incorporate some additions from Joerg Sonnenberger to handle linked files and correctly deal with backing files on disk.
* FreeBSD does have fstat().kientzle2008-03-152-1/+2
| | | | Correct the nasty typo this uncovers.
* Testability is more important than standards conformance.kientzle2008-03-151-3/+8
| | | | | | Disable the use of PaxHeader.<pid> for the fake pax extension pathname until I can make the name here settable. Otherwise, tests that try to compare output to static pre-generated reference files break.
* Ignore a few more common files.kientzle2008-03-151-1/+7
|
OpenPOWER on IntegriCloud