Commit graph

3367 commits

Author SHA1 Message Date
Poul-Henning Kamp 3fc473df24 Add two symbols start_ctors and stop_ctors to allow us to find the
.ctors section so we can call the constructors.
2003-01-06 07:37:15 +00:00
Jake Burkholder a360a43dd5 Improve the way that an elf image activator for an alternate word size is
included in the kernel.  Include imgact_elf.c in conf/files,  instead of
both imgact_elf32.c and imgact_elf64.c, which will use the default word
size for an architecture as defined in machine/elf.h.  Architectures that
wish to build an additional image activator for an alternate word size can
include either imgact_elf32.c or imgact_elf64.c in files.${ARCH}, which
allows it to be dependent on MD options instead of solely on architecture.

Glanced at by:	peter
2003-01-04 22:07:48 +00:00
Jake Burkholder 75db2b5e27 Add a driver for the Zilog 8530 dual uart found in Ultra 1s and Ultra 2s.
With a 1 byte transmit fifo, 3 byte receive fifo, and wierd multiplexed I/O
designed for a Z80 cpu, this chip redefines suckage.

Based on the openbsd and netbsd drivers.  Only really works as a console,
modem support is not complete since I can't test it.
2003-01-01 19:49:30 +00:00
Jens Schweikhardt 9d5abbddbf Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,
especially in troff files.
2003-01-01 18:49:04 +00:00
Hidetoshi Shimokawa b018dcd1b8 - Implement primal Configuration ROM parser.
- Support multiple LUNs for SBP-II.
2002-12-31 10:28:49 +00:00
Jake Burkholder f42d082d80 Reserve major 182 for the zs driver. 2002-12-31 06:54:52 +00:00
Scott Long 1f380ae506 Move the amd(4) driver to it's own directory in preparation for it growing
an sbus front-end.
2002-12-13 22:59:18 +00:00
Murray Stokely 865fa6a43a HEAD reverts to 5.0-CURRENT
RELENG_5_0 is 5.0-RC
5.0-RELEASE will be built off of the RELENG_5_0 branch
2002-12-13 08:47:15 +00:00
Jake Burkholder f2de139378 Don't run kldxref when installing modules on sparc64. kldxref and the whole
module dependency system rely on linker behaviour that is machine dependent
and not part of the elf spec, and only work by accident on other platforms.

Approved by:	re
2002-12-13 00:32:29 +00:00
Robert Watson 1bebbbe220 Document that ENABLE_VFS_IOOPT is dangerous. Please don't use it.
Suggested by:	alc
Approved by:	re (murray)
2002-12-09 03:38:03 +00:00
David E. O'Brien b07af2c4b2 Back out rev 1.7 -- I'm not sure we're ready for it and I can't test it.
Marcel will find out RSN if it is needed and I'll let him fix this up if
need be.
2002-12-05 18:35:44 +00:00
David E. O'Brien dfe585cc69 Our binary output format is now "elf64-ia64-little-freebsd". 2002-12-05 18:28:01 +00:00
Murray Stokely 16c4307462 Welcome to 5.0-RC.
Approved by:	re
2002-12-05 05:27:49 +00:00
Søren Schmidt 8ba4488cea Add support for the PC98 platform to the ATA driver.
This mostly consists of functionality to serialize accesses to
the two ATA channels (which can also be used to "fix" certain
PCI based controllers).
Add support for Acard controllers.
Enable the ATA driver in PC98 GENERIC, and add device hints.
Update man page with latest support.

The PC98 core team has kindly provided me with a PC98
machine that made this all possible, thanks to all that
contributed to that effort, without that this would
probably newer have been possible..

Approved by: re@
2002-12-03 20:20:44 +00:00
Robert Watson 69e979c3c4 Reclaim major number 182 which I allocated for mdsio. It was decided
that this should become a line discipline for sio rather than a
separate driver.
2002-11-28 04:29:52 +00:00
Noriaki Mitsunaga e8c1847f37 Uncomment out the lines of {ncv,ncr53c500,tmc18c30}_pccard.c .
They now support NEWCARD and compiles with GENERIC kernel.

Approved by:	re
2002-11-28 01:17:48 +00:00
Robert Watson c47257370f Hook up kernel options and build information for mac_lomac.
Approved by:	re
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-11-26 17:32:39 +00:00
Marcel Moolenaar 521cef5ba6 Add ITANIUM2 as a global option. 2002-11-24 19:50:15 +00:00
Juli Mallett 5f07565bcb Move SHOW_BUSYBUFS and PANIC_REBOOT_WAIT_TIME into the MI options file, since
MI code uses them, and every platform provides them (except x86_64 whose
options file was lacking one).

