| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
and extending it to support rthreads would be a waste of time. Also, don't
show rthreads in the process listing in procfs.
Reassurances that compat_linux doesn't need this from ajacoutot@
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
|
|
|
|
| |
no binary change
|
|
|
|
|
|
|
|
|
|
|
|
| |
it's a good idea to use atomic.h operations on it. This mechanic
change updates all bit operations on p_flag to atomic_{set,clear}bits_int.
Only exception is that P_OWEUPC is set by MI code before calling
need_proftick and it's automatically cleared by ADDUPC. There's
no reason for MD handling of that flag since everyone handles it the
same way.
kettenis@ ok
|
|
|
|
|
|
|
|
|
|
| |
should never be referenced outside the context of the process to which
this stack belongs unless we do the PHOLD/PRELE dance. Loads of code
doesn't follow the rules here. Instead of trying to track down all
offenders and fix this hairy situation, it makes much more sense
to not swap kernel stacks.
From art@, tested by many some time ago.
|
|
|
|
| |
ok pedro@, miod@
|
|
|
|
|
|
|
| |
out of procfs and gets a ptrace request PT_{READ,WRITE}_{I,D} as argument;
also procfs_checkioperm() becomes process_checkioperm().
From art@ some time ago; ok kettenis@ pedro@
|
|
|
|
|
|
|
| |
one case fixed here).
miod@ "appears to be harmless"
markus@ ok
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
everyone for the prompt review and ok of this work ;-) Yeah, that includes me
too, or maybe especially me. I am sorry.
Change the sched_lock to a mutex. This fixes, among other things, the infamous
"telnet localhost &" problem. The real bug in that case was that the sched_lock
which is by design a non-recursive lock, was recursively acquired, and not
enough releases made us hold the lock in the idle loop, blocking scheduling
on the other processors. Some of the other processors would hold the biglock though,
which made it impossible for cpu 0 to enter the kernel... A nice deadlock.
Let me just say debugging this for days just to realize that it was all fixed
in an old diff noone ever ok'd was somewhat of an anti-climax.
This diff also changes splsched to be correct for all our architectures.
|
| |
|
| |
|
|
|
|
| |
rescinded 22 July 1999. Proofed by myself and Theo.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
your kernel configuration file.
By default, GENERIC will enable this.
When PTRACE is not enabled, several ptrace-like features of the procfs
filesystem will be disabled as well (namely, the ability to read and write
any process' registers, as well as attching, single stepping and detaching
to/from processes).
This should help paranoid people build better sandboxens, and us to build
smaller ramdisks.
|
| |
|
|
|
|
|
| |
Fix a reversed argument which caused procfs_checkioperm() to always
return OK". Add a few comments to avoid further confusion.
|
|
|
|
|
|
|
|
|
|
|
| |
2) Fix procfs security hole. This is basically the NetBSD fix
(which is based in part on Sean Eric Fagan's FreeBSD fix)
with a few minor changes. The change creates as function,
procfs_checkioperm(), that has check numbers 3 and 4 from sys_ptrace().
3) Make procfs_control() use procfs_checkioperm() as well (it
already had the same basic checks but some of them were incorrect).
4) Minor stylistic cleanups, including the use of the SET/CLR/ISSET
macros to aid general grokability.
|
| |
|
|
|
|
|
|
|
|
| |
discovered that I had commited a bunch of nonfunctional changes Theo
had made, but not debugged. This undoes both my changes, and Theo's.
When this code is functional, it will be put back in.
Thank you for pointing this out to me David Mazieres.
|
|
|
|
| |
without having to peg the system at securelevel -1.
|
| |
|
|
|