The no form removes a previously specified option.
Note: Options that are not defined by device definition files are passed to the compile process as -D flags to the C compiler.
For example, a local configuration file that wanted the kitchen sink, but not COMPAT_09 or bridging, might be:
include "arch/i386/conf/GENERIC"
no options COMPAT_09
no pseudo-device bridge
/etc/fstab
and other files.
It also adds old syscalls for the
AT&T
System V UNIX
shared memory interface.
This was changed post 1.0 to work on 64-bit architectures.
This option also enables
``sgtty''
compatibility, without which programs using the old interface produce
an
``inappropriate ioctl''
error, and
/dev/io
only works when this option is set in the kernel,
see
io(4)
on ports that support it.
/dev/io
read/write.
This functionality was replaced by
i386_iopl(2)
post 1.1.
On the
Atari
port, the location of the disk label was moved after 1.1.
When the
COMPAT_11
option is set, the kernel will read (pre) 1.1 style disk labels as a
last resort.
When a disk label is re-written, the old style label will be replaced
with a post 1.1 style label.
This also enables the
EXEC_ELF_NOTELESS
option.
)
and
swapon(
).
The syscall numbers were changed post 1.2 to add functionality to the
reboot(2)
syscall, and the new
swapctl(2)
interface was introduced.
This also enables the
EXEC_ELF_NOTELESS
option.
),
and also enables the old
swapctl(2)
command
SWAP_STATS
(now called
SWAP_OSTATS
),
which does not include the
se_path
member of
struct swapent.
NFSSVC_BIOD
mode of the
nfssvc(2)
system call to be used for compatibility with the deprecated nfsiod program.
),
fstatfs(
),
getfsstat(
)
and
fhstatfs(
),
which have been deprecated with the addition of the
statvfs(2),
fstatvfs(2),
getvfsstat(2)
and
fhstatvfs(2)
system calls.
TIOCGETP
and
TIOCSETP
.
The return values for
getpid(2),
getgid(2),
and
getuid(2)
syscalls are modified as well, to return the parent's PID and
UID as well as the current process's.
It also enables the deprecated
NTTYDISC
terminal line discipline.
It also provides backwards compatibility with
``old''
SIOC[GS]IF{ADDR,DSTADDR,BRDADDR,NETMASK} interface ioctls, including
binary compatibility with code written before the introduction of the
sa_len field in sockaddrs.
It also enables
support for some older pre
4.4BSD
socket calls.
/dev/ptyXX
(master) and
/dev/ttyXX
(slave).
Eventually this option will become optional as ptyfs based pseudo-ttys become
the default, see
mount_ptyfs(8).
AT&T
System V.4 UNIX
applications built for the same architecture.
This currently includes the i386, m68k, and sparc ports.
.note.netbsd.ident
section, and thus can't be identified by the kernel as
NetBSD
binaries otherwise.
Beware - if this option is on, the kernel would run
any
unknown ELF binaries as if they were
NetBSD
binaries.
dev_t
(as a)
of kgdb device.
netbsd.gdb
to be built in addition to
netbsd
.
netbsd.gdb
is useful for debugging kernel crash dumps with gdb.
See
gdb(1)
for details.
This also turns on
options DEBUG
(which see).
)
when not (yet) read by
syslogd(8).
This is particularly useful when the system has crashed and you wish to lookup
the kernel output from just before the crash.
Also, since the autoconfig output becomes more and more verbose,
it sometimes happens that the message buffer overflows before
syslogd(8)
was able to read it.
Note that not all systems are capable of obtaining a variable sized message
buffer.
There are also some systems on which memory contents are not preserved
across reboots.
)
or
uvm_hist(
)
with appropriate arguments from DDB.
See the kernel source file sys/uvm/uvm_stat.c for details.
/tmp
and similar file systems.
See
mount_mfs(8)
for details.
/dev/fd
,
which permits access to the per-process file descriptor space via
special files in the file system.
See
mount_fdesc(8)
for details.
Note that this facility is redundant, and thus unneeded on most
NetBSD
systems, since the
fd(4)
pseudo-device driver already provides identical functionality.
On most
NetBSD
systems, instances of
fd(4)
are mknoded under
/dev/fd/
and on
/dev/stdin
,
/dev/stdout
,
and
/dev/stderr
.
/kern
)
in which files representing various kernel variables and parameters
may be found.
See
mount_kernfs(8)
for details.
/p
and is partially implemented by a special daemon.
See
mount_portal(8)
for details.
/proc
)
in which the process space becomes visible in the file system.
Among
other things, the memory spaces of processes running on the system are
visible as files, and signals may be sent to processes by writing to
ctl
files in the procfs namespace.
See
mount_procfs(8)
for details.
/dev/pts
)
in which pseudo-terminal slave devices become visible in the file system.
See
mount_ptyfs(8)
for details.
/tmp
.
See
mount_tmpfs(8)
for details.
)
cache, though called by many other names in the kernel source).
By default, this cache has
NPROC
(set as 20 + 16 * MAXUSERS) * (80 + NPROC / 8) entries.
A reasonable way to derive a value of
NVNODE
,
should you notice a large number of namei cache misses with a tool such as
systat(1),
is to examine your system's current computed value with
sysctl(8),
(which calls this parameter "kern.maxvnodes") and to increase this value
until either the namei cache hit rate improves or it is determined that
your system does not benefit substantially from an increase in the size of
the namei cache.
)
and
FREE(
).
Normally these expand to inline code, but with
MALLOC_NOINLINE
these call the normal
malloc(
)
and
free(
)
functions.
Useful for install media kernels, small memory systems and embedded systems.
/usr/share/doc/html/ntp
.
NOTE: Using this option will also enable options FDSCRIPTS
NOTE:
Execute only (non-readable) scripts will have
argv[0]
set to
/dev/fd/*
.
What this option allows as far as security is
concerned, is the ability to safely ensure that the correct script
is run by the interpreter, as it is passed as an already open file.
NOTE: Unfortunately, in many cases where the hardware clock is kept in local time, it is adjusted for Daylight Savings Time; this means that attempting to use RTC_OFFSET to let NetBSD coexist with such an operating system, like Windows, would necessitate changing RTC_OFFSET twice a year. As such, this solution is imperfect.
)
and
FREE(
)
forms of the memory allocator, which are used to enhance the performance
of certain critical sections of code in the kernel.
This option therefore can lead to a significant decrease in the
performance of certain code in the kernel if enabled.
Examples of such code include the
namei(
)
routine, the
ccd(4)
driver,
and much of the networking code.
RLIMIT_NPROC
resource limit, which specifies the maximum number of simultaneous
processes a user is permitted to run, for process 0;
this value is inherited by its child processes.
It defaults to
CHILD_MAX,
which is currently defined to be 160.
Setting
MAXUPRC
to a value less than
CHILD_MAX
is not permitted, as this would result in a violation of the semantics of
ISO/IEC 9945-1:1990 (``POSIX.1'') .
RLIMIT_NOFILE
resource limit, which specifies the maximum number of open
file descriptors for each process;
this value is inherited by its child processes.
It defaults to
OPEN_MAX,
which is currently defined to be 64.
GENERIC.local
or
std.$MACHINE
.
The embedded config file can be extracted from the resulting kernel with
config(1)
-x,
or by the following command:
strings netbsd | sed -n 's/^_CFG_//p' | unvis
))
in each system call.
NOTE:
Using this option will also enable
options SYSCALL_STATS.
)
even if
cpu_hascounter(
)
reports false.
Useful for systems where the cycle counter doesn't run at a constant rate
(e.g. Soekris boxes).
WARNING ! Using this option can access some devices in such a manner as to leave them in an unstable or unuseable state, and can prevent those devices from being properly matched and/or attached. It can also lock up the entire i2c bus and even prevent a machine from completing the boot process. Don't use this option unless you know what you're doing and can accept all sorts of unforseen consequences.
pkgsrc/net/xorp
.
netstat -mssv
),
the function that adds nodes to the tree, is called.
AT&T
System V UNIX
style message queues.
See
msgctl(2),
msgget(2),
msgrcv(2),
msgsnd(2).
AT&T
System V UNIX
style semaphores.
See
semctl(2),
semget(2),
semop(2).
AT&T
System V UNIX
style semaphore identifiers.
The GENERIC config file for your port will have the default.
AT&T
System V UNIX
style semaphores in the system.
The GENERIC config file for your port will have the default.
AT&T
System V UNIX
style semaphores.
The GENERIC config file for your port will have the default.
AT&T
System V UNIX
style semaphores.
The GENERIC config file for your port will have the default.
AT&T
System V UNIX
style shared memory.
See
shmat(2),
shmctl(2),
shmdt(2),
shmget(2).
AT&T
System V UNIX
style shared memory pages that are available through the
shmget(2)
system call.
Default value is 1024 on most ports.
See
/usr/include/machine/vmparam.h
for the default.
/usr/include/machine/param.h
for exact default information.
Increase this value if you get
``mclpool limit reached''
messages.
/usr/include/machine/param.h
for the default upper and lower bounds.
The related options
`NKMEMPAGES_MIN'
and
`NKMEMPAGES_MAX'
allow the bounds to be overridden in the kernel configuration file.
These options are provided in the event the computed value is
insufficient resulting in an
``out of space in kmem_map''
panic.
/usr/include/machine/vmparam.h
for the port-specific default.
RLIMIT_DATA
(as returned by
getrlimit(2)).
See
/usr/include/machine/vmparam.h
for the port-specific default.
RLIMIT_DATA
(as returned by
getrlimit(2)).
See
/usr/include/machine/vmparam.h
for the port-specific default.
RLIMIT_STACK
(as returned by
getrlimit(2)).
See
/usr/include/machine/vmparam.h
for the port-specific default.
RLIMIT_STACK
(as returned by
getrlimit(2)).
See
/usr/include/machine/vmparam.h
for the port-specific default.
/usr/include/uvm/uvm_param.h
for some implementation details, and
/usr/include/machine/vmparam.h
for port specific details including availability.
The value is the default value for the global knob, see sysctl(3). If 0, PaX MPROTECT will be enabled only if explicitly set on programs using paxctl(8). If 1, PaX MPROTECT will be enabled for all programs. Programs can be exempted using paxctl(8).
See security(8) for more details.
The value is the default value for the global knob, see sysctl(3). If 0, PaX Segvguard will be enabled only if explicitly set on programs using paxctl(8). If 1, PaX Segvguard will be enabled to all programs, and exemption can be done using paxctl(8).
See security(8) for more details.
The value is the default value for the global knob, see sysctl(3). If 0, PaX ASLR will be enabled only if explicitly set on programs using paxctl(8). If 1, PaX ASLR will be enabled to all programs, and exemption can be done using paxctl(8).
See security(8) for more details.
The third part accounts for the size of the file buffer cache.
Its size is either
NKPTADD
pages (if defined) or memory size in bytes divided by two to
the power of
NKPTADDSHIFT
.
The default is undefined
NKPTADD
and
NKPTADDSHIFT=24
,
allowing for 16 buffers per megabyte of main memory (while
a GENERIC kernel allocates about half of that).
When you get "can't get KPT page" panics, you should increase
NKPTADD
(if defined), or decrease
NKPTADDSHIFT
by one.
IRQ Val IRQ Val IRQ Val IRQ Val
0 0x0001 4 0x0010 8 0x0100 12 0x1000
1 0x0002 5 0x0020 9 0x0200 13 0x2000
2 0x0004 6 0x0040 10 0x0400 14 0x4000
3 0x0008 7 0x0080 11 0x0800 15 0x8000