Commit Graph

1098 Commits

Author SHA1 Message Date
manu
ee0c5b44de Add initial (but unfinished) COMPAT_LINUX32 for amd64. This is good enough so
that the i386 license manager part of amd64 version of Fluent works.

While I'm here, add SysV IPC to COMPAT_LINUX/amd64
2006-02-09 19:18:56 +00:00
jmmv
47d8ee4167 Implement options string parsing of the form 'a=b c=d ...'. This will be
initially used by i386's Multiboot support but will be useful in other
situations too (think refactoring mount(2)'s API).
2006-02-03 11:04:46 +00:00
reinoud
09457a8a6e Initial import of a UDF file system implementation for NetBSD.
Finally the logic glue and the set distribution lists modifications.
2006-02-02 15:26:32 +00:00
cube
6527a45571 Have vnd(4) devices automatically created when the user tries to
configure one.  That removes the compile-time constant that limits the
number of vnds.

Thanks xtraeme@ for testing.
2006-02-01 03:15:33 +00:00
thorpej
14c13d7969 Conditionalize firmload.c on the firmload attribute. 2006-01-17 06:52:43 +00:00
thorpej
f789b6be70 Add an API for loading firmware images for devices. 2006-01-17 06:08:48 +00:00
cube
10c6a3a4b9 tap(4) depends on arp: it is an Ethernet interface, after all.
Solves PR 32548 by Pawel Chwalowski.
2006-01-16 22:49:23 +00:00
peter
11addaed46 Include net/pfil.c when pf is set. 2006-01-07 14:19:51 +00:00
perry
fcd5eb337c Welcome to 2006.
Don't forget to update copyright notices when you add new code.

(On behalf of an absent friend. Maybe he can do this himself next year.)
2006-01-01 00:00:01 +00:00
tsutsui
1f5055228d Add preliminary support for System V Boot File System.
Written by UCHIYAMA Yasushi <uch@netbsd>.
2005-12-29 14:53:45 +00:00
chs
33d70de438 remove the COM_MPLOCK option. always include the spinlock in the softc
and always call the simple_* locking functions.  the locking functions
are compiled out if they are not needed anyway, so a separate option
for this doesn't gain anything.

this also fixes the serial console on my alpha ES40 (which doesn't make much
sense since the com driver should still be under the big lock on alpha,
but whatever).
2005-12-27 00:46:38 +00:00
yamt
fcae6339ea defparam NMBCLUSTERS. 2005-12-21 10:57:22 +00:00
thorpej
c97c3de6e9 Remove the tablet line discipline. 2005-12-20 05:35:27 +00:00
dsl
04e3bf3418 If we are going to run mkdep separately for each file, we might as well
get this makefile to execute the mkdep commands - no need for a submake
and xargs at that point.
However we do need to do something to stop the 'mkdep -d' and CLEANDEPEND
command lines being to long.
Note that 'echo ${xxx} | cmd' is ok because echo is a shell builtin, and
isn't (usually) subject to the kernel's command line limits.
2005-12-12 22:44:04 +00:00
christos
95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
thorpej
e3dec5c260 Remove the VNODE_OP_NOINLINE option. We now NEVER inline vnode ops.
Briefly discussed on tech-kern not too long ago.
2005-12-07 00:42:03 +00:00
lukem
bc201c2f02 Remove the .d files during __CLEANDEPEND 2005-12-01 06:01:18 +00:00
thorpej
3a29afcd5e Move DDB files to files.ddb
XXX couple of kgdb references -- clean up later
2005-11-27 22:44:35 +00:00
thorpej
ff810990b2 Move UVM files to files.uvm 2005-11-27 22:18:41 +00:00
thorpej
0a23751882 Move 802.11-specific files to files.net80211 2005-11-27 21:14:26 +00:00
yamt
ac41acf302 add a new option DDB_COMMANDONENTER.
which can be useful for eg. broken console input.
2005-11-26 12:16:44 +00:00
thorpej
9c99eab147 Use a once control to call initialize the 802.11 layer when
ieee80211_ifattach() is called.  "wlan" no longer needs-flag,
and remove the ieee80211_init() call from main().
2005-11-25 17:33:56 +00:00
yamt
6eaa98c111 use .d mechanism for kernel as well. 2005-11-24 13:01:42 +00:00
dbj
8000972bbe . Have dbsym explicitly suggest increasing SYMTAB_SPACE when
an overflow occurs.
   . Make this error a fatal build time error
   . Move the support for dbsym into the MI Makefile.kern.inc,
     conditional upon the SYMTAB_SPACE option being defined in
     the kernel config file.
2005-11-24 12:54:29 +00:00
martin
7d5d371636 Only call ieee80211_init() in kernels that include some wlan stuff. 2005-11-18 21:55:13 +00:00
yamt
94809e83ec don't pass -t option to xargs unless MAKEVERBOSE is 2. 2005-11-02 14:29:52 +00:00
yamt
428a59477a physio: make requests with large buffers faster,
by queueing more i/o simultaneously.
2005-10-29 11:23:19 +00:00
dyoung
6a1be27c11 Switch to John Bicket's SampleRate algorithm for bitrate adaptation
on Atheros cards.
2005-10-21 04:07:48 +00:00
dyoung
2a007394bf For clarify, use the name opt_athhal.h instead of opt_ah.h for the
file where Atheros HAL options go.
2005-10-19 09:04:23 +00:00
yamt
aec75b1cc6 - change the way to specify a bufq strategy. (by string rather than by number)
- rather than embedding bufq_state in driver softc,
  have a pointer to the former.
- move bufq related functions from kern/subr_disk.c to kern/subr_bufq.c.
- rename method to strategy for consistency.
- move some definitions which don't need to be exposed to the rest of kernel
  from sys/bufq.h to sys/bufq_impl.h.
  (is it better to move it to kern/ or somewhere?)
- fix some obvious breakage in dev/qbus/ts.c.  (not tested)
2005-10-15 17:29:10 +00:00
cube
b82dcdacf5 tap doesn't expose any locator... It's just a trick to get a cfdriver
structure.
2005-10-05 14:16:46 +00:00
jmcneill
b77b366d41 Add gpio files and majors. 2005-09-27 02:41:10 +00:00
yamt
7b343ec65a - defflag bufq_fcfs and bufq_disksort.
- make them on by default.
2005-09-26 14:14:26 +00:00
jmmv
2a3e5eeb7c Apply the NFS exports list rototill patch:
- Remove all NFS related stuff from file system specific code.
- Drop the vfs_checkexp hook and generalize it in the new nfs_check_export
  function, thus removing redundancy from all file systems.
- Move all NFS export-related stuff from kern/vfs_subr.c to the new
  file sys/nfs/nfs_export.c.  The former was becoming large and its code
  is always compiled, regardless of the build options.  Using the latter,
  the code is only compiled in when NFSSERVER is enabled.  While doing this,
  also make some functions in nfs_subs.c conditional to NFSSERVER.
- Add a new command in nfssvc(2), called NFSSVC_SETEXPORTSLIST, that takes a
  path and a set of export entries.  At the moment it can only clear the
  exports list or append entries, one by one, but it is done in a way that
  allows setting the whole set of entries atomically in the future (see the
  comment in mountd_set_exports_list or in doc/TODO).
- Change mountd(8) to use the nfssvc(2) system call instead of mount(2) so
  that it becomes file system agnostic.  In fact, all this whole thing was
  done to remove a 'XXX' block from this utility!
- Change the mount*, newfs and fsck* userland utilities to not deal with NFS
  exports initialization; done internally by the kernel when initializing
  the NFS support for each file system.
- Implement an interface for VFS (called VFS hooks) so that several kernel
  subsystems can run arbitrary code upon receipt of specific VFS events.
  At the moment, this only provides support for unmount and is used to
  destroy NFS exports lists from the file systems being unmounted, though it
  has room for extension.

Thanks go to yamt@, chs@, thorpej@, wrstuden@ and others for their comments
and advice in the development of this patch.
2005-09-23 12:10:31 +00:00
yamt
a901cfd77c enable VMSWAP by default. 2005-09-17 14:39:11 +00:00
yamt
d597202302 make VMSWAP optional again. 2005-09-17 14:38:38 +00:00
yamt
0576f5e521 add conf/std for MI standard options. currently empty. 2005-09-17 09:43:40 +00:00
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
758a209d23 64 bit inode changes. 2005-08-19 02:03:49 +00:00
yamt
38ca5312d2 revert "defflag VMSWAP" changes for now.
there seems to be far more people who don't want to edit
their kernel config files than i thought.
2005-07-31 04:04:30 +00:00
yamt
1d0891101c defflag VMSWAP. 2005-07-30 06:33:33 +00:00
skrll
acd7c4c5ca Add a driver for Cypress microcontroller based USB serial adapters.
XXX hw flow control is not supported.
2005-07-30 06:14:49 +00:00
hubertf
673730506c Add support for reading cloop2 compressed filesystem image,
enable by putting VND_COMPRESSION into kernel config file.
Written by Cliff Wright, polished up slightly by me.
2005-07-17 00:08:27 +00:00
christos
b5890013d6 Defopt VERIFIED_EXEC* 2005-07-16 22:50:15 +00:00
kiyohara
c1a84a4d12 ieee1394 import from FreeBSD. 2005-07-11 15:29:05 +00:00
thorpej
76fd10b45a Move VFS extended attribute support to its own file. 2005-07-09 01:05:23 +00:00
drochner
8728cee448 add autoconf glue for the ralink wireless drivers, basically from
PR kern/30449, but changed so that pci/cardbus and usb devices
are all called "ral" to the user, so that code can be shared eventually
2005-07-01 20:11:20 +00:00
christos
14f353517f Create the file opt_ah.h, which appears to be needed. Can we please
s/AH_/ATHHAL_/ everywhere?
2005-06-27 21:41:45 +00:00
thorpej
65412a2710 Implement expansion of special "magic" strings in symlinks into
system-specific values.  Submitted by Chris Demetriou in Nov 1995 (!)
in PR kern/1781, modified only slighly by me.

This is enabled on a per-mount basis with the MNT_MAGICLINKS mount
flag.  It can be enabled at mountroot() time by building the kernel
with the ROOTFS_MAGICLINKS option.

The following magic strings are supported by the implementation:

	@machine	value of MACHINE for the system
	@machine_arch	value of MACHINE_ARCH for the system
	@hostname	the system host name, as set with sethostname()
	@domainname	the system domain name, as set with setdomainname()
	@kernel_ident	the kernel config file name
	@osrelease	the releaes number of the OS
	@ostype		the name of the OS (always "NetBSD" for NetBSD)

Example usage:

	mkdir /arch/i386/bin
	mkdir /arch/sparc/bin
	ln -s /arch/@machine_arch/bin /bin
2005-06-23 00:30:28 +00:00
dyoung
9063402978 Resolve conflicts in importation of 18-May-2005 ath(4) / net80211(9)
from FreeBSD.  Introduce compatibility shims (sys/dev/ic/ath_netbsd.[ch],
sys/net80211/ieee80211_netbsd.[ch]).  Update drivers (an, atu, atw,
awi, ipw, iwi, rtw, wi) for the new net80211(9) API.
2005-06-22 06:14:51 +00:00
martin
40860f4eb5 Do not use -Wreturn-type with gcc 2.95.x 2005-06-18 22:56:02 +00:00
matt
7728c19903 Reduce INSTALL_TINY by 1.3KB.
Support for a.out coredumps is now conditional on EXEC_AOUT, EXEC_COFF,
EXEC_ECOFF, or EXEC_MACHO, or LKM.  Since coredump_netbsd is the only user
of cpu_coredump, make that conditional too.  Lastly, add 'no options EXEC_AOUT'
so the EXEC_AOUT option in std.i386 can be overridden.
2005-06-12 00:24:32 +00:00
sjg
aa7b975acd Sometimes .BEGIN target is not wanted - eg in sub-make's. 2005-06-07 18:11:34 +00:00
blymn
2949d9d676 Added veriexec as a MI major. 2005-06-03 12:39:52 +00:00
sjg
bfae9bbcab Don't assume infinite command line length. 2005-06-02 05:11:55 +00:00
uwe
609ad365b1 Add CWARNFLAGS.<fn> 2005-06-01 00:11:32 +00:00
yamt
e5559b5cd1 - move COPTS.${.IMPSRC:T} and friends after other options so that
they can override global options.
- put CPPFLAGS.${.IMPSRC:T} into CPPFLAGS, rather than CFLAGS.
2005-05-31 14:59:31 +00:00
christos
dfa84069f5 Add overrides for tools we use (genassym and hexdump). Now kernel compiles
work again (hi jason!)
2005-05-31 04:03:46 +00:00
christos
49f85b90ec Most of the kernel source now works with "-Wcast-qual -Wshadow
-Wreturn-type -Wwrite-strings -Wswitch" so I am turning them on. There
is going to be a little lossage on some platforms but you can always
compile with "make DEFWARNINGS=no". Tested on sparc64 and i386.
2005-05-31 02:25:39 +00:00
thorpej
1fcb464db4 Use TOOL_GENASSYM. Part of PR toolchain/30350 2005-05-30 15:54:30 +00:00
dbj
8b8acc85db tweak reference of DEBUG variable to ignore options that don't start with -g 2005-05-23 22:01:11 +00:00
blymn
8387760ed1 Rototill of the verified exec functionality.
* We now use hash tables instead of a list to store the in kernel
    fingerprints.
  * Fingerprint methods handling has been made more flexible, it is now
    even simpler to add new methods.
  * the loader no longer passes in magic numbers representing the
    fingerprint method so veriexecctl is not longer kernel specific.
  * fingerprint methods can be tailored out using options in the kernel
    config file.
  * more fingerprint methods added - rmd160, sha256/384/512
  * veriexecctl can now report the fingerprint methods supported by the
    running kernel.
  * regularised the naming of some portions of veriexec.
2005-04-20 13:44:45 +00:00
yamt
2c8d11ba2b make blist compilable on netbsd. 2005-04-06 11:33:54 +00:00
jdolecek
1c89179871 Add driver for MCA Tiara LANCard / Fujitsu mb86950 EtherStar. Driver provided
in PR kern/26899 by Dave Barnes.
2005-04-03 11:21:44 +00:00
christos
18ffd946a1 It is silly to parse the comment in the header file to determine the
version number, when it is trivial to compute it directly. Also if
you are going to fork awk to do some work, do all of it there.
2005-03-27 23:27:31 +00:00
cube
040e3b19e5 Add attimer(4) driver, with ISA and ACPI attachments.
attimer(4) is the new body of the part of pcppi(4) that mapped the TIMER1
register to set the pitch of the bell.  It was necessary to separate them
in order to have a working ACPI attachment (as the two appear as different
devices in the ACPI structures).
2005-03-25 23:06:19 +00:00
yamt
5240b887db add agr(4), a pseudo network device driver for link aggregation. 2005-03-18 11:11:50 +00:00
perry
477853c351 nuke trailing whitespace 2005-02-26 22:58:54 +00:00
christos
16b557a02b Simplify the awk to print the copyright, by using printf instead of print. 2005-02-13 09:13:04 +00:00
drochner
0c51c7b7aa don't compile isp_target.c if ISP_TARGET_MODE is not required 2005-02-01 16:00:50 +00:00
joff
f9e7677725 new attribute matrixkp 2005-01-31 06:09:03 +00:00
yamt
a9b37be6a2 - switch to dev/rtl8169.c from pci/if_re.c.
- enable re@cardbus.
both of re@pci and re@cardbus seem to work for me.
2005-01-21 12:32:18 +00:00
cube
6971b4d382 if_tap.c needs NBPFILTER flag. 2005-01-19 10:17:00 +00:00
petrov
1b730a5d79 Correct NKMEMPAGES_MIN option name. 2005-01-13 20:16:02 +00:00
kent
23b5d91433 merge kent-audio1 branch, which introduces audio filter pipeline to the MI
audio framework


Summary of changes:

* struct audio_params
  - remove sw_code, factor, factor_denom, hw_sample_rate,
hw_encoding ,hw_precision, and hw_channels.  Conversion information
is conveyed by stream_filter_list_t.
  - change the type of sample_rate: u_long -> u_int
  - add `validbits,' which represents the valid data size in
precision bits.  It is required in order to distinguish 24/32bit
from 24/24bit or 32/32bit.

* audio_hw_if
 - add two parameters to set_params()
	stream_filter_list_t *pfil, stream_filter_list *rfil
   A HW driver should set filter recipes for requested formats
 - constify audio_params parameters of trigger_output() and
trigger_input().  They represent audio formats for the hardware.
 - make open() and close() optional
 - add int (AUMODE_PLAY or AUMODE_RECORD) and audio_params_t parameters
 to round_blocksize()

* sw_code is replaced with stream_filter_t.
  stream_filer_t converts audio data in an input buffer and writes
into another output buffer unlike sw_code, which converts data in
single buffer.
  converters in dev/auconv.c, dev/mulaw.c, dev/aurateconv.c,
dev/tc/bba.c, dev/ic/msm6258.c, and arch/arm/iomd/vidcaudio.c are
reimplemented as stream_filter_t

* MI audio
 - audiosetinfo() builds filter pipelines from stream_filter_list_t
filled by audio_hw_if::set_params()
 - audiosetinfo() returns with EINVAL if mmapped and set_params()
requests filters
 - audio_write(), audio_pint(), and audio_rint() invoke a filter
pipeline.
 - ioctl() for FIONREAD, AUDIO_WSEEK, AUDIO_GETIOFFS,
AUDIO_GETOOFFS, and audio_prinfo::{seek,samples} for
AUDIO_GETINFO handle values for a buffer nearest to userland.

* add `struct device *' parameter to ac97_attach()

* all of audio HW drivers follow audio_hw_if and ac97 changes
2005-01-10 22:01:36 +00:00
cube
0615d0207e Addition of tap(4).
NAME
     tap - virtual Ethernet device

SYNOPSIS
     pseudo-device tap

DESCRIPTION
     The tap driver allows the creation and use of virtual Ethernet devices.
     Those interfaces appear just as any real Ethernet NIC to the kernel, but
     can also be accessed by userland through a character device node in order
     to read frames being sent by the system or to inject frames.

     In that respect it is very similar to what tun(4) provides, but the added
     Ethernet layer allows easy integration with machine emulators or virtual
     Ethernet networks through the use of bridge(4) with tunneling.

``Qui tacet consentire videtur.''
2005-01-08 22:27:54 +00:00
joff
8d1a86c97d add tscs 2005-01-08 02:56:35 +00:00
mycroft
39cdc11f28 Welcome to 2005.
Don't forget to update copyright notices when you add new code.
2005-01-01 00:00:01 +00:00
fvdl
cdbba9f326 defparam USB_MEM_RESERVE 2004-12-21 16:36:53 +00:00
heas
d7dac6089c Adjust the cscope target so that each source file on a separate line to avoid
overrunning cscope's read buffer and prefix files within lib/{kern,compat}
with the appropriate path.
2004-12-16 00:35:48 +00:00
christos
f08ea58021 clonify strip and sl. 2004-12-05 05:43:04 +00:00
peter
396b87b8c2 Convert lo(4) to a clonable device.
This also removes the loif array and changes all code to use the new
lo0ifp pointer which points to the lo0 ifnet structure.

Approved by christos.
2004-12-04 16:10:25 +00:00
christos
0146482549 Clonify bpf. I am not changing /dev/bpfX -> /dev/bpf until all userland
programs have been fixed.
2004-11-30 04:28:43 +00:00
yamt
5dac1f19cb revert unintended changes in the previous. pointed by matthew green. 2004-11-25 06:52:14 +00:00
yamt
eb54e7db24 lookup bufq using link_set rather than a switch statement. 2004-11-25 04:52:23 +00:00
kent
6fd5928d22 add `needs-flag' to the file line for mulaw.
move the file line for aurateconv.
2004-11-13 07:58:14 +00:00
jdolecek
407f95a9b4 ptyfs moved from miscfs/ to fs/
sort file system includes
2004-11-11 19:21:46 +00:00
christos
65f9eaa0a7 Add ptyfs; from Geoff Wing. 2004-11-11 03:32:05 +00:00
christos
bb687f7735 Update to the split pty driver. 2004-11-10 17:26:16 +00:00
thorpej
dfc3ead10a MBR partition table support for wedges, enabled by the DKWEDGE_METHOD_MBR
option.
2004-10-23 17:25:14 +00:00
yamt
1c2a2dcad3 move i/o schedulers to their own files.
namely, from kern/subr_disk.c to kern/bufq_{fcfs,disksort,readprio,priocscan}.c.
2004-10-14 05:12:28 +00:00
thorpej
563a66a36f Add a parsing module for 4.4BSD/NetBSD disklabels. This module supports
disklabels nested inside an MBR "NetBSD" or "386BSD" partition (first
one found is considered authoritative for the disk), or in one of several
known locations for various NetBSD platforms.  It can read native or other-
endian disklabels (code is there, but not tested).

If you want to play with this, exercise caution; you can't currently
mountroot on a wedge (setroot() needs some work).  Enabled by the
DKWEDGE_METHOD_BSDLABEL kernel option.
2004-10-04 01:16:39 +00:00
thorpej
40f14b0328 Remove something mistakenly committed in last. 2004-10-04 01:07:57 +00:00
thorpej
3cb291f243 Move wedge code to a subdirectory, as suggested by Christos. 2004-10-04 01:07:25 +00:00
thorpej
27f0170634 Break out the wedge discovery methods into true modules, and add some
infrastructure that allows new ones to be added.  The discovery methods
are prioritized, and only one can exist at a given priority.

The DKWEDGE_METHOD_GPT option causes GPT support to be included.  GPT is
at priority 0; we prefer GPT above all others.
2004-10-01 05:16:04 +00:00
christos
d7f20abdc1 Disable autonicetime. As discusses in tech-kern. 2004-09-27 14:08:13 +00:00
dyoung
f5fc723f2b Add rtw(4). 2004-09-26 03:03:17 +00:00
thorpej
baefaf4422 Work-in-progress implementation of "wedges", a new way to represent
partitions in the NetBSD kernel.  See discussion on tech-kern for details.
2004-09-25 03:30:44 +00:00
thorpej
11afd11faa Add a new VNODE_LOCKDEBUG option, which enables checks in the VOP_*()
calls to ensure that the vnode lock state is as expected when the VOP
call is made.  Modify vnode_if.src to set the expected state according
to the documenting lock table for each VOP.  Modify vnode_if.sh to emit
the checks.

Notes:
- The checks are only performed if the vnode has the VLOCKSWORK bit
  set.  Some file systems (e.g. specfs) don't even bother with vnode
  locks, so of course the checks will fail.
- We can't actually run with VNODE_LOCKDEBUG because there are so many
  vnode locking problems, not the least of which is the "use SHARED for
  VOP_READ()" issue, which screws things up for the entire call chain.

Inspired by similar changes in OpenBSD, but implemented differently.
2004-09-21 03:10:35 +00:00
jdolecek
120bb37404 remove COMPAT_AOUT 2004-09-14 16:57:31 +00:00