summaryrefslogtreecommitdiffstats
path: root/share/examples/lkm/vfs/README
blob: f5c1ac71b4412802f508415ad43bf23c0153b56e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# Copyright (c) 1993 Terrence R. Lambert.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
# 3. All advertising materials mentioning features or use of this software
#    must display the following acknowledgement:
#      This product includes software developed by Terrence R. Lambert.
# 4. The name Terrence R. Lambert may not be used to endorse or promote
#    products derived from this software without specific prior written
#    permission.
#
# THIS SOFTWARE IS PROVIDED BY TERRENCE R. LAMBERT ``AS IS'' AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED.  IN NO EVENT SHALL THE TERRENCE R. LAMBERT BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.

1.0	Overview

	This is the README file for the sample loaded file system.


2.0	Preparation

	To use this module, you must have a kernel the does *NOT*
	have an existing "kernfs" file system in it.  To determine
	if your system has the "kernfs" file system in it, check
	the build file for your kernel (usually this file is named
	"/sys/i386/conf/GENERICISA") for the following:

		options		KERNFS

	By default, NetBSD has this file system compiled as part
	of the kernel; if you wish to use this example with NetBSD
	you will have to remove this "options" line and rebuild
	your kernel.

	Note:	The file "/usr/include/sys/mount.h" must have the
	"kernfs" file system type in it for this example; if you
	do not have the following line in this file, you will not
	be able to use this example:

		#define MOUNT_KERNFS	7

	This line is created by applying the "kernfs" patches to
	your system.  NetBSD as distributed already has these
	patches applied; if you are running vanilla 386BSD, you
	will have to locate and add these patches to use this
	example.


3.0	Directions

	To test the module, do the following:

		cd module
		make load

	A load message (the copyright) will be printed on the console.

	You must then add the following line to the "/etc/fstab" file:

		kernfs /kern kernfs rw 1 1

	At the root prompt, type the following:

		mkdir /kern

	Ignore the following error if it occurs:

		mkdir: /kern: File exists

	Again at the root prompt, type the following command:

		mount /kern
		cd /kern
		cat version

	This will verify that the module is working correctly.


4.0	Recovering resources

	The file system consumes 8 pages of memory when loaded; it
	can be freed up by unloading it.  To unload it, type the
	following from the directory this file is in:

		cd module
		make unload

	The file system will be unloaded by name.


5.0	END OF DOCUMENT
OpenPOWER on IntegriCloud