Reviewed by:	bde, rwatson
2002-11-18 06:17:07 +00:00
Daniel Eischen 2be05b70c9 Add getcontext, setcontext, and swapcontext as system calls.
Previously these were libc functions but were requested to
be made into system calls for atomicity and to coalesce what
might be two entrances into the kernel (signal mask setting
and floating point trap) into one.

A few style nits and comments from bde are also included.

Tested on alpha by: gallatin
2002-11-16 06:35:53 +00:00
Luigi Rizzo bbb4330b61 Massive cleanup of the ip_mroute code.
No functional changes, but:

  + the mrouting module now should behave the same as the compiled-in
    version (it did not before, some of the rsvp code was not loaded
    properly);
  + netinet/ip_mroute.c is now truly optional;
  + removed some redundant/unused code;
  + changed many instances of '0' to NULL and INADDR_ANY as appropriate;
  + removed several static variables to make the code more SMP-friendly;
  + fixed some minor bugs in the mrouting code (mostly, incorrect return
    values from functions).

This commit is also a prerequisite to the addition of support for PIM,
which i would like to put in before DP2 (it does not change any of
the existing APIs, anyways).

Note, in the process we found out that some device drivers fail to
properly handle changes in IFF_ALLMULTI, leading to interesting
behaviour when a multicast router is started. This bug is not
corrected by this commit, and will be fixed with a separate commit.

Detailed changes:
--------------------
netinet/ip_mroute.c     all the above.
conf/files              make ip_mroute.c optional
net/route.c             fix mrt_ioctl hook
netinet/ip_input.c      fix ip_mforward hook, move rsvp_input() here
                        together with other rsvp code, and a couple
                        of indentation fixes.
netinet/ip_output.c     fix ip_mforward and ip_mcast_src hooks
netinet/ip_var.h        rsvp function hooks
netinet/raw_ip.c        hooks for mrouting and rsvp functions, plus
                        interface cleanup.
netinet/ip_mroute.h     remove an unused and optional field from a struct

Most of the code is from Pavlin Radoslavov and the XORP project

Reviewed by: sam
MFC after: 1 week
2002-11-15 22:53:53 +00:00
Matthew N. Dodd 1c54ff3315 Convert kernel compile option PCI_ALLOW_UNSUPPORTED_IO_RANGE to
a loader tunable hw.pci.allow_unsupported_io_range.

Submitted by:	 Hiten Pandya <hiten@angelica.unixdaemons.com>
Approved by:	 re (murray)
2002-11-13 09:42:25 +00:00
Peter Wemm e48938dd04 Major #46 was also MIA. 2002-11-13 01:42:59 +00:00
Peter Wemm 0ac1a67828 Note that 101 is unused, rather than leave it out of the file.
Add some historical information.  This can be removed as majors
are recycled.
2002-11-13 00:25:01 +00:00
Hidetoshi Shimokawa 17821895ee Split userland services to fwdev.c. 2002-11-12 15:22:19 +00:00
John Baldwin 69e58e12c3 - Move netsmb entries over to MI files. netsmb appears to be MI code.
- Add 'nowerror' to pci/simos.c to help LINT builds.
2002-11-08 22:33:14 +00:00
John Baldwin f6af4ff6cb Make 3dfx i386-only. The memrange API it uses may be defined in an MI
header, but it is only implemented on i386.
2002-11-08 20:04:38 +00:00
John Baldwin 787f149830 Move rc(4) over to MI notes and enable it as a MI module. 2002-11-08 19:34:26 +00:00
John Baldwin 2d2f7b6292 Make xrpu(4) i386-only. Consumers of i386_btop() are not MI. 2002-11-08 15:05:16 +00:00
John Baldwin 1786a481d7 Move sr(4) over to i386-only as it is yet another user of kvtop(). 2002-11-07 21:15:29 +00:00
John Baldwin 7d2ba89bbf Move firewire back to being MI. 2002-11-07 16:19:43 +00:00
John Baldwin 8e302c5b17 Merge over ar(4) and db(4) to files.pc98. 2002-11-07 15:52:34 +00:00
John Baldwin 246d578cba lnc(4) uses kvtop() and is thus i386-only for now. 2002-11-06 22:56:57 +00:00
John Baldwin c8341b3e2d Make firewire i386-only for now. It doesn't quite handle machines with
64-bit address spaces yet.  Pointy hat to myself for sticking it in the MI
NOTES file to begin with.
2002-11-06 22:30:33 +00:00
John Baldwin b76c5a11e5 ed(4) uses kvtop() and is thus i386-only. It has several other warnings
related to sizeof(int) != sizeof(void *), but kvtop() is much harder to
fix.

