CVS log for src/sys/fs/procfs/procfs_fpregs.c
Up to [FreeBSD] / src / sys / fs / procfs
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
Revision 1.37.2.1.2.1: download - view: text, markup, annotated - select for diffs
Fri Nov 11 04:20:22 2011 UTC (2 months, 4 weeks ago) by kensmith
Branches: RELENG_9_0
CVS tags: RELENG_9_0_0_RELEASE
Diff to: previous 1.37.2.1: preferred, colored
Changes since revision 1.37.2.1: +0 -0 lines
SVN rev 227445 on 2011-11-11 04:20:22Z by kensmith Copy stable/9 to releng/9.0 as part of the FreeBSD 9.0-RELEASE release cycle. Approved by: re (implicit)
Revision 1.37.2.1: download - view: text, markup, annotated - select for diffs
Fri Sep 23 00:51:37 2011 UTC (4 months, 2 weeks ago) by kensmith
Branches: RELENG_9
CVS tags: RELENG_9_0_BP
Branch point for: RELENG_9_0
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +0 -0 lines
SVN rev 225736 on 2011-09-23 00:51:37Z by kensmith Copy head to stable/9 as part of 9.0-RELEASE release cycle. Approved by: re (implicit)
Revision 1.34.2.4: download - view: text, markup, annotated - select for diffs
Tue Mar 1 20:44:14 2011 UTC (11 months, 1 week ago) by dchagin
Branches: RELENG_8
Diff to: previous 1.34.2.3: preferred, colored; branchpoint 1.34: preferred, colored; next MAIN 1.35: preferred, colored
Changes since revision 1.34.2.3: +1 -1 lines
SVN rev 219144 on 2011-03-01 20:44:14Z by dchagin MFC r217896: Add macro to test the sv_flags of any process. Change some places to test the flags instead of explicit comparing with address of known sysentvec structures.
Revision 1.37: download - view: text, markup, annotated - select for diffs
Wed Jan 26 20:03:58 2011 UTC (12 months, 2 weeks ago) by dchagin
Branches: MAIN
CVS tags: RELENG_9_BP, HEAD
Branch point for: RELENG_9
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +1 -1 lines
SVN rev 217896 on 2011-01-26 20:03:58Z by dchagin Add macro to test the sv_flags of any process. Change some places to test the flags instead of explicit comparing with address of known sysentvec structures. MFC after: 1 month
Revision 1.33.12.1: download - view: text, markup, annotated - select for diffs
Tue Dec 21 17:10:29 2010 UTC (13 months, 2 weeks ago) by kensmith
Branches: RELENG_7_4
CVS tags: RELENG_7_4_0_RELEASE
Diff to: previous 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33: +0 -0 lines
SVN rev 216618 on 2010-12-21 17:10:29Z by kensmith Copy stable/7 to releng/7.4 in preparation for FreeBSD-7.4 release. Approved by: re (implicit)
Revision 1.34.2.3.2.1: download - view: text, markup, annotated - select for diffs
Tue Dec 21 17:09:25 2010 UTC (13 months, 2 weeks ago) by kensmith
Branches: RELENG_8_2
CVS tags: RELENG_8_2_0_RELEASE
Diff to: previous 1.34.2.3: preferred, colored; next MAIN 1.34.2.4: preferred, colored
Changes since revision 1.34.2.3: +0 -0 lines
SVN rev 216617 on 2010-12-21 17:09:25Z by kensmith Copy stable/8 to releng/8.2 in preparation for FreeBSD-8.2 release. Approved by: re (implicit)
Revision 1.34.2.3: download - view: text, markup, annotated - select for diffs
Fri Dec 3 21:52:01 2010 UTC (14 months, 1 week ago) by kib
Branches: RELENG_8
CVS tags: RELENG_8_2_BP
Branch point for: RELENG_8_2
Diff to: previous 1.34.2.2: preferred, colored; branchpoint 1.34: preferred, colored
Changes since revision 1.34.2.2: +4 -0 lines
SVN rev 216160 on 2010-12-03 21:52:01Z by kib
MFC r216120:
For /proc/<pid>/{regs,fpregs} read access, require the thread to be in
stopped state. Otherwise, return EBUSY as is done for write case.
Approved by: re (bz)
Revision 1.36: download - view: text, markup, annotated - select for diffs
Thu Dec 2 12:44:51 2010 UTC (14 months, 1 week ago) by kib
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +4 -0 lines
SVN rev 216120 on 2010-12-02 12:44:51Z by kib
For non-stopped threads, td_frame pointer is undefined. As a
consequence, fill_regs() and fill_fpregs() access random data, usually
on the thread kernel stack. Most often the td_frame points to the
previous frame saved by last kernel entry sequence, but this is not
guaranteed.
For /proc/<pid>/{regs,fpregs} read access, require the thread to be in
stopped state. Otherwise, return EBUSY as is done for write case.
Reported and tested by: pho
Approved by: des (procfs maintainer)
MFC after: 1 week
Revision 1.34.2.2.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 14 02:09:06 2010 UTC (19 months, 4 weeks ago) by kensmith
Branches: RELENG_8_1
CVS tags: RELENG_8_1_0_RELEASE
Diff to: previous 1.34.2.2: preferred, colored; next MAIN 1.34.2.3: preferred, colored
Changes since revision 1.34.2.2: +0 -0 lines
SVN rev 209145 on 2010-06-14 02:09:06Z by kensmith Copy stable/8 to releng/8.1 in preparation for 8.1-RC1. Approved by: re (implicit)
Revision 1.34.2.2: download - view: text, markup, annotated - select for diffs
Wed Apr 7 02:24:41 2010 UTC (22 months ago) by nwhitehorn
Branches: RELENG_8
CVS tags: RELENG_8_1_BP
Branch point for: RELENG_8_1
Diff to: previous 1.34.2.1: preferred, colored; branchpoint 1.34: preferred, colored
Changes since revision 1.34.2.1: +3 -4 lines
SVN rev 206336 on 2010-04-07 02:24:41Z by nwhitehorn MFC r205014,205015: Provide groundwork for 32-bit binary compatibility on non-x86 platforms, for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32 option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts of the kernel and enhances the freebsd32 compatibility code to support big-endian platforms. This MFC is required for MFCs of later changes to the freebsd32 compatibility from HEAD. Requested by: kib
Revision 1.35: download - view: text, markup, annotated - select for diffs
Thu Mar 11 14:49:06 2010 UTC (23 months ago) by nwhitehorn
Branches: MAIN
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +3 -4 lines
SVN rev 205014 on 2010-03-11 14:49:06Z by nwhitehorn Provide groundwork for 32-bit binary compatibility on non-x86 platforms, for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32 option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts of the kernel and enhances the freebsd32 compatibility code to support big-endian platforms. Reviewed by: kib, jhb
Revision 1.33.10.1: download - view: text, markup, annotated - select for diffs
Wed Feb 10 00:26:20 2010 UTC (2 years ago) by kensmith
Branches: RELENG_7_3
CVS tags: RELENG_7_3_0_RELEASE
Diff to: previous 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33: +0 -0 lines
SVN rev 203736 on 2010-02-10 00:26:20Z by kensmith Copy stable/7 to releng/7.3 as part of the 7.3-RELEASE process. Approved by: re (implicit)
Revision 1.34.2.1.2.1: download - view: text, markup, annotated - select for diffs
Sun Oct 25 01:10:29 2009 UTC (2 years, 3 months ago) by kensmith
Branches: RELENG_8_0
CVS tags: RELENG_8_0_0_RELEASE
Diff to: previous 1.34.2.1: preferred, colored; next MAIN 1.34.2.2: preferred, colored
Changes since revision 1.34.2.1: +0 -0 lines
SVN rev 198460 on 2009-10-25 01:10:29Z by kensmith Copy stable/8 to releng/8.0 as part of 8.0-RELEASE release procedure. Approved by: re (implicit)
Revision 1.34.2.1: download - view: text, markup, annotated - select for diffs
Mon Aug 3 08:13:06 2009 UTC (2 years, 6 months ago) by kensmith
Branches: RELENG_8
CVS tags: RELENG_8_0_BP
Branch point for: RELENG_8_0
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +0 -0 lines
SVN rev 196045 on 2009-08-03 08:13:06Z by kensmith Copy head to stable/8 as part of 8.0 Release cycle. Approved by: re (Implicit)
Revision 1.33.8.1: download - view: text, markup, annotated - select for diffs
Wed Apr 15 03:14:26 2009 UTC (2 years, 9 months ago) by kensmith
Branches: RELENG_7_2
CVS tags: RELENG_7_2_0_RELEASE
Diff to: previous 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33: +0 -0 lines
SVN rev 191087 on 2009-04-15 03:14:26Z by kensmith Create releng/7.2 from stable/7 in preparation for 7.2-RELEASE. Approved by: re (implicit)
Revision 1.34: download - view: text, markup, annotated - select for diffs
Mon Mar 2 18:43:50 2009 UTC (2 years, 11 months ago) by kib
Branches: MAIN
CVS tags: RELENG_8_BP
Branch point for: RELENG_8
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +3 -3 lines
SVN rev 189282 on 2009-03-02 18:43:50Z by kib Use the p_sysent->sv_flags flag SV_ILP32 to detect 32bit process executing on 64bit kernel. This eliminates the direct comparisions of p_sysent with &ia32_freebsd_sysvec, that were left intact after r185169.
Revision 1.33.6.1: download - view: text, markup, annotated - select for diffs
Tue Nov 25 02:59:29 2008 UTC (3 years, 2 months ago) by kensmith
Branches: RELENG_7_1
CVS tags: RELENG_7_1_0_RELEASE
Diff to: previous 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33: +0 -0 lines
SVN rev 185281 on 2008-11-25 02:59:29Z by kensmith Create releng/7.1 in preparation for moving into RC phase of 7.1 release cycle. Approved by: re (implicit)
Revision 1.32.2.1.4.1: download - view: text, markup, annotated - select for diffs
Thu Oct 2 02:57:24 2008 UTC (3 years, 4 months ago) by kensmith
Branches: RELENG_6_4
CVS tags: RELENG_6_4_0_RELEASE
Diff to: previous 1.32.2.1: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32.2.1: +0 -0 lines
SVN rev 183531 on 2008-10-02 02:57:24Z by kensmith Create releng/6.4 from stable/6 in preparation for 6.4-RC1. Approved by: re (implicit)
Revision 1.32.2.1: download - view: text, markup, annotated - select for diffs
Thu May 24 16:18:50 2007 UTC (4 years, 8 months ago) by des
Branches: RELENG_6
CVS tags: RELENG_6_4_BP, RELENG_6_3_BP, RELENG_6_3_0_RELEASE, RELENG_6_3
Branch point for: RELENG_6_4
Diff to: previous 1.32: preferred, colored; next MAIN 1.33: preferred, colored
Changes since revision 1.32: +3 -1 lines
MFC: fix infinite loop bug
Revision 1.33: download - view: text, markup, annotated - select for diffs
Sun Apr 15 13:29:36 2007 UTC (4 years, 9 months ago) by des
Branches: MAIN
CVS tags: RELENG_7_BP, RELENG_7_4_BP, RELENG_7_3_BP, RELENG_7_2_BP, RELENG_7_1_BP, RELENG_7_0_BP, RELENG_7_0_0_RELEASE, RELENG_7_0, RELENG_7
Branch point for: RELENG_7_4, RELENG_7_3, RELENG_7_2, RELENG_7_1
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +3 -1 lines
Fix the same bug as in procfs_doproc{,db}regs(): check that uio_offset is
0 upon entry, and don't reset it before returning.
MFC after: 3 weeks
Revision 1.32: download - view: text, markup, annotated - select for diffs
Thu Jun 30 07:49:21 2005 UTC (6 years, 7 months ago) by peter
Branches: MAIN
CVS tags: RELENG_6_BP, RELENG_6_2_BP, RELENG_6_2_0_RELEASE, RELENG_6_2, RELENG_6_1_BP, RELENG_6_1_0_RELEASE, RELENG_6_1, RELENG_6_0_BP, RELENG_6_0_0_RELEASE, RELENG_6_0
Branch point for: RELENG_6
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +46 -3 lines
Jumbo-commit to enhance 32 bit application support on 64 bit kernels. This is good enough to be able to run a RELENG_4 gdb binary against a RELENG_4 application, along with various other tools (eg: 4.x gcore). We use this at work. ia32_reg.[ch]: handle the 32 bit register file format, used by ptrace, procfs and core dumps. procfs_*regs.c: vary the format of proc/XXX/*regs depending on the client and target application. procfs_map.c: Don't print a 64 bit value to 32 bit consumers, or their sscanf fails. They expect an unsigned long. imgact_elf.c: produce a valid 32 bit coredump for 32 bit apps. sys_process.c: handle 32 bit consumers debugging 32 bit targets. Note that 64 bit consumers can still debug 32 bit targets. IA64 has got stubs for ia32_reg.c. Known limitations: a 5.x/6.x gdb uses get/setcontext(), which isn't implemented in the 32/64 wrapper yet. We also make a tiny patch to gdb pacify it over conflicting formats of ld-elf.so.1. Approved by: re
Revision 1.30.2.1: download - view: text, markup, annotated - select for diffs
Sat Oct 9 17:11:08 2004 UTC (7 years, 4 months ago) by das
Branches: RELENG_5
CVS tags: RELENG_5_5_BP, RELENG_5_5_0_RELEASE, RELENG_5_5, RELENG_5_4_BP, RELENG_5_4_0_RELEASE, RELENG_5_4, RELENG_5_3_BP, RELENG_5_3_0_RELEASE, RELENG_5_3
Diff to: previous 1.30: preferred, colored; next MAIN 1.31: preferred, colored
Changes since revision 1.30: +1 -2 lines
MFC src/sys/fs/procfs/procfs_dbregs.c, v1.25 src/sys/fs/procfs/procfs_fpregs.c, v 1.31 src/sys/fs/procfs/procfs_regs.c, v1.30 | Don't PHOLD() the target process in procfs, since this is already done | in pseudofs. Moreover, PHOLD() may block between the p_candebug() | access check and the actual operation. Approved by: re (scottl)
Revision 1.31: download - view: text, markup, annotated - select for diffs
Fri Oct 1 05:01:17 2004 UTC (7 years, 4 months ago) by das
Branches: MAIN
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +1 -2 lines
Don't PHOLD() the target process in procfs, since this is already done in pseudofs. Moreover, PHOLD() may block between the p_candebug() access check and the actual operation.
Revision 1.30: download - view: text, markup, annotated - select for diffs
Wed Apr 7 20:46:02 2004 UTC (7 years, 10 months ago) by imp
Branches: MAIN
CVS tags: RELENG_5_BP
Branch point for: RELENG_5
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +0 -4 lines
Remove advertising clause from University of California Regent's license, per letter dated July 22, 1999 and email from Peter Wemm, Alan Cox and Robert Watson. Approved by: core, peter, alc, rwatson
Revision 1.27.2.1: download - view: text, markup, annotated - select for diffs
Fri Oct 3 13:02:49 2003 UTC (8 years, 4 months ago) by nectar
Branches: RELENG_5_0
Diff to: previous 1.27: preferred, colored; next MAIN 1.28: preferred, colored
Changes since revision 1.27: +3 -15 lines
MFC procfs_dbregs.c 1.23, procfs_fpregs.c 1.29, procfs_regs.c 1.28,
pseudofs_vnops.c 1.42, kern_subr.c 1.77, uio.h 1.28:
Correct several integer underflows/overflows in procfs and linprocfs.
Revision 1.28.2.1: download - view: text, markup, annotated - select for diffs
Fri Oct 3 13:02:17 2003 UTC (8 years, 4 months ago) by nectar
Branches: RELENG_5_1
Diff to: previous 1.28: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28: +3 -15 lines
MFC procfs_dbregs.c 1.23, procfs_fpregs.c 1.29, procfs_regs.c 1.28,
pseudofs_vnops.c 1.42, kern_subr.c 1.77, uio.h 1.28:
Correct several integer underflows/overflows in procfs and linprocfs.
Revision 1.29: download - view: text, markup, annotated - select for diffs
Thu Oct 2 15:00:55 2003 UTC (8 years, 4 months ago) by nectar
Branches: MAIN
CVS tags: RELENG_5_2_BP, RELENG_5_2_1_RELEASE, RELENG_5_2_0_RELEASE, RELENG_5_2
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -15 lines
Introduce a uiomove_frombuf helper routine that handles computing and validating the offset within a given memory buffer before handing the real work off to uiomove(9). Use uiomove_frombuf in procfs to correct several issues with integer arithmetic that could result in underflows/overflows. As a side-effect, the code is significantly simplified. Add additional sanity checks when computing a memory allocation size in pfs_read. Submitted by: rwatson (original uiomove_frombuf -- bugs are mine :-) Reported by: Joost Pol <joost@pine.nl> (integer underflows/overflows)
Revision 1.28: download - view: text, markup, annotated - select for diffs
Mon May 5 15:12:51 2003 UTC (8 years, 9 months ago) by rwatson
Branches: MAIN
CVS tags: RELENG_5_1_BP, RELENG_5_1_0_RELEASE
Branch point for: RELENG_5_1
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +4 -1 lines
Clean up proc locking in procfs: make sure the proc lock is held before entering sys_process.c debugging primitives, or we violate assertions. Also, be more careful about releasing the process lock around calls to uiomove() which may sleep waiting for paging machinations or related notions. We may want to defer the uiomove() in at least one case, but jhb will look into that at a later date. Reported by: Philippe Charnier <charnier@xp11.frmug.org> Reviewed by: jhb
Revision 1.27: download - view: text, markup, annotated - select for diffs
Sat Jun 29 17:26:15 2002 UTC (9 years, 7 months ago) by julian
Branches: MAIN
CVS tags: RELENG_5_0_BP, RELENG_5_0_0_RELEASE
Branch point for: RELENG_5_0
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +1 -1 lines
Part 1 of KSE-III The ability to schedule multiple threads per process (one one cpu) by making ALL system calls optionally asynchronous. to come: ia64 and power-pc patches, patches for gdb, test program (in tools) Reviewed by: Almost everyone who counts (at various times, peter, jhb, matt, alfred, mini, bernd, and a cast of thousands) NOTE: this is still Beta code, and contains lots of debugging stuff. expect slight instability in signals..
Revision 1.26: download - view: text, markup, annotated - select for diffs
Sun May 19 00:14:47 2002 UTC (9 years, 8 months ago) by jhb
Branches: MAIN
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +1 -1 lines
Change p_can{debug,see,sched,signal}()'s first argument to be a thread
pointer instead of a proc pointer and require the process pointed to
by the second argument to be locked. We now use the thread ucred reference
for the credential checks in p_can*() as a result. p_canfoo() should now
no longer need Giant.
Revision 1.25: download - view: text, markup, annotated - select for diffs
Sat Apr 13 23:14:08 2002 UTC (9 years, 9 months ago) by jhb
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +7 -3 lines
Lock the target process in procfs_doproc*regs() for p_candebug and while reading/writing the registers.
Revision 1.24: download - view: text, markup, annotated - select for diffs
Sat Feb 16 05:38:07 2002 UTC (9 years, 11 months ago) by bde
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +5 -3 lines
FIxed the following style bugs: - clobbering of jsp's $Id$ by FreeBSD's old $Id$. - lost Berkeley id in procfs_dbregs.c - long lines in recent KSE changes. - various gratuitous differences between procfs_*regs.c.
Revision 1.23: download - view: text, markup, annotated - select for diffs
Thu Feb 7 20:58:43 2002 UTC (10 years ago) by julian
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +2 -2 lines
Pre-KSE/M3 commit. this is a low-functionality change that changes the kernel to access the main thread of a process via the linked list of threads rather than assuming that it is embedded in the process. It IS still embeded there but remove all teh code that assumes that in preparation for the next commit which will actually move it out. Reviewed by: peter@freebsd.org, gallatin@cs.duke.edu, benno rice,
Revision 1.22: download - view: text, markup, annotated - select for diffs
Tue Dec 4 01:33:12 2001 UTC (10 years, 2 months ago) by des
Branches: MAIN
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +4 -16 lines
Pseudofsize procfs(5).
Revision 1.21: download - view: text, markup, annotated - select for diffs
Sun Oct 21 23:57:11 2001 UTC (10 years, 3 months ago) by des
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +3 -3 lines
Move procfs_* from procfs_machdep.c into sys_process.c, and rename them to proc_* in the process; procfs_machdep.c is no longer needed. Run-tested on i386, build-tested on Alpha, untested on other platforms.
Revision 1.20: download - view: text, markup, annotated - select for diffs
Sun Oct 7 20:08:37 2001 UTC (10 years, 4 months ago) by des
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +2 -1 lines
Dissociate ptrace from procfs.
Until now, the ptrace syscall was implemented as a wrapper that called
various functions in procfs depending on which ptrace operation was
requested. Most of these functions were themselves wrappers around
procfs_{read,write}_{,db,fp}regs(), with only some extra error checks,
which weren't necessary in the ptrace case anyway.
This commit moves procfs_rwmem() from procfs_mem.c into sys_process.c
(renaming it to proc_rwmem() in the process), and implements ptrace()
directly in terms of procfs_{read,write}_{,db,fp}regs() instead of
having it fake up a struct uio and then call procfs_do{,db,fp}regs().
It also moves the prototypes for procfs_{read,write}_{,db,fp}regs()
and proc_rwmem() from proc.h to ptrace.h, and marks all procfs files
except procfs_machdep.c as "optional procfs" instead of "standard".
Revision 1.19: download - view: text, markup, annotated - select for diffs
Wed Sep 12 08:37:20 2001 UTC (10 years, 5 months ago) by julian
Branches: MAIN
CVS tags: KSE_MILESTONE_2
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +5 -6 lines
KSE Milestone 2 Note ALL MODULES MUST BE RECOMPILED make the kernel aware that there are smaller units of scheduling than the process. (but only allow one thread per process at this time). This is functionally equivalent to teh previousl -current except that there is a thread associated with each process. Sorry john! (your next MFC will be a doosie!) Reviewed by: peter@freebsd.org, dillon@freebsd.org X-MFC after: ha ha ha ha
Revision 1.18: download - view: text, markup, annotated - select for diffs
Thu Jul 5 17:10:42 2001 UTC (10 years, 7 months ago) by rwatson
Branches: MAIN
CVS tags: KSE_PRE_MILESTONE_2
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +2 -2 lines
o Replace calls to p_can(..., P_CAN_xxx) with calls to p_canxxx().
The p_can(...) construct was a premature (and, it turns out,
awkward) abstraction. The individual calls to p_canxxx() better
reflect differences between the inter-process authorization checks,
such as differing checks based on the type of signal. This has
a side effect of improving code readability.
o Replace direct credential authorization checks in ktrace() with
invocation of p_candebug(), while maintaining the special case
check of KTR_ROOT. This allows ktrace() to "play more nicely"
with new mandatory access control schemes, as well as making its
authorization checks consistent with other "debugging class"
checks.
o Eliminate "privused" construct for p_can*() calls which allowed the
caller to determine if privilege was required for successful
evaluation of the access control check. This primitive is currently
unused, and as such, serves only to complicate the API.
Approved by: ({procfs,linprocfs} changes) des
Obtained from: TrustedBSD Project
Revision 1.17: download - view: text, markup, annotated - select for diffs
Wed May 23 09:42:11 2001 UTC (10 years, 8 months ago) by ru
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +2 -2 lines
- FDESC, FIFO, NULL, PORTAL, PROC, UMAP and UNION file
systems were repo-copied from sys/miscfs to sys/fs.
- Renamed the following file systems and their modules:
fdesc -> fdescfs, portal -> portalfs, union -> unionfs.
- Renamed corresponding kernel options:
FDESC -> FDESCFS, PORTAL -> PORTALFS, UNION -> UNIONFS.
- Install header files for the above file systems.
- Removed bogus -I${.CURDIR}/../../sys CFLAGS from userland
Makefiles.
Revision 1.16: download - view: text, markup, annotated - select for diffs
Tue May 1 08:13:09 2001 UTC (10 years, 9 months ago) by markm
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +7 -2 lines
Undo part of the tangle of having sys/lock.h and sys/mutex.h included in other "system" header files. Also help the deprecation of lockmgr.h by making it a sub-include of sys/lock.h and removing sys/lockmgr.h form kernel .c files. Sort sys/*.h includes where possible in affected files. OK'ed by: bde (with reservations)
Revision 1.15: download - view: text, markup, annotated - select for diffs
Tue Apr 24 00:51:50 2001 UTC (10 years, 9 months ago) by jhb
Branches: MAIN
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +2 -6 lines
Change the pfind() and zpfind() functions to lock the process that they find before releasing the allproc lock and returning. Reviewed by: -smp, dfr, jake
Revision 1.14: download - view: text, markup, annotated - select for diffs
Wed Mar 28 09:17:55 2001 UTC (10 years, 10 months ago) by jhb
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +2 -1 lines
Catch up to header include changes: - <sys/mutex.h> now requires <sys/systm.h> - <sys/mutex.h> and <sys/sx.h> now require <sys/lock.h>
Revision 1.13: download - view: text, markup, annotated - select for diffs
Wed Mar 7 02:07:56 2001 UTC (10 years, 11 months ago) by jhb
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +7 -2 lines
Protect p_flag with the proc lock.
Revision 1.11.2.1: download - view: text, markup, annotated - select for diffs
Wed Nov 1 20:19:48 2000 UTC (11 years, 3 months ago) by sef
Branches: old_RELENG_4
CVS tags: old_RELENG_4_3_BP, old_RELENG_4_3_0_RELEASE, old_RELENG_4_3, old_RELENG_4_2_0_RELEASE
Diff to: previous 1.11: preferred, colored; next MAIN 1.12: preferred, colored
Changes since revision 1.11: +2 -2 lines
Be much, much more paranoid on allowing I/O operations on procfs nodes. Do this by (for now, at least) re-instating the previously-removed CHECKIO() macro. Reviewed by: Robert Watson <rwatson@FreeBSD.org>, Kris Kennaway <kris@FreeBSD.org>
Revision 1.12: download - view: text, markup, annotated - select for diffs
Wed Aug 30 04:49:08 2000 UTC (11 years, 5 months ago) by rwatson
Branches: MAIN
CVS tags: old_PRE_SMPNG
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +2 -2 lines
o Centralize inter-process access control, introducing:
int p_can(p1, p2, operation, privused)
which allows specification of subject process, object process,
inter-process operation, and an optional call-by-reference privused
flag, allowing the caller to determine if privilege was required
for the call to succeed. This allows jail, kern.ps_showallprocs and
regular credential-based interaction checks to occur in one block of
code. Possible operations are P_CAN_SEE, P_CAN_SCHED, P_CAN_KILL,
and P_CAN_DEBUG. p_can currently breaks out as a wrapper to a
series of static function checks in kern_prot, which should not
be invoked directly.
o Commented out capabilities entries are included for some checks.
o Update most inter-process authorization to make use of p_can() instead
of manual checks, PRISON_CHECK(), P_TRESPASS(), and
kern.ps_showallprocs.
o Modify suser{,_xxx} to use const arguments, as it no longer modifies
process flags due to the disabling of ASU.
o Modify some checks/errors in procfs so that ENOENT is returned instead
of ESRCH, further improving concealment of processes that should not
be visible to other processes. Also introduce new access checks to
improve hiding of processes for procfs_lookup(), procfs_getattr(),
procfs_readdir(). Correct a bug reported by bp concerning not
handling the CREATE case in procfs_lookup(). Remove volatile flag in
procfs that caused apparently spurious qualifier warnigns (approved by
bde).
o Add comment noting that ktrace() has not been updated, as its access
control checks are different from ptrace(), whereas they should
probably be the same. Further discussion should happen on this topic.
Reviewed by: bde, green, phk, freebsd-security, others
Approved by: bde
Obtained from: TrustedBSD Project
Revision 1.11: download - view: text, markup, annotated - select for diffs
Wed Dec 8 08:59:37 1999 UTC (12 years, 2 months ago) by phk
Branches: MAIN
CVS tags: old_RELENG_4_BP, old_RELENG_4_1_1_RELEASE, old_RELENG_4_1_0_RELEASE, old_RELENG_4_0_0_RELEASE
Branch point for: old_RELENG_4
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +1 -2 lines
Remove unused #includes. Obtained from: http://bogon.freebsd.dk/include
Revision 1.10: download - view: text, markup, annotated - select for diffs
Sun Nov 21 19:03:18 1999 UTC (12 years, 2 months ago) by phk
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +2 -2 lines
Introduce the new function
p_trespass(struct proc *p1, struct proc *p2)
which returns zero or an errno depending on the legality of p1 trespassing
on p2.
Replace kern_sig.c:CANSIGNAL() with call to p_trespass() and one
extra signal related check.
Replace procfs.h:CHECKIO() macros with calls to p_trespass().
Only show command lines to process which can trespass on the target
process.
Revision 1.2.8.2: download - view: text, markup, annotated - select for diffs
Sun Sep 5 08:33:31 1999 UTC (12 years, 5 months ago) by peter
Branches: old_RELENG_2_1_0
Diff to: previous 1.2.8.1: preferred, colored; branchpoint 1.2: preferred, colored; next MAIN 1.3: preferred, colored
Changes since revision 1.2.8.1: +1 -1 lines
$Id$ -> $FreeBSD$
Revision 1.3.4.2: download - view: text, markup, annotated - select for diffs
Sun Sep 5 08:16:51 1999 UTC (12 years, 5 months ago) by peter
Branches: old_RELENG_2_2
Diff to: previous 1.3.4.1: preferred, colored; branchpoint 1.3: preferred, colored; next MAIN 1.4: preferred, colored
Changes since revision 1.3.4.1: +1 -1 lines
$Id$ -> $FreeBSD$
Revision 1.8.2.1: download - view: text, markup, annotated - select for diffs
Sun Aug 29 16:26:52 1999 UTC (12 years, 5 months ago) by peter
Branches: old_RELENG_3
CVS tags: old_RELENG_3_5_0_RELEASE, old_RELENG_3_4_0_RELEASE, old_RELENG_3_3_0_RELEASE
Diff to: previous 1.8: preferred, colored; next MAIN 1.9: preferred, colored
Changes since revision 1.8: +1 -1 lines
$Id$ -> $FreeBSD$
Revision 1.9: download - view: text, markup, annotated - select for diffs
Sat Aug 28 00:46:54 1999 UTC (12 years, 5 months ago) by peter
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +1 -1 lines
$Id$ -> $FreeBSD$
Revision 1.2.8.1: download - view: text, markup, annotated - select for diffs
Mon Aug 25 21:12:31 1997 UTC (14 years, 5 months ago) by guido
Branches: old_RELENG_2_1_0
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +3 -1 lines
MFC: procfs security patch. 2.1's not dead! Long live 2.1 ;-)
Revision 1.3.4.1: download - view: text, markup, annotated - select for diffs
Tue Aug 12 05:24:20 1997 UTC (14 years, 6 months ago) by sef
Branches: old_RELENG_2_2
CVS tags: old_RELENG_2_2_8_RELEASE, old_RELENG_2_2_7_RELEASE, old_RELENG_2_2_6_RELEASE, old_RELENG_2_2_5_RELEASE
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +3 -1 lines
MFC -- check permission on fp regs too.
Revision 1.8: download - view: text, markup, annotated - select for diffs
Tue Aug 12 05:23:51 1997 UTC (14 years, 6 months ago) by sef
Branches: MAIN
CVS tags: old_RELENG_3_BP, old_RELENG_3_2_PAO_BP, old_RELENG_3_2_PAO, old_RELENG_3_2_0_RELEASE, old_RELENG_3_1_0_RELEASE, old_RELENG_3_0_0_RELEASE, old_PRE_VFS_BIO_NFS_PATCH, old_PRE_SOFTUPDATE, old_PRE_SMP_VMSHARE, old_PRE_NOBDEV, old_PRE_NEWBUS, old_PRE_DEVFS_SLICE, old_POST_VFS_BIO_NFS_PATCH, old_POST_SOFTUPDATE, old_POST_SMP_VMSHARE, old_POST_NEWBUS, old_POST_DEVFS_SLICE
Branch point for: old_RELENG_3
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +3 -1 lines
Check permissions for fp regs as well as normal regs.
Revision 1.7: download - view: text, markup, annotated - select for diffs
Sat Aug 2 14:32:11 1997 UTC (14 years, 6 months ago) by bde
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +1 -4 lines
Removed unused #includes.
Revision 1.6: download - view: text, markup, annotated - select for diffs
Sat Feb 22 09:40:27 1997 UTC (14 years, 11 months ago) by peter
Branches: MAIN
CVS tags: old_pre_smp_merge, old_post_smp_merge, old_WOLLMAN_MBUF, old_BP_WOLLMAN_MBUF
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +1 -1 lines
Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not ready for it yet.
Revision 1.5: download - view: text, markup, annotated - select for diffs
Mon Feb 10 02:14:14 1997 UTC (15 years ago) by dyson
Branches: MAIN
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +2 -1 lines
This is the kernel Lite/2 commit. There are some requisite userland changes, so don't expect to be able to run the kernel as-is (very well) without the appropriate Lite/2 userland changes. The system boots and can mount UFS filesystems. Untested: ext2fs, msdosfs, NFS Known problems: Incorrect Berkeley ID strings in some files. Mount_std mounts will not work until the getfsent library routine is changed. Reviewed by: various people Submitted by: Jeffery Hsu <hsu@freebsd.org>
Revision 1.4: download - view: text, markup, annotated - select for diffs
Tue Jan 14 06:46:29 1997 UTC (15 years ago) by jkh
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +1 -1 lines
Make the long-awaited change from $Id$ to $FreeBSD$ This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
Revision 1.1.1.2 (vendor branch): download - view: text, markup, annotated - select for diffs
Mon Mar 11 19:29:08 1996 UTC (15 years, 11 months ago) by peter
Branches: old_CSRG
CVS tags: old_bsd_44_lite_2
Diff to: previous 1.1.1.1: preferred, colored
Changes since revision 1.1.1.1: +9 -1 lines
Import 4.4BSD-Lite2 onto the vendor branch, note that in the kernel, all files are off the vendor branch, so this should not change anything. A "U" marker generally means that the file was not changed in between the 4.4Lite and Lite-2 releases, and does not need a merge. "C" generally means that there was a change. [two new auxillary files in miscfs/union]
Revision 1.3: download - view: text, markup, annotated - select for diffs
Wed Jan 24 18:40:56 1996 UTC (16 years ago) by peter
Branches: MAIN
CVS tags: old_wollman_polling, old_RELENG_2_2_BP, old_RELENG_2_2_2_RELEASE, old_RELENG_2_2_1_RELEASE, old_RELENG_2_2_0_RELEASE
Branch point for: old_RELENG_2_2
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +13 -1 lines
Major fixes for procfs.. Implement a "variable" directory structure. Files that do not make sense for the given process do not "appear" and cannot be opened. For example, "system" processes do not have "file", "regs" or "fpregs", because they do not have a user area. "attempt" to fill in the user area of a given process when it is being accessed via /proc/pid/mem (the user struct is just after VM_MAXUSER_ADDRESS in the process address space.) Dont do IO to the U area while it's swapped, hold it in place if possible. Lock off access to the "ctl" file if it's done a setuid like the other pseudo-files in there.
Revision 1.2: download - view: text, markup, annotated - select for diffs
Tue Aug 2 07:45:12 1994 UTC (17 years, 6 months ago) by davidg
Branches: MAIN
CVS tags: old_RELENG_2_1_7_RELEASE, old_RELENG_2_1_6_RELEASE, old_RELENG_2_1_6_1_RELEASE, old_RELENG_2_1_5_RELEASE, old_RELENG_2_1_0_RELEASE, old_RELENG_2_1_0_BP, old_RELENG_2_0_5_RELEASE, old_RELENG_2_0_5_BP, old_RELENG_2_0_5_ALPHA, old_RELENG_2_0_5, old_RELEASE_2_0, old_OLAH_TTCP, old_BETA_2_0, old_ALPHA_2_0
Branch point for: old_RELENG_2_1_0
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +1 -2 lines
Added $Id$
Revision 1.1.1.1 (vendor branch): download - view: text, markup, annotated - select for diffs
Tue May 24 10:05:09 1994 UTC (17 years, 8 months ago) by rgrimes
Branches: old_CSRG
CVS tags: old_bsd_44_lite, old_REL_before_johndavid_2_0_0
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +0 -0 lines
BSD 4.4 Lite Kernel Sources
Revision 1.1: download - view: text, markup, annotated - select for diffs
Tue May 24 10:05:08 1994 UTC (17 years, 8 months ago) by rgrimes
Branches: MAIN
Initial revision
