| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Tested by cwen@ and myself. Thanks to pirofti@ for creating the
userland timecounter feature.
ok kettenis@ pirofti@ deraadt@ cheloha@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This diff exposes parts of clock_gettime(2) and gettimeofday(2) to
userland via libc eliberating processes from the need for a context
switch everytime they want to count the passage of time.
If a timecounter clock can be exposed to userland than it needs to set
its tc_user member to a non-zero value. Tested with one or multiple
counters per architecture.
The timing data is shared through a pointer found in the new ELF
auxiliary vector AUX_openbsd_timekeep containing timehands information
that is frequently updated by the kernel.
Timing differences between the last kernel update and the current time
are adjusted in userland by the tc_get_timecount() function inside the
MD usertc.c file.
This permits a much more responsive environment, quite visible in
browsers, office programs and gaming (apparently one is are able to fly
in Minecraft now).
Tested by robert@, sthen@, naddy@, kmos@, phessler@, and many others!
OK from at least kettenis@, cheloha@, naddy@, sthen@
|
|
|
|
|
|
|
| |
from libpthread to libc. No changes to the build yet, just making it
easier to review the substantive diffs.
ok beck@ kettenis@ tedu@
|
|
|
|
|
|
| |
go direct instead of through the PLT.
ok millert@ kettenis@
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
sig{block,setmask} to directly using the sigprocmask syscall. Rewrite
sig{set,long}jmp based on {set,long}jmp to avoid the deprecated
store/load-multiple instructions.
in snaps; ok deraadt@
|
|
|
|
| |
ok kettenis@
|
|
|
|
| |
wondering about that
|
|
|
|
|
|
| |
and ldexp().
ok millert@
|
|
|
|
|
|
|
| |
the ASM *setjmp implementations.
Skip the PLT when calling them on amd64 (other archs to do this after testing)
ok miod@
|
|
|
|
| |
Secure-PLT ABI.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
where appropriate. Among other things makes the symbols consistent
across all architectures (notably where ldbl mantissa is 53 bits).
While at it, kill unused LINTLIBRARY/PROTOLIB1 cruft which was there
to trick lint into recording the right prototypes for aliased
functions. Most of the work done at the awesome n2k13 hackathon.
Agreed by kettenis@, guenther@, matthew@.
|
|
|
|
| |
ok guenther millert kettenis
|
|
|
|
|
| |
It turns out <float.h> is the right file to pull in.
ok millert
|
| |
|
|
|
|
|
|
| |
Correct the namespace protections for sigreturn(), sigwait(), and psignal()
ok millert@
|
|
|
|
|
| |
on this historical behavior; so we're stuck in this stupid situation.
No cookie for me.
|
|
|
|
| |
them in libc for a very long time. OK guenther@.
|
|
|
|
|
|
|
|
| |
the invalid exception bits, as described in Section 3.3.6.1.1 of
PowerPC Architecture Programming Environments Manual.
A proper way to cause an invalid operation exception is to set
FPSCR[VXSOFT]. Similarly, we clear all the FPSCR[VX*] bits otherwise.
|
|
|
|
| |
are available. spotted by theo
|
|
|
|
|
|
| |
- remove frexp in hppa64, cloned from hppa
- move generic ieee754 implementations of modf and ldexp to gen
ok kettenis@, "looks good" millert@
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- is{inf,nan} should be macros for real-floating, so rename to
__is{inf,nan}, per C99
- implement C99 __fpclassify(), __fpclassifyf(), __isfinite(),
__isfinitef(), __isnormal(), __isnormalf(), __signbit(), __signbitf()
- long functions added, but not yet enabled, till ieee.h is fixed
- implement vax equivalents of the functions
- reimplement isinff, isnanf in a better way, and move to libc
- add qnan bytes for all archs
- bump major
man pages will follow
ok millert@. arm bits looked over by drahn@
discussed w/ theo, who showed the right direction, to put these
functions in libc
|
|
|
|
|
|
|
|
|
| |
Not sure what's more surprising: how long it took for NetBSD to
catch up to the rest of the BSDs (including UCB), or the amount of
code that NetBSD has claimed for itself without attributing to the
actual authors.
OK deraadt@
|
| |
|
| |
|
|
|
|
|
| |
for this first cut, we will do this for alloca() using alloca.c by
adding it to LSRCS
|
|
|
|
| |
okay deraadt@ (tested them all)
|
|
|
|
|
|
| |
no need to have a copy for each platform with ieee floating point,
only vax needs a special version (which probably has similar bugs).
OK and with help from otto@
|
|
|
|
| |
ok miod@ deraadt@
|
| |
|
|
|
|
| |
rescinded 22 July 1999. Proofed by myself and Theo.
|
|
|
|
|
|
|
| |
version. Normally, gcc provides its own alloca() (unless -fno-builtin
is specified). The C version is decidedly suboptimal--we really
need proper assembler versions but this will work as a stop-gap
measure.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
still using -traditional-cpp.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
from a7r@andern.org
|