Commit Graph

282 Commits

Author SHA1 Message Date
thorpej 7ca3fb9ef0 Move the check for "promisc + unicast + not for us" into ether_input(),
and change Ethernet drivers to always pass all received frames to
ether_input() (with a few exceptions, which are documented in the
code).
2000-10-01 23:32:39 +00:00
abs 3ef92f0bdb Use "options<SPACE><TAB>" not "options<TAB>" - noted by simonb.
Move VNODE_OP_NOINLINE and NFS_V2_ONLY into '# Filesystem options' section.
Consistently label '# Filesystem options' and '#File systems' sections.
2000-09-25 13:54:50 +00:00
abs ccf1c822a6 Ensure all INSTALL config files have (at least) COPTS="-Os", cincluding bebox
based on it working already for macppc.
Also add commented out:
#options        VNODE_OP_NOINLINE       # Don't inline vnode op calls
#options        NFS_V2_ONLY             # Exclude NFS3 and NQNFS code
as suggestions for additional savings
2000-09-25 11:46:37 +00:00
jdolecek b1f94e26ab don't specify number of ptys if >= 16 (current default initial number)
pty comments: normalize and g/c what is no longer relevant
2000-09-24 15:59:26 +00:00
thorpej 72a24b4eae Add an align argument to uvm_map() and some callers of that
routine.  Works similarly fto pmap_prefer(), but allows callers
to specify a minimum power-of-two alignment of the region.
How we ever got along without this for so long is beyond me.
2000-09-13 15:00:15 +00:00
nisimura c65b8a8ceb Nuke unused obscure #define's. 2000-09-13 05:23:37 +00:00
thorpej 4db6fc7542 Make need_resched() take a "struct cpu_info *" argument. This
causes gives a primitive form of processor affinity.  Its use in
roundrobin() still needs some work.
2000-08-25 01:04:06 +00:00
thorpej 58e7a6954b Add spllock(). See spl(9) for details. 2000-08-22 19:46:26 +00:00
thorpej 23a7f255d4 Make sure we provide splsched() as described in spl(9). 2000-08-21 02:06:31 +00:00
itojun 85dda25e94 move "options PULLDOWN_TEST" into sys/sys/mbuf.h (in #ifdef _KERNEL),
as it is no wthe default setting for everyone.

the reason we still use the name "PULLDOWN_TEST" while it is now default:
kame code sharing.
2000-08-13 01:31:15 +00:00
jdolecek e25636b5da g/c RB_DFLTROOT
I've tried hard to find also various usage() messages and remove the
appropriate flag from there as well, hopefully all occurences are covered.
2000-07-29 20:06:27 +00:00
tsubai 25e447156e Fix printf format string. (recently SECDAY changed from unsigned long to int) 2000-07-29 11:11:53 +00:00
tsubai f23a2f015d Set hostid. 2000-07-29 08:21:43 +00:00
mason 4a353b5330 Moving to a default of 64 PTYs. 2000-07-27 17:53:35 +00:00
jeffs 1dfa0ec96d Use cpu_intr() definition from mips/cpu.h instead of local one. 2000-07-14 18:35:38 +00:00
itojun d738f90fd7 raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory.  MHLEN is too small
  already (less than 80) and there are chances for unwanted packet loss due
  to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
  (even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
  extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
2000-06-30 17:55:11 +00:00
itojun d76ae83df8 add PULLDOWN_TEST for all the platforms.
XXX should be moved to somewhere else when stabilized
2000-06-30 17:10:15 +00:00
mrg 4fa952b49a remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 07:58:50 +00:00
kleink e695f72a2e Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
2000-06-26 15:42:16 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
fvdl 1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
veego 223d7455c7 Remove the obsolete config fragments for kernel crypto, because the IPsec
crypto code is now in the kernel source tree.
2000-06-14 22:02:13 +00:00
soren d8e5d1fa7d Add rnd(4) glue for the MIPS3 cycle counter. 2000-06-06 02:24:00 +00:00
matt 9169d99f2a Don't pass booted_* to findroot/getdevice, access them via the globals.
Also, make findroot static.  This eliminates unneeded clearing of them
and make their use consistent among the ports.
2000-06-01 15:38:20 +00:00
matt c9aff328d9 Make booted_device global (and booted_parition for consitency).
Eliminate it from header files and other extern definitions.
2000-06-01 00:49:49 +00:00
tsubai 7531770fa4 Insert delay() in busy wait. 2000-05-30 11:45:11 +00:00
tsubai 41a98db641 Add cpu_number(). 2000-05-30 11:42:05 +00:00
thorpej 21fc65e1a8 sleep() -> tsleep() 2000-05-27 04:52:27 +00:00
thorpej a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
soren b70819c71a Also share BE ldscripts. 2000-05-21 02:50:10 +00:00
thorpej 071aed40ac A foolish consistency; most parts of the kernel use bp->b_data, so
change these from bp->b_un.b_addr to bp->b_data, as well.  This also
allows us more flexibility to experiment with other data buffer types
hung off of struct buf.
2000-05-19 18:54:22 +00:00
thorpej 463931b3ba Nuke dk_establish() from orbit except from those ports which still use
it to determine the boot device: mvme68k, pc532, macppc, ofppc.  Those
platforms should be changed to use device_register().  In the mean time,
those ports defined __BROKEN_DK_ESTABLISH.
2000-05-16 05:45:44 +00:00
hubertf 9f48bba3ae Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
2000-05-09 00:56:21 +00:00
thorpej 6a33c86623 HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well. Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
2000-05-09 00:32:19 +00:00
thorpej f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00
itojun 3be41bae18 add stf pseudo interface (commented out due to possible security risks) 2000-04-19 06:50:27 +00:00
tsutsui 95dd4d0f2c Include "zstty.h" instead of "zsc.h". 2000-04-16 05:42:40 +00:00
tsutsui 8d9c5e8206 - Fix comments. (NEWS have Zilog 8530, not Intel 82530)
- Fix cdev_tty_init() arg on newsmips (NZSC -> NZSTTY)
2000-04-14 13:41:24 +00:00
tsubai 0546f6b51a Adapt cpu_intr change. 2000-04-14 10:11:06 +00:00
soren 80e6d43253 Add asm.h like other ports. 2000-03-30 21:33:30 +00:00
tsutsui 58714261cc Remove register declarations. 2000-03-30 11:37:21 +00:00
nisimura 61609b54e2 Make sure proc0 PCB has spl0 condition in CP0 status register field.
cpu_fork() mistakenly created processes forked by proc0, including
kthreads, in splhigh condition, because [1] proc0's PCB was zero
cleared during initialization, and [2] value 0 in status register
field made processes to have splhigh condition when CPU tick was
assigned for them.  This mostly doesn't matter as forked processes
dive immediately into user mode through proc_trampoline code path,
however, kthreads never do that and remain in splhigh.

Reported by Ethan Solomita <ethan@geocast.com>.
2000-03-25 10:14:13 +00:00
soren 573160e03b Revert previous. 2000-03-24 23:06:03 +00:00
soren c535ede30b Move sysctl definitions from arch/mips to arch/foo. 2000-03-24 21:30:58 +00:00
soren 5f168212c9 Fix typo. 2000-03-24 21:25:32 +00:00
thorpej 7b918b4088 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:40:33 +00:00
onoe ba09a212c8 renamed the variable $NEWS to $NEWSMIPS. 2000-03-22 10:39:25 +00:00
onoe 3260e7d0f6 Use $S ($NEWS) for kern.ldscript instead of relative path
so that "build" directive or -b option of config(8) works.
2000-03-22 10:22:37 +00:00
tron e86957458a Install "machineendian_machdep.h". 2000-03-17 22:36:31 +00:00
mycroft 9e21b6555a In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
2000-03-17 00:09:18 +00:00
mycroft 02905321b2 Foolish consistency. Mainly, always use underscores and sys/endian.h. 2000-03-16 15:09:34 +00:00
oster 1bad2e1909 Add the RAIDframe device major to the machine-dependent config files
so that the right entries get added to dev_name2blk[].  Needed for / on RAID.
(Whoops!  I missed checking these in when adding the RAID_AUTOCONFIG stuff.)
2000-03-14 15:56:51 +00:00
tsutsui d9d840d522 - Remove unnecessary prototype declaration of readdisklabel().
- Use DISKPART/DISKMINOR/DISKUNIT instead of dkpart/dkminor/dkunit.
2000-03-07 15:35:42 +00:00
thorpej a183d34f04 - Implement cnbell() -- ring the console bell. The cn_bell entrypoint
is optional.
- Add cn_bell to statically allocated consdevs as appropriate.
2000-03-06 21:36:05 +00:00
tsubai 4c75cb9b65 INSTALL kernel config. 2000-03-04 19:30:17 +00:00
nisimura 3c5d39d73b Make clearer a bit how proc0's USPACE is intialized. 2000-03-03 08:36:20 +00:00
simonb 4eb55e447c Do the "<space><tab>" thing with the RAID_AUTOCONFIG option. 2000-02-29 06:32:20 +00:00
oster d9c47013b2 Defopt 'RAID_AUTOCONFIG'. Adding 'options RAID_AUTOCONFIG' turns on
the component auto-detection and auto-configuration of RAID sets.
Also, add "#options RAID_AUTOCONFIG" to the GENERIC config files.
2000-02-26 17:35:33 +00:00
mycroft 14ef93565d Use the prefix printed before cpuattach() is called. 2000-02-19 03:59:04 +00:00
thorpej 5903e181fa Nuke NKMEMCLUSTERS. 2000-02-12 03:29:18 +00:00
cgd 7d16ac338c add __BROKEN_CONFIG_UNIT_USAGE #define, becuase these ports do very
wrong things with device configuration data "cf_unit" information.
2000-02-05 00:13:22 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
tron 04eb110431 Add "dependall" target for comfort. 2000-01-24 20:36:06 +00:00
hubertf 7e5ff67457 Add commented out "ident"-command 2000-01-23 23:46:04 +00:00
mycroft 7b49d242ce Clean up the machine symlink stuff ever so slightly. Needs to be
standardized between files.
2000-01-23 17:04:03 +00:00
tsubai ddec291d99 Fix cf_unit usage. 2000-01-23 15:58:04 +00:00
tsubai eda36600e0 Fix wrong usage of cf_unit. 2000-01-23 15:49:11 +00:00
tsubai d9d54bf806 Use flags to determine PCLK rather than use unit number. 2000-01-23 15:27:43 +00:00
tsubai 83be2572a7 Don't need to declare badaddr(). 2000-01-23 14:57:10 +00:00
wrstuden 87e1b0f9b7 Add overlay to kernel configs. 2000-01-20 19:12:28 +00:00
thorpej a0397a2573 Move callout initialization to a single location; no need to duplicate
that code all over the place.
2000-01-19 20:05:30 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
msaitoh 0b9af6bdce check whether tv_usec >= 1000000 2000-01-19 02:52:16 +00:00
thorpej 8808155fa6 Use b_cylinder as defined in sys/buf.h 2000-01-18 19:46:07 +00:00
tsubai e362a13605 Add zs softint definition. (I forgot to commit this...) 1999-12-31 08:15:48 +00:00
tsubai fa34872358 Use software interrupt. 1999-12-26 09:05:38 +00:00
tsubai 3a04d046b7 Fix typo. 1999-12-23 11:45:32 +00:00
kleink 11e6c54cfc C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
tsubai a2928f3d68 Remove 2 more unnecessary debugging codes. 1999-12-23 07:06:44 +00:00
tsubai 9909053174 * Apply updates from Shimizu-san received after the initial commit.
* G/C unused.
* Many cosmetic changes.
* etc...
1999-12-23 06:52:30 +00:00
tsubai dd30883b03 Comment out -DBOOT_DEBUG. 1999-12-23 01:41:11 +00:00
tsubai 8a56c134db Delete lines that I didn't intended to commit. 1999-12-23 01:40:06 +00:00
tsubai 1bc5465424 Remove unnecessary debugging code. (not intended to commit) 1999-12-22 08:16:45 +00:00
tsubai 70289b0f99 First cut of news5000 support.
Mostly from SHIMIZU Ryo <dejiko@di.gi.charat.org>.
1999-12-22 05:55:24 +00:00
tsubai c594e4d0a3 news5000 support. 1999-12-22 05:54:41 +00:00
tsubai efaa549162 First cut of news5000 support.
Mostly from SHIMIZU Ryo <dejiko@di.gi.charat.org>.
1999-12-22 05:53:21 +00:00
tsubai 3b2d2cffe1 Introduce bootinfo. 1999-12-18 08:01:25 +00:00
tsubai 4d08b56ebd Use hb_intr_establish(). 1999-12-18 06:54:05 +00:00
tsubai 3488febf81 Move dma_intr() to here. 1999-12-18 05:00:56 +00:00
tsubai 4990e1cf94 Move common objects and libraries to common/. 1999-12-17 07:40:09 +00:00
tsubai 03ff4cb4df Moved to common/romcalls.S,v 1999-12-17 07:33:21 +00:00
tsubai 0271e4c36a Moved from bootxx/romcalls.S,v 1999-12-17 07:33:20 +00:00
tsubai be68900e77 Add interrupt level locator and use it instead of hard-coding. 1999-12-17 06:05:37 +00:00
tsubai 5577683a2b s/-G0/-G 0/ 1999-12-17 03:24:33 +00:00
tsubai 9df2e626d6 Use hb_intr_establish(). 1999-12-17 03:21:10 +00:00
tsubai 8a2b8d9a8b Implement hb_intr_establish(). 1999-12-17 03:06:13 +00:00
tsubai 8395acb6c9 Insert '\n'. 1999-12-06 06:58:30 +00:00
tsubai d87d33754e Enable BUSERR interrupt before autoconfiguration. 1999-12-06 06:47:14 +00:00
tsubai 6cec6a5c90 Use dev/clock_subr.c. 1999-12-05 15:50:46 +00:00