Approved by:	imp
2002-11-06 22:03:53 +00:00
John Baldwin b180bb1684 Move the drm code to the i386 MD NOTES file. It can be added to other MD
NOTES files if desired, but this code is not MI on FreeBSD.  The Alpha
support is Linux specific and does not compile on FreeBSD.
2002-11-06 21:42:42 +00:00
John Baldwin cea108a8ce Move digi to the i386 MD NOTES until it stops using inb() and outb().
Please use bus_space functions instead.
2002-11-06 21:11:42 +00:00
John Baldwin 1183b97250 - Move comments regarding flags for dgb(4) over to the MD NOTES file where
dgb(4) lives.
- Move dgb(4) back to where it used to be relative to other drives in the
  old NOTES/LINT file.
2002-11-06 21:07:13 +00:00
John Baldwin 820a843d5a dgb(4) currently is i386-only. 2002-11-06 21:02:19 +00:00
John Baldwin 8a651d2c4a Make the ar(4) driver i386-only for now. It has lots of sizeof(int) ==
sizeof(void *) assumptions and doesn't use busdma yet (it uses kvtop()
which is not an MI interface).

Recommended by:	jake, mux
2002-11-06 19:27:09 +00:00
Maxime Henrion 361186e5d5 In the !DEBUG case, we were passing foo.ko two times on the
rm -f command line when doing a make clean.  Fix this.

Reviewed by:	ru
2002-11-06 17:40:13 +00:00
Robert Watson 81ccbd2ad1 Reserve a major number for the mdsio driver: RS-485 driver for 8250-family
UARTs.

Requested by:	doconnor@gsoft.com.au
2002-11-06 02:19:28 +00:00
Peter Wemm c987342f8e Grab 181 for HP/Compaq ProLiant advanced server management driver 2002-11-05 16:12:31 +00:00
Matthew N. Dodd 6fe8789d6d - Convert to newbus, bus_space etc.
- Move to MI space.

Tested on:	 i386
2002-11-05 09:37:32 +00:00
Scott Long fb404d6fcf Hook the aic7xxx modules up. This requires some extra care since aicasm
is a compiler tool and needs to be compiled by the host compiler.  I've
tested this in i386->sparc cross-build, 4.7->current upgrade, normal
buildkernel target, and normal /sys/i386/compile/GENERIC configurations.

Submitted by:	ru
2002-11-03 23:48:14 +00:00
Poul-Henning Kamp 077f9aa12e Make geom_mbr.c optional on PC98, use GEOM_MBR option to include it.
Disable check for supposedly magic "IPL1" string for PC98 labels, its
thaumaturgical power is in doubt.
2002-10-26 20:17:59 +00:00
Robert Watson 763bbd2f4f Slightly change the semantics of vnode labels for MAC: rather than
"refreshing" the label on the vnode before use, just get the label
right from inception.  For single-label file systems, set the label
in the generic VFS getnewvnode() code; for multi-label file systems,
leave the labeling up to the file system.  With UFS1/2, this means
reading the extended attribute during vfs_vget() as the inode is
pulled off disk, rather than hitting the extended attributes
frequently during operations later, improving performance.  This
also corrects sematics for shared vnode locks, which were not
previously present in the system.  This chances the cache
coherrency properties WRT out-of-band access to label data, but in
an acceptable form.  With UFS1, there is a small race condition
during automatic extended attribute start -- this is not present
with UFS2, and occurs because EAs aren't available at vnode
inception.  We'll introduce a work around for this shortly.

Approved by:	re
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-10-26 14:38:24 +00:00
Peter Wemm 23eeeff7be Split 4.x and 5.x signal handling so that we can keep 4.x signal
handling clean and functional as 5.x evolves.  This allows some of the
nasty bandaids in the 5.x codepaths to be unwound.

Encapsulate 4.x signal handling under COMPAT_FREEBSD4 (there is an
anti-foot-shooting measure in place, 5.x folks need this for a while) and
finish encapsulating the older stuff under COMPAT_43.  Since the ancient
stuff is required on alpha (longjmp(3) passes a 'struct osigcontext *'
to the current sigreturn(2), instead of the 'ucontext_t *' that sigreturn
is supposed to take), add a compile time check to prevent foot shooting
there too.  Add uniform COMPAT_43 stubs for ia64/sparc64/powerpc.

Tested on: i386, alpha, ia64.  Compiled on sparc64 (a few days ago).
Approved by: re
2002-10-25 19:10:58 +00:00
John Baldwin 0f8e01f117 Oops, I missed a few changes in 'device acpica' -> 'device acpi' change.
Submitted by:	Hiten Pandya <hiten@angelica.unixdaemons.com>
2002-10-24 19:17:06 +00:00
John Baldwin d2ec391b39 Rename 'device acpica' to 'device acpi'.
Approved by:	msmith, iwasaki
2002-10-24 19:05:04 +00:00
Robert Watson eae2f20c47 Provide kernel options for the various MAC policy modules so that
they may be statically linked into the kernel.  Note that statically
linked modules, unlike dynamically linked modules, get INVARIANTS,
so if there are INVARIANTS failures, you'll bump into them rather
than not.  Add the options to NOTES.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-10-24 17:21:40 +00:00
Yoshihiro Takahashi 2ca2ca3af6 The rc driver is not needed for pc98. 2002-10-24 07:18:24 +00:00
John Baldwin 599c57a971 - New-bussify the rc(4) device driver.
- Add detach support to the driver so that you can kldunload the module.
  Note that currently rc_detach() fails to detach a unit if any of its
  child devices are open, thus a kldunload will fail if any of the tty
  devices are currently open.
- sys/i386/isa/ic/cd180.h was moved to sys/dev/ic/cd180.h as part of
  this change.

Requested by:	rwatson
Tested by:	rwatson
2002-10-23 15:53:09 +00:00
Matthew N. Dodd bd762c58db Reserve a major number for NVIDIA. 2002-10-22 16:42:16 +00:00
Brooks Davis 11e1ea96f6 All bpf.h/NBPF consumers are gone so stop generating bpf.h 2002-10-21 05:09:04 +00:00
Thomas Moestl e381d2455b Add kernel dump support, based on the ia64 version (which was committed
as sparc64/sparc64/dump_machdep.c a while back).
Other than ia64 (which uses ELF), sparc64 uses a homegrown format for
the dumps (headers are required because the physical address and size of
the tsb must be noted, and because physical memory may be discontiguous);
ELF would not offer any advantages here.

Reviewed by:	jake
2002-10-20 17:03:15 +00:00
Scott Long f9d186edc8 After much delay and anticipation, welcome RAIDFrame into the FreeBSD
world.  This should be considered highly experimental.

Approved-by:	re
2002-10-20 08:17:39 +00:00
Maxime Henrion 43ab972150 Put back NORMAL_C_NOWERROR, it was actually used.
Pointy hat to:	mux
2002-10-19 22:24:43 +00:00
Marcel Moolenaar 0635b341f2 Remove the _ia64_unwind_start and _ia64_unwind_end symbols. We now
find the unwind table through the ELF program headers.
2002-10-19 19:32:21 +00:00
Poul-Henning Kamp 19b5c7bc4b Add Geom Based Disk Encryption to the tree.
This is an encryption module designed for to secure denial of access
to the contents of "cold disks" with or without destruction activation.

Major features:

   * Based on AES, MD5 and ARC4 algorithms.
   * Four cryptographic barriers:
        1) Pass-phrase encrypts the master key.
        2) Pass-phrase + Lock data locates master key.
        3) 128 bit key derived from 2048 bit master key protects sector key.
        3) 128 bit random single-use sector keys protect data payload.
   * Up to four different changeable pass-phrases.
   * Blackening feature for provable destruction of master key material.
   * Isotropic disk contents offers no information about sector contents.
   * Configurable destination sector range allows steganographic deployment.

This commit adds the kernel part, separate commits will follow for the
userland utility and documentation.

This software was developed for the FreeBSD Project by Poul-Henning Kamp and
NAI Labs, the Security Research Division of Network Associates, Inc.  under
DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA CHATS
research program.

Many thanks to Robert Watson, CBOSS Principal Investigator for making this
possible.

Sponsored by:   DARPA & NAI Labs.
2002-10-19 17:02:17 +00:00
Maxime Henrion d6fd08cc3b - Remove ${NORMAL_C_NOWERROR}, it is not used anymore. To build
without -Werror, we do "make WERROR=", which doesn't need this
  variable.
- Use ${.IMPSRC} instead of $< in ${NORMAL_M} for consistency with
  the rest of the file.
- Add ${WERROR} for the ${NORMAL_M} case.

Tested on:	i386, sparc64
2002-10-19 16:47:13 +00:00
Marcel Moolenaar 628d99be0d Make the unwind functions standard and not optional on ddb. They
will eventually be used for ktrace(2) too.
2002-10-19 04:02:16 +00:00
Eric Moore 1a6b414672 (1) added LSI Logic copyright, and legal line 3 in license, and string
changes for "LSILogic"
(2) enabled non-disk support through CAM interface
(3) HA_INQ (a) enabled tagged queuing (b) disable reset during
	driver loading (b) renamed BSDi string to LSI
(4) disabled detecting disk devices during SCSI INQUIRY
(5) changed dcdb single element sglist to send one entire buffer chunk
(6) nsgelem not set in sglist
(7) ap_data_transfer_length not set for dcdb
(8) changed "struct thread" to "d_thread_t" for compatibliity { xxx_open,
	xxx_close, xxx_ioctl }
(9) miscellaneous compatiblity fixes
(10) bug fix for 0x0409/0x1000 card
(11) added compiling amr_cam.c in sys/conf/files
(12) added compiling amr_cam.c in sys/modules/amr/Makefile

Reviewed by:ps
MFC after:1 week
1 week
2002-10-18 21:29:14 +00:00
Thomas Moestl a8250941eb Build openfirmio on sparc64. 2002-10-18 15:27:02 +00:00
Marcel Moolenaar 5d3ac4cae7 Cover the ELF headers with the text segment so that they get loaded
into memory. This brings us in line with the other architectures and
more easily allows us to do machine dependent processing on the ELF
file (such as scanning for unwind information).
2002-10-18 04:46:36 +00:00
Thomas Moestl b08cb104df Allocate major 177 for the OpenFirmware control device, which I have
ported from NetBSD and plan to commit soon.
2002-10-17 18:11:49 +00:00
Maxim Sobolev d3d67116a6 my(4) requires miibus, so that move it into proper section and also add a
verbose description into comment area.
2002-10-17 15:32:03 +00:00
Bruce Evans 25388b6cc4 Fixed the quoting of the value of SC_CUT_SEPCHARS. The double quotes
needed to be quoted (to get a C string literal), not the value itself.

Fixed the value of SC_CUT_SEPCHARS.  Setting this value would have had no
effect even if it were used, since the value was the same as the default.

The above bugs had no effect except to set bad examples, since test
coverage of SC_CUT_SEPCHARS is broken by enabling a negative option.

Removed (unquoted) double quotes for all options.  They were all bogus
since they had no effect except to make non-strings look like strings.
Most of the non-strings were expressions.  The value of INIT_PATH is
a non-string since it is stringified later (unlike SC_CUT_SEPCHARS).

Fixed parenthesization errors inside bogus quotes (parenthesize values
if they have more than one token in them but don't parenthesize single
tokens).
2002-10-17 13:47:31 +00:00
Mitsuru IWASAKI c42946c4c1 Add new syscons option SC_NO_SUSPEND_VTYSWITCH.
This disables vty switch during suspend/resume.
2002-10-17 07:04:31 +00:00
Yoshihiro Takahashi 6c41dd0705 MFi386: revision 1.181. 2002-10-16 15:18:58 +00:00
Sam Leffler b9234fafa0 Tie new "Fast IPsec" code into the build. This involves the usual
configuration stuff as well as conditional code in the IPv4 and IPv6
areas.  Everything is conditional on FAST_IPSEC which is mutually
exclusive with IPSEC (KAME IPsec implmentation).

As noted previously, don't use FAST_IPSEC with INET6 at the moment.

Reviewed by:	KAME, rwatson
Approved by:	silence
Supported by:	Vernier Networks
2002-10-16 02:25:05 +00:00
Poul-Henning Kamp 32e8efbffd Don't show the command line when doing "make lint". 2002-10-15 20:49:58 +00:00
Matt Jacob 64fa510881 Enable mpt && ISP_TARGET_MODE in isp (for Lint purposes) 2002-10-15 04:38:40 +00:00
Jim Pirzyk 77e8341280 Add a knob to turn on and off the CMPXCHG instruction on > i386 IA32 systems.
This is most beneficial for vmware client os installs.

Reviewed by: jmallet, iedowse, tlambert2@mindspring.com
MFC After: never, -STABLE does not currently use this instruction
2002-10-14 19:33:12 +00:00
John Baldwin bb2ea9c27d Allow firewire, sbp (SCSI over firewire), and fwe (non-standard raw
ethernet over firewire) to be statically compiled into the kernel as
devices.
2002-10-14 19:21:44 +00:00
Poul-Henning Kamp 527a2a792f Add in the GEOM control module.
Sponsored by:	DARPA & NAI Labs.
2002-10-13 20:36:47 +00:00
Olivier Houchard f3d92b269c Connect trm(4) to the build.
Reviewed by:	mux (mentor)
Approved by:	mux (mentor)
2002-10-13 18:44:26 +00:00
Mike Barcroft 4275e0d98d Remove the P1003_1B kernel option; it is no longer used. 2002-10-13 16:29:17 +00:00
Mike Barcroft ce43eaeb32 Remove _KPOSIX_VERSION as a kernel option, nothing uses this any more. 2002-10-13 14:29:04 +00:00
Marcel Moolenaar 52f5014e73 Build the kernel with -mconstant-gp. This means that function calls,
with the exception of indirect function calls, are assumed to be
intra load module and thus that GP will be the same. This avoids
saving, setting and restoring GP for each function call and
reduces the kernel with ~320KB. There's obviously a performance
benefit as well.

Note that since we generally don't know if calls will be intra or
inter load module when we're compiling kernel modules, -mconstant-gp
cannot be used for modules.
2002-10-13 07:07:51 +00:00
Marcel Moolenaar 8f6a0ee959 ia64 specific CFLAGS change:
Fix the "@gprel relocation against dynamic symbol xxx" linker error.

Variables defined in the link unit and small enough to be put in the
short data section will have a gp-relative access sequence (using the
@gprel relocation). It is invalid to have @gprel relocations in shared
libraries, because they are to be resolved by the static linker and
not the dynamic linker. The -fpic option will cause @ltoff relocations
for @gprel relocations, but the side-effects are untested (if any).
Instead, disable/eliminate the short data section to achieve the same.
2002-10-13 02:52:22 +00:00
Marcel Moolenaar bb461594f9 Have the linker collect and combine all unwind_info and unwind
sections so that the resulting load module has a single unwind
table. This matches the behaviour in userland.
2002-10-12 22:24:41 +00:00
Jeff Roberson b43179fbe8 - Create a new scheduler api that is defined in sys/sched.h
- Begin moving scheduler specific functionality into sched_4bsd.c
 - Replace direct manipulation of scheduler data with hooks provided by the
   new api.
 - Remove KSE specific state modifications and single runq assumptions from
   kern_switch.c

Reviewed by:	-arch
2002-10-12 05:32:24 +00:00
David E. O'Brien 616d2d5d48 Use the new freebsd output format from Binutils 2.13.1. 2002-10-11 19:38:04 +00:00
Robert Watson 469fda7e25 Hook up strsep(3) to libkern following a repo-copy by Peter. This will
allow us to avoid nasty by-hand string parsing stuff in a number of
places in the kernel, reducing the risk of unexpected consequences
for kernel correctness.
2002-10-10 17:02:11 +00:00
Peter Wemm ffd6bca040 geom_mbr.c and geom_bsd.c would be kinda useful here too, at least
for a while.
2002-10-10 00:58:23 +00:00
Dima Dorfman 20a6cb8cb8 Import the libc fnmatch() into the kernel. This will be used by,
among other things, the DEVFS rule subsystem to match nodes against a
path pattern supplied by the user.

fnmatch.c was repo-copied from src/lib/libc/gen/fnmatch.c, and the
only changes to it are those necessary to make it compile in the
kernel.  The relevant parts of fnmatch.h were imported into libkern.h.

Approved by:	-arch
2002-10-08 04:15:55 +00:00
Alexander Kabaev 7d59efa9a8 Add device driver for Belkin F5U103 and compatible USB-to-serial adapters.
Reviewed by:	n_hibma
Approved by:	obrien
2002-10-08 03:09:57 +00:00
Alfred Perlstein 8cbf4973a9 warn about p1003_1b_semaphores 2002-10-07 04:09:16 +00:00
Poul-Henning Kamp 3bd6561289 NB: This commit does *NOT* make GEOM the default in FreeBSD
NB: But it will enable it in all kernels not having options "NO_GEOM"

Put the GEOM related options into the intended order.

Add "options NO_GEOM" to all kernel configs apart from NOTES.

In some order of controlled fashion, the NO_GEOM options will be
removed, architecture by architecture in the coming days.

There are currently three known issues which may force people to
need the NO_GEOM option:

boot0cfg/fdisk:
        Tries to update the MBR while it is being used to control
        slices.  GEOM does not allow this as a direct operation.

SCSI floppy drives:
        Appearantly the scsi-da driver return "EBUSY" if no media
        is inserted.  This is wrong, it should return ENXIO.

PC98:
        It is unclear if GEOM correctly recognizes all variants of
        PC98 disklabels.  (Help Wanted!  I have neither docs nor HW)

These issues are all being worked.

Sponsored by:	DARPA & NAI Labs.
2002-10-05 16:35:33 +00:00
Mitsuru IWASAKI ba835e3fe6 Add code for ACPI PCI link object manipulation.
This allocate the best IRQ to boot-disable devices (have IRQ 0).
Allocated IRQ will be used for PCI interrupt routing when ACPI is
enabled.

Note that verbose messaging enabled for the time being so that
people can easily notice the strange behavior if it happened.
2002-10-05 02:01:05 +00:00
Sam Leffler 8b7ce2ff52 hookup new crypto support to the config/build process 2002-10-04 20:42:36 +00:00
Sam Leffler c4f9e3ae7f add crypto interface to the MFILES list 2002-10-04 20:36:39 +00:00
Sam Leffler ddba93fdbe major 70 is for /dev/crypto (to be consistent with openbsd) 2002-10-04 20:36:13 +00:00
Bruce Evans c6a1c7c5b9 Use the -mno-align-long-strings on i386's to debloat the kernel a little.
This reduces the size of GENERIC's text space by 73999 bytes (about 2%).
The bloat is from approximately 3437 strings longer than 31 characters
being padded to a 32-byte boundary.
2002-10-04 12:54:36 +00:00
Matthew N. Dodd 3ae5b53264 newbus & bus_space the mcd(4) driver. 2002-10-04 07:14:19 +00:00
Scott Long 0910374b7f Alas, poor matcd, I knew ye well.
It doesn't work.
It cannot be made to work.
Goodbye.

X-MFC after:	ASAP
2002-10-04 06:06:04 +00:00
Scott Long 316ec49abd Some kernel threads try to do significant work, and the default KSTACK_PAGES
doesn't give them enough stack to do much before blowing away the pcb.
This adds MI and MD code to allow the allocation of an alternate kstack
who's size can be speficied when calling kthread_create.  Passing the
value 0 prevents the alternate kstack from being created.  Note that the
ia64 MD code is missing for now, and PowerPC was only partially written
due to the pmap.c being incomplete there.
Though this patch does not modify anything to make use of the alternate
kstack, acpi and usb are good candidates.

Reviewed by:	jake, peter, jhb
2002-10-02 07:44:29 +00:00
Juli Mallett 1d9c56964d Back our kernel support for reliable signal queues.
Requested by:	rwatson, phk, and many others
2002-10-01 17:15:53 +00:00
Juli Mallett 1226f694e6 First half of implementation of ksiginfo, signal queues, and such. This
gets signals operating based on a TailQ, and is good enough to run X11,
GNOME, and do job control.  There are some intricate parts which could be
more refined to match the sigset_t versions, but those require further
evaluation of directions in which our signal system can expand and contract
to fit our needs.

After this has been in the tree for a while, I will make in kernel API
changes, most notably to trapsignal(9) and sendsig(9), to use ksiginfo
more robustly, such that we can actually pass information with our
(queued) signals to the userland.  That will also result in using a
struct ksiginfo pointer, rather than a signal number, in a lot of
kern_sig.c, to refer to an individual pending signal queue member, but
right now there is no defined behaviour for such.

CODAFS is unfinished in this regard because the logic is unclear in
some places.

Sponsored by:	New Gold Technology
Reviewed by:	bde, tjr, jake [an older version, logic similar]
2002-09-30 20:20:22 +00:00