| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that we can flush the register stack prior to entering the kernel.
This avoids having dirty registers and saves us from having to
manually write them to the backing store from within the kernel.
In that respect, flushing the RSE is both functionally required as
well as performance optimal.
On average we had 18 dirty registers when getcontext(2) was called
from libthr. Since libthr does not switch back to a context created
by getcontext(2), not having dealt with the dirty registers was
harmless.
|
|
|
|
|
|
|
| |
on the corresponding .proc directive, or the .endp must not have a
name at all.
While here, remove an artificial dependency in Ovfork.S by performing
manual register renaming.
|
|
|
|
| |
Reminded by: marcel
|
|
|
|
|
| |
These were probably not cleaned up back in whatever murky past these
files were split into separate files.
|
| |
|
|
|
|
|
|
| |
layout is about to change.
The sysctl based method still returns correct information.
|
|
|
|
| |
the swap_pager layout.
|
| |
|
|
|
|
|
|
|
|
|
| |
the userland version of [gs]etcontext to switch between a thread
and the UTS scheduler (and back again). This also fixes a bug
in i386 _thr_setcontext() which wasn't properly restoring the
context.
Reviewed by: davidxu
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Submitted by: julian
|
|
|
|
|
|
|
| |
from one of my last commits. This only affected priority ceiling
mutexes.
Pointy hat to: deischen
|
|
|
|
|
| |
comment says and don't write the first 3 arguments to FRAME_TRAPARG_*
as they are specific to sigframes.
|
| |
|
| |
|
|
|
|
| |
Add const specifiers to constant function arguments.
|
| |
|
|
|
|
|
| |
PR: 51729
Submitted by: Kang Liu <liukang@bjpu.edu.cn>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
almost identical.
* Merge strchr(3) and strrchr(3) to strchr(3) since the two functions
are almost identical.
* Make the wording of index(3) and strchr(3) more similar.
* mdoc(7) cleanup.
Submitted by: SUZUKI Koichi <metal@gc5.so-net.ne.jp>, keramida, myself
PR: docs/32054
Reviewed by: ru
Approved by: ceri (mentor)
|
|
|
|
| |
Reviewed by: deischen
|
| |
|
| |
|
|
|
|
|
|
| |
switching anymore, so there's no need to save and restore GP. This
change breaks threaded applications linked against libc_r. Pull the
tier 2 card again: relink. This will link against libthr instead.
|
|
|
|
|
|
| |
size_t, not int. This could be fatal where size_t is long.
Reviewed by: bp
|
|
|
|
|
|
|
| |
be closed. This fixes a file descriptor leak when closing a kqueue() fd.
Reviewed by: deischen
MFC after: 1 week
|
|
|
|
| |
Spotted by: GCC
|
|
|
|
| |
and one of the usual sizeof(in_addr_t) == sizeof(u_long) bugs.
|
|
|
|
|
|
| |
permission set based on a more restrictive mask.
Submitted by: Glen Gibb <grg@ridley.unimelb.edu.au>
|
|
|
|
| |
distributed.
|
|
|
|
| |
OK'ed by: phk
|
|
|
|
|
| |
may contain crypto. The days of ITAR paranoia are over, and the simple
macro tests that remain are sufficient.
|
|
|
|
|
| |
the crunched binary) get a non-cryptographic telnet. This is overkill
in that it covers stuff that is not normally used in a crunched binary.
|
|
|
|
|
| |
function this, which expands to PAL calls (rduniq and wruniq).
This needs adjustment when TLS is implemented.
|
|
|
|
| |
distribution is used. This only affects release-building.
|
|
|
|
|
| |
silly bugs that probably wont quite make a segfault. eg: passing a pointer
to an int to sysctl instead of a pointer to a size_t.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
return EACCES on non-Unix domain sockets as demonstrated by the
following program:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
int
main(int argc, char *argv[])
{
struct sockaddr_in rem_addr;
int sock;
if ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0) {
perror("socket");
exit(1);
}
bzero((char *)&rem_addr, sizeof(rem_addr));
rem_addr.sin_family = AF_INET;
rem_addr.sin_addr.s_addr = INADDR_NONE;
rem_addr.sin_port = htons(10000);
if (connect(sock, (struct sockaddr *)&rem_addr,
sizeof(rem_addr)) < 0) {
perror("connect");
exit(1);
}
}
The call chain returning this value is probably:
kern/uipc_syscalls.c:connect
kern/uipc_socket.c:soconnect
netinet/tcp_usrreq.c:tcp_usr_connect
netinet/tcp_output.c:tcp_output
netinet/ip_output.c:ip_output
Reviewed by: schweikh (mentor)
MFC after: 2 weeks
|
|
|
|
| |
code).
|
|
|
|
|
|
|
|
| |
do not also provide a __generic_XXX version as well. This is how we
used to runtime select the generic vs i387 versions on the i386 platform.
This saves a pile of #defines in the src/math_private.h file to undo the
__generic_XXX renames in some of the *.c files.
|
| |
|
|
|
|
|
|
|
|
|
| |
fp emulator, stop doing the runtime selection of hardware or emulated
floating point operations on i386. Note that I have not suppressed the
duplicate compiles yet.
While here, fix the alpha. It has provided specific copysign/copysignf
functions since the beginning of time, but they have never been used.
|
|
|
|
|
|
|
|
| |
This eliminates ping-ponging of locks, where the idle KSE wakes
up only to find the lock it needs is being held. This gives
little or no gain to M:N mode but greatly speeds up 1:1 mode.
Reviewed & Tested by: davidxu
|
|
|
|
|
|
| |
the "crypto" distribution.
Approved by: des
|
|
|
|
| |
for the use of non-GCC compilers and C++ code.
|
|
|
|
| |
and just cause lots of warnings.
|