Commit Graph

44 Commits

Author SHA1 Message Date
jmmv ec93365612 Initial addition of tmpfs, an efficient memory file-system. This project
was developed as part of Google's Summer of Code 2005 program.  This
change adds the kernel code, the mount_tmpfs utility, a regression test
suite and does all other related changes to integrate these.

The file-system is still *experimental*.  Therefore, it is disabled by
default in all kernels.  However, as typically done, a commented-out
entry is added in them to ease its setup.

Note that I haven't commited the required mountd(8) changes to be able
to export tmpfs file-systems because NFS support is still very unstable
and because, before enabling it, I'd like to do some other changes.

OK'ed by my project mentor, William Studenmund (wrstuden@).
2005-09-10 19:20:48 +00:00
christos c4ee9f6d2e 64 bit inode changes 2005-08-19 02:07:18 +00:00
jmc 2c8974a914 Fix fallout from vm_anon changes 2005-05-11 17:41:52 +00:00
chs 467487d274 use vm_map_{min,max}() instead of dereferencing the vm_map pointer directly.
define and use vm_map_set{min,max}() for modifying these values.
remove the {min,max}_offset aliases for these vm_map fields to be more
namespace-friendly.  PR 26475.
2005-02-11 02:12:03 +00:00
yamt 712038f82a sync with kernel. (vm_map_entry::flags) 2005-01-01 21:17:47 +00:00
christos bdba0e8400 Add V_PTY 2004-11-10 17:54:47 +00:00
simonb 9bc855a931 s/the the/the/ (only in sources that aren't regularly imported from
elsewhere).
2004-04-23 02:58:27 +00:00
wiz 9ea670a934 Some fixes and formatting changes from jmc@openbsd. 2004-02-17 20:41:49 +00:00
matt fc5f7e902b Deal with backing out of changes in:
http://mail-index.netbsd.org/source-changes/2004/01/29/0027.html
2004-02-10 01:31:41 +00:00
atatat 9fa5182332 Lint police. 2004-01-31 20:53:55 +00:00
atatat 282eb9c623 Unfold the KDEREF() macros a little, and tweak the LOCKDEBUG detection
code, to detect a KDEREF failure instead of simply aborting.  If the
KDEREF fails, we're obviously not_using_lockdebug().
2004-01-31 18:25:27 +00:00
yamt 4480473553 follow the kernel vm_map_entry allocation strategy change. 2004-01-29 22:19:12 +00:00
atatat a068aea23a Find the buf_map symbol, so that the submap can be labeled properly. 2004-01-06 14:01:19 +00:00
fvdl 5d0f1dccca Don't assign NULL to an integer. 2003-10-21 02:22:21 +00:00
yamt 9eeb053922 redo the previous in a different way; use vm_map_min/max macros. 2003-09-17 22:06:50 +00:00
yamt 4a1d5a0332 update lockdebug detection to follow uvm_map.h rev.1.35.
(vm_map.header.{start,end} was swapped.)
2003-09-17 21:59:52 +00:00
yamt 428f108569 remove remaining v_id. 2003-07-31 15:43:06 +00:00
yamt cc104d0635 eliminate v_id. 2003-07-30 12:10:57 +00:00
atatat c9c88988f6 Though I cannot reproduce the failure (which I suspect is rather
system dependent), the analysis provided in PR misc/22089 is correct.
Therefore, allocate one more slot and suck one more slot from the
kernel.
2003-07-24 00:43:50 +00:00
itojun 8ac99d48f2 strlcat 2003-07-15 05:59:58 +00:00
atatat 535d709586 Build main.c with LOCKDEBUG defined so that it gets the larger kbit
definition.  Since we're now passing it into pmap.c which is already
compiled that way, it would be nice if it was the right size.

Also, fix a memset bug that caused a segmentation fault when printing
the kernel's vm_map.
2003-05-04 15:09:45 +00:00
wiz 817f471b97 Sort options in usage. 2003-04-16 12:15:07 +00:00
wiz 64a9f92514 Sort options in SYNOPSIS, grammar fix. 2003-04-16 12:12:08 +00:00
atatat a88940798c Add some more intricate groveler options:
-A address   Dumps the vm_amap structure found at address.

     -E address   Dumps the vm_map_entry structure found at address.

     -S address   Dumps the vmspace structure found at address.

     -V address   Dumps the vm_map structure found at address.

This required reorganizing the code a little, which led to some
cleanup (yay!).  These new methods are executed without any extra
privileges, so you need read access on /dev/mem or on the kernel core
into which you are digging.

This should be useful for, eg, examining amaps are corrupt when being
destroyed, which can cause a kernel panic (and, hence, are no longer
connected to a map entry, or the map entry is no longer connected to a
vm_map/vmspace).

The options in the man page have also been reorganized.
2003-04-04 03:49:20 +00:00
he d614a5830d Introduce a "size_t" variable for use with sysctl(3).
Fixes compile problem observed on evbarm.
2003-03-29 18:01:21 +00:00
atatat 2242d20a09 Add the capability to dump the struct vm_amap and the am_anon,
am_bckptr, am_slots, and am_anon data, if the vm_map_entry has an
amap.  This adds three new debug "bits" to the -D argument, so the
namei cache dumping "bit" has been moved up.

Also, change the * that gets emitted with -vv to indicate the number
of pages skipped and the size of the area (in kilobytes).
2003-03-28 23:10:32 +00:00
atatat 6d45c1cd99 Clean up code in places, add some more (possible) submap names, make
better use of the submap names when dumping the kernel map, clean up
the "interface" between the main and LOCKDEBUG dependent pmap modules,
and make the heap identification work better.
2003-02-27 04:10:36 +00:00
atatat 87437f0b78 Oops. Missed some possible UVM_ET_IS*() macro uses. 2003-02-23 01:08:29 +00:00
atatat fb9b07a6a7 Properly print the VM_MAP_TOPDOWN flag if it is set, document the
VM_MAP_TOPDOWN flag (and the VM_MAP_DYING flag, since it never got
documented before), minor tweak to one of the examples, and use the
UVM_ET_IS*() macros instead of doing the same work manually.
2003-02-22 17:45:04 +00:00
grant 2ceb845887 The correct capitalisation of 'NetBSD.org' is (you
guessed it) 'NetBSD.org'.

some mdoc fixes.
2003-02-14 15:59:16 +00:00
atatat dd0a8acd21 The next release will be 2.0, not 1.7. 2003-01-19 21:25:36 +00:00
atatat 3535ff5eb9 Print the string as if it's a string. Don't print the pointer. It's
useless for the non-omniscient (who, by definition, would have no need
for this program anyway).
2003-01-16 15:34:18 +00:00
atatat 80f8e56ac7 More properly handle the setgid privileges that we have, casting them
out if using them might be unsafe.
2003-01-09 13:05:12 +00:00
atatat a26b7f4d29 Make pmap work on LOCKDEBUG *and* non-LOCKDEBUG kernels (previously it
would fail in spectacular ways on LOCKDEBUG kernels) by compiling the
groveler code twice (the second time with LOCKDEBUG defined so that
the appropriate structures get larger in the right way).  We currently
decide if we are operating on a kernel with LOCKDEBUG enabled if the
kernel's vm_map has referential integrity between a few pointers
and/or values.

Also, if you use more than one -v, you get a * on a line by itself in
between gaps in entries.  It makes finding gaps much easier visually.
2003-01-08 20:25:12 +00:00
thorpej e0e584cdfa Avoid a trigraph, and fix printf formats. 2002-12-06 03:05:04 +00:00
thorpej 35d6519b2d Don't truncate the vm_map_entry offset to 32-bits when printing. 2002-10-29 14:50:53 +00:00
atatat 2bc4364804 Provides better error messages from the symbol lookups (printing
merely "  == 1" is just *not* helpful).

Note which symbols were missing (better for bug reports, if anyone
files one :).

Make the kernel submap symbols optional (sparc, sparc64, most powerpc,
and the sh3 ports seem not to have a phys_map -- problem noted by
myself yesterday).

Oh, and a little misc lint cleanup while I'm here.
2002-10-17 17:18:34 +00:00
atatat 9bc250be61 Print the contents of the aref (it's small and MI -- MD code here
would be horrific).

Handle the new VM_MAP_DYING flag (and adjust the VM_MAP_TOPDOWN bit).

Check to see if 0, 1, and 2 are properly "open" and try to "adjust" if
they're not.  Emit no warnings or errors here.
2002-10-12 03:08:27 +00:00
grant be8ae688ae New sentence, new line. 2002-09-30 11:08:56 +00:00
atatat 7266746efe Provide names for the map and submaps when doing recursive verbose
ddb-style output.
2002-09-19 02:43:51 +00:00
atatat 4d2c9bf2c0 Make error messages a little more informative. Add -R option to
recurse into submaps (a kernel thing) as suggested by Chuck Cranor,
with the output from these entries indented.  Clean up and rework code
slightly, to make the recursion task much easier.  Also, add a note to
the BUGS section in the man page thats mentions that stuff "just won't
work right" unless pmap is reading from the proper kernel.
2002-09-17 19:54:28 +00:00
atatat ba9dd2c172 Add verbose support to the -l output, tweak verbose support for -d
output, and tweak the man page (running pmap(1) vs. the kernel_map can
have a *very* visible effect).
2002-09-13 15:32:49 +00:00
atatat 0fb6b57457 Unterminated comment. Grr... 2002-09-01 20:37:28 +00:00
atatat 692fefdd0e Move pmap(1) to /usr/bin (from /usr/sbin) where it belongs. 2002-09-01 20:32:43 +00:00