| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
| |
no oks (it is really a pain to review properly)
extensively tested, I'm confident it'll be stable
'now is the time' from several icb inhabitants
Diff provides:
- ability to specify different allocators for different regions/maps
- a simpler implementation of the current allocator
- currently in compatibility mode: it will generate similar addresses
as the old allocator
|
| |
|
|
|
|
|
|
| |
problem has been tracked down. This fixes the sharing of the signal
handling state: shared bits go in sigacts, per-rthread bits goes in
struct proc.
ok deraadt@
|
| | |
|
| |
|
|
| |
outside the tree.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
vmmap is designed to perform address space randomized allocations,
without letting fragmentation of the address space go through the roof.
Some highlights:
- kernel address space randomization
- proper implementation of guardpages
- roughly 10% system time reduction during kernel build
Tested by alot of people on tech@ and developers.
Theo's machines are still happy.
|
| |
|
|
|
|
| |
until they're zombies and then send them signals (for intr mounts). Until
that is untangled, the sigacts change is unsafe. sthen@ was the victim
for this one
|
| |
|
|
|
|
|
|
|
|
|
|
| |
be shared (p_sigignore, p_sigcatch, P_NOCLDSTOP, P_NOCLDWAIT) moves
to struct sigacts, wihle stuff that should be per rthread (ps_oldmask,
SAS_OLDMASK, ps_sigstk) moves to struct proc. Treat the coredumping
state bits (ps_sig, ps_code, ps_type, ps_sigval) as per-rthread
until our locking around coredumping is better.
Oh, and remove the old SunOS-compat ps_usertramp member.
"I like the sound of this" tedu@
|
| |
|
|
|
|
| |
one has been weeding it, and it makes life harder.
Toasts of Brennivin for its passing from many; diff ok henning@
|
| |
|
|
| |
heap gap from max data size. nothing else changes yet. ok deraadt
|
| |
|
|
|
|
|
| |
core files. fixes a local DoS that can be carried out by
an unprivileged user.
ok kettenis
|
| |
|
|
|
|
|
|
|
| |
so that the process-level stuff is to/from struct process and not
struct proc. This fixes a bunch of problem cases in rthreads.
Based on earlier work by blambert and myself, but mostly written
at c2k10.
Tested by many: deraadt, sthen, krw, ray, and in snapshots
|
| |
|
|
|
|
|
| |
sizeof(char *), not in bytes, so we've been allocating and copying around
four or eight times as many bytes as we needed to
ok kettenis@ deraadt@
|
| |
|
|
|
| |
(not done) hasn't changed, but now it's less work to test things.
ok art deraadt
|
| |
|
|
|
|
|
| |
gcc4 from complaining about casting a pointer to an integer type of different
size.
ok guenther@, jsg@
|
| |
|
|
|
| |
from Brad Tilley <brad at 16systems dot com>;
ok oga@
|
| |
|
|
|
|
|
| |
do that and, given the security issues it exacerbates, never will.
So document it and delete the disabled support.
ok deraadt@ tedu@
|
| |
|
|
| |
media just a wee bit too much.
|
| |
|
|
|
|
| |
unconditionally.
ok miod@
|
| |
|
|
|
|
| |
NetBSD.
ok kurt@, drahn@, miod@
|
| | |
|
| |
|
|
|
| |
independent executables using the uvm_map_pie() function to
randomize the load address. okay miod@, kettenis@, drahn@
|
| |
|
|
| |
marker; found the hard way by sturm@
|
| |
|
|
| |
end. Makes static linux binaries run again.
|
| |
|
|
| |
ok deraadt@
|
| | |
|
| |
|
|
|
| |
activity for anyone. Bye bye COMPAT_NETBSD. ok tedu@, deraadt@, and many others
in the hackathon room.
|
| | |
|
| |
|
|
| |
ok pedro@
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
kern_descrip.c change ok deraadt
|
| |
|
|
| |
ok drahn@
|
| |
|
|
|
|
| |
take interp[MAXPATHLEN] off the stack. from mickey, ok otto
while here, switch above from malloc to pool, remove stupid casts
tedu@ miod@ ok
|
| |
|
|
|
| |
to see; page fault trap in linux_elf_probe (char *itp is being passed as NULL
and then "if (itp[0])" attempts to dereference it). deraadt@ "trash it asap"
|
| |
|
|
| |
while here, switch above from malloc to pool, remove stupid casts
|
| |
|
|
| |
(some unusual linux binaries), ok deraadt.
|
| | |
|
| |
|
|
|
|
|
|
|
| |
add e_flags to struct emul. this stores on/off and native flags.
check for emul enabled in check_exec(). gather all the emuls into a
emulsw so a sysctl can find them. create sysctl. move maxhdrsiz calcualation
into init_main so it cleans up sys_execve codepath. teach sysctl utility
to grok kern.emul hierarchy.
requested and ok deraadt@ some comments from mickey@
|
| |
|
|
| |
Close PR 3262
|
| | |
|
| |
|
|
| |
not already used. limit nphdr to 32. ok tedu@
|
| | |
|
| |
|
|
|
| |
should not be required, and may be violated soon. With two fixes art
pointed out. ok art@
|
| | |
|
| |
|
|
|
|
|
|
| |
You mark one section with VMCMD_BASE and the rest are marked RELATIVE.
Use that to load ELF interpreter correctly in all cases.
Inspired by NetBSD. Great debugging help from drahn@
deraadt@ ok
|
| |
|
|
| |
ok deraadt@ art@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
the time.
This could lead to problems when a process wants to do an exec on the same
vnode it's being run from and needs to copy in arguments from an uncached
page in the data segment. When that happens uvm detects a vnode deadlock
and returns an error causing execve() return EFAULT.
This fixes the regress test in regress/sys/kern/exec_self
Also, initialize scriptvp early in exec_script because it could be
used uninitialized in a failure case.
|
| | |
|
| |
|
|
| |
Use where VTEXT was set in vnode flags before. Doesn't do anything else (yet).
|