Commit Graph

1736 Commits

Author SHA1 Message Date
he
eca5e4743f Bump ramdisk image size from 1444k to 1500k. 2003-02-23 22:30:46 +00:00
he
b699c38934 Cast the result of VM_DEFAULT_ADDRESS to caddr_t, to make this compile again. 2003-02-23 19:08:18 +00:00
atatat
df0a9badc6 Introduce "top down" memory management for mmap()ed allocations. This
means that the dynamic linker gets mapped in at the top of available
user virtual memory (typically just below the stack), shared libraries
get mapped downwards from that point, and calls to mmap() that don't
specify a preferred address will get mapped in below those.

This means that the heap and the mmap()ed allocations will grow
towards each other, allowing one or the other to grow larger than
before.  Previously, the heap was limited to MAXDSIZ by the placement
of the dynamic linker (and the process's rlimits) and the space
available to mmap was hobbled by this reservation.

This is currently only enabled via an *option* for the i386 platform
(though other platforms are expected to follow).  Add "options
USE_TOPDOWN_VM" to your kernel config file, rerun config, and rebuild
your kernel to take advantage of this.

Note that the pmap_prefer() interface has not yet been modified to
play nicely with this, so those platforms require a bit more work
(most notably the sparc) before they can use this new memory
arrangement.

This change also introduces a VM_DEFAULT_ADDRESS() macro that picks
the appropriate default address based on the size of the allocation or
the size of the process's text segment accordingly.  Several drivers
and the SYSV SHM address assignment were changed to use this instead
of each one picking their own "default".
2003-02-20 22:16:05 +00:00
gmcgarry
136892b8b8 Handle 64-bit daddr_t. 2003-02-14 06:55:17 +00:00
wiz
796ed96dcd Recognize with one i only. From miod@openbsd. 2003-02-02 14:08:04 +00:00
wiz
cd68fb44fb guarantee, not guarentee. Idea from miod@openbsd. 2003-02-02 10:24:38 +00:00
wiz
9115df8c49 success, not sucess. Noted by mjl. 2003-01-28 22:35:02 +00:00
wiz
7bd6fd354d unknown, not unkown. Noted by mjl. 2003-01-28 22:19:22 +00:00
jdolecek
2011a991cc ramdisk image overflew, bump by 4K 2003-01-23 21:37:28 +00:00
thorpej
23bc250391 Merge the nathanw_sa branch. 2003-01-17 21:55:23 +00:00
lukem
4bb41ae2f2 Rework how KERNOBJDIR functions; now it's always determined with
cd ${KERNSRCDIR}/${KERNARCHDIR}/compile && ${PRINTOBJDIR}
This is far simpler than the previous system, and more robust with
objdirs built via BSDOBJDIR.

The previous method of finding KERNOBJDIR when using BSDOBJDIR by
referencing _SRC_TOP_OBJ_ from another directory was extremely
fragile due to the depth first tree walk by <bsd.subdir.mk>, and
the caching of _SRC_TOP_OBJ_ (with MAKEOVERRIDES) which would be
empty on the *first* pass to create fresh objdirs.

This change requires adding sys/arch/*/compile/Makefile to create
the objdir in that directory, and descending into arch/*/compile
from arch/*/Makefile.  Remove the now-unnecessary .keep_me files
whilst here.

Per lengthy discussion with Andrew Brown.
2003-01-06 17:40:18 +00:00
wiz
7e681f7063 interrupt with two rs. 2003-01-06 13:04:54 +00:00
lukem
a250e57c96 Install release files under "${RELEASEDIR}/${MACHINE}/..." instead of
"${RELEASEDIR}/...".

${RELEASEDIR} is never cleaned , and ${RELEASEDIR}/${MACHINE} is only
cleaned if UPDATE is not defined.
2003-01-03 15:34:30 +00:00
thorpej
72a2c87923 Use aprint_normal() for cfprint routines. 2003-01-01 01:34:45 +00:00
gmcgarry
85dbe5f6c5 Make the DMA controller a separate device attached to intio. Intio
devices can use the DMA controller too.
2002-12-22 00:17:13 +00:00
gmcgarry
75851dc4ed Make this compile with LOCK_DEBUG 2002-12-22 00:11:10 +00:00
thorpej
78ea2dd367 Use __LDPGSZ (which must be == USRTEXT) as the text address for a.out
executables, and eliminate the USRTEXT constant, which was only used
by the a.out exec code.
2002-12-10 05:14:24 +00:00
lukem
0635de35a3 Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more. 2002-11-26 23:30:07 +00:00
christos
729ccbc9cd si_ -> sel_ 2002-11-26 19:49:00 +00:00
thorpej
09dfaace39 The traditional C preprocessor is fixed in GCC 3.3 now, so no need
to skip -traditional-cpp for HAVE_GCC3.
2002-11-26 18:51:12 +00:00
wiz
e78e668887 Fix typo (responsiness -> responsiveness). 2002-11-22 12:20:58 +00:00
chs
f9c2080322 merge pmap.c for all 4k-page motorola-MMU (or compatible) m68k platforms. 2002-11-05 07:41:17 +00:00
chs
6348674004 merge pmap.h for all 4k-page motorola-MMU (or compatible) m68k platforms. 2002-11-03 19:56:27 +00:00
tsutsui
0cc3f14252 HP360 does not have L2 cache, so no need to define CACHE_HAVE_PAC for it. 2002-11-03 17:44:07 +00:00
chs
95aae207e0 use a merged sys_machdep.c for all the motorola-MMU m68k platforms. 2002-11-03 02:29:37 +00:00
chs
42a0d8fa15 use "static __inline" instead of "extern __inline" so that we can
build without optimization.
2002-11-03 01:34:41 +00:00
chs
db6b326aab merge all the m68k copies of kgdb_machdep.c. 2002-11-03 01:11:58 +00:00
chs
bcfb5eee88 enhance the common m68k db_memrw.c to handle read-only kernel text
and switch all the motorola-MMU m68k platforms to use it.
2002-11-02 20:26:36 +00:00
chs
40e5b8394f finish conversion to the common m68k cacheops:
add support for machine-specific flavors of the ops for off-chip caches.
many thanks to Izumi Tsutsui for his help with this.
2002-11-02 20:03:04 +00:00
mrg
603098b9b5 implement separate read/write disk statistics:
- disk_unbusy() gets a new parameter to tell the IO direction.
	- struct disk_sysctl gets 4 new members for read/write bytes/transfers.
	when processing hw.diskstats, add the read&write bytes/transfers for
	the old combined stats to attempt to keep backwards compatibility.

unfortunately, due to multiple bugs, this will cause new kernels and old
vmstat/iostat/systat programs to fail.  however, the next time this is
change it will not fail again.

this is just the kernel portion.
2002-11-01 11:31:50 +00:00
jdolecek
c82ab2eb79 now that mem_no is emitted by config(8), there is no reason to keep
copy of more or less identical iskmemdev() for every arch; move the function
to spec_vnop.c, and g/c machine-dependant copies
2002-10-26 13:50:17 +00:00
lukem
9e0285bfee this is a HOSTPROG; no need to set LDSTATIC=-static 2002-10-23 14:22:38 +00:00
jdolecek
e0cc03a09b merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe
2002-10-23 09:10:23 +00:00
gmcgarry
04a46ed198 Fix flow control in dcmmint() by checking termios control flags for
CCTS_OFLOW rather than tty t_flags.  From Steve Peurifoy in PR-18735.
2002-10-20 06:26:39 +00:00
gmcgarry
55802a56ff - merge if_levar.h into if_le.c
- de-__P(), ansify
- remove unnecessary headers
2002-10-20 05:54:29 +00:00
chs
1c2419d28a merge the 12 copies of vm_machdep.c on the m68k platforms.
clean up some other stuff along the way, including:
 - use m68k/cacheops.*, remove duplicates from cpu.h.
 - centralize a few declarations in (all the copies of) cpu.h.
 - define M68K_VAC on platforms which have a VAC.
 - switch the sun platforms to the (now common) proc_trampoline().
 - do the phys_map thang on the sun platforms too, no reason not to.
2002-10-20 02:37:21 +00:00
junyoung
e4b7588c28 Add NEW_BUFQ_STRATEGY (disabled by default). 2002-10-18 15:11:08 +00:00
elric
5ab71e20b0 Added commented out cgd(4)s to GENERIC configs. 2002-10-14 18:39:22 +00:00
chs
cb76676a56 merge pte.h for m68k w/ motorola or compatible MMU
(only 4k-page platforms so far).
2002-10-14 05:18:45 +00:00
jdolecek
fc6049b9b7 replace the somewhat strange poll routine with standard nopoll() (a.k.a
seltrue())
2002-10-10 22:33:15 +00:00
provos
2f7a0aaac8 add SYSTRACE; approved perry. 2002-10-06 02:11:54 +00:00
elric
d19d268a95 assign majors for raw and cooked cgd's. 2002-10-04 18:28:24 +00:00
thorpej
c5e91d447d Use CFATTACH_DECL(). 2002-10-02 04:55:47 +00:00
wiz
b1c7ac0e6d "definitions" has lots of 'i's, but that's not reason to leave one out. 2002-09-29 23:23:56 +00:00
thorpej
f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
thorpej
9a711d6985 Declare all cfattach structures const. 2002-09-27 20:29:02 +00:00
provos
0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
thorpej
6c88de3b53 Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller.  Use it
rather than invoking cfattach->ca_match directly.
2002-09-27 03:17:40 +00:00
thorpej
233188a90d Set extio_ex_malloc_safe at the end of cpu_startup(). 2002-09-25 20:05:26 +00:00
thorpej
da13a0afc7 Replace resource map usage with extent maps. 2002-09-25 19:30:22 +00:00
martti
81e8d78cd4 Add one space between "#option" and "<tab>IPFILTER_DEFAULT_BLOCK" 2002-09-25 11:49:48 +00:00
simonb
63096043b3 Use "#define\t" instead of "#define ". 2002-09-22 08:30:56 +00:00
chs
c081614ea2 it really helps to get the stub right before cutting + pasting it 27 times.
alas, I did not.  doh.
2002-09-22 07:53:39 +00:00
chs
55e1f79335 add pmap_remove_all() hook (empty on most platforms so far). 2002-09-22 07:17:08 +00:00
gmcgarry
5a06fee353 Add UVM_PAGE_IDLE_ZERO. 2002-09-22 05:48:46 +00:00
martti
3b553bac54 Added (commented out) IPFILTER_DEFAULT_BLOCK. 2002-09-20 10:39:48 +00:00
ragge
b3abfee038 Do not include <sys/clist.h>, it's not used in NetBSD at all. 2002-09-19 10:37:59 +00:00
lukem
3ea2e21f82 enable USERCONF by default; it's small and extremely useful to have available. 2002-09-18 02:43:53 +00:00
gmcgarry
857f23b69e Garbage-collect unused sdreset(). Remove commented-out prototypes. 2002-09-10 04:19:57 +00:00
gehenna
77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
gmcgarry
d6109af7cb RAS support for m68k. 2002-08-28 08:56:59 +00:00
lukem
fb7bc8541e arch/*/stand stuff should be LDSTATIC=-static and not LDSTATIC?=-static.
It doesn't make sense to have standalone stuff dynamically linked just
because an end-user uses LDSTATIC="".
2002-08-27 08:53:14 +00:00
thorpej
139cdc3125 Make nbuf, nswbuf, and bufpages unsigned. Make all operations on these
variables unsigned, and update places where their values are printed.
2002-08-25 20:21:33 +00:00
briggs
0b956d0b8b Implement pmc(9) -- An interface to hardware performance monitoring
counters.  These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface.  Initially, the Intel XScale
counters are the only ones supported.
2002-08-07 05:14:47 +00:00
gmcgarry
e0590ef08b Boot loader is now case sensitive. Fixes PR-17711. 2002-08-04 00:44:58 +00:00
itojun
8dd04cdcd7 correct range check, have overflow check, fix type mismatches,
for cmap args and some other calls.  from openbsd
2002-08-03 00:12:48 +00:00
hannken
c32ed76dba Convert to new device buffer queue interface.
Approved by: Jason R. Thorpe <thorpej@netbsd.org>
2002-07-26 13:19:52 +00:00
thorpej
3912e469dd Rename cdev_systrace_init() to cdev_clonemisc_init(), so it can
be properly used by any misc. cloning device.  While here, correct
a comment to indicate that "open" is the only entry point and that
everything else is handled with fileops.
2002-07-19 16:38:14 +00:00
scw
bef00d4895 m68k syscall rototill:
- Switch all m68k-based ports over to __HAVE_SYSCALL_INTERN.
 - Add systrace glue.
 - Define struct mdproc in <m68k/proc.h> instead of <machine/proc.h>.
   (They were all defined exactly the same anyway, other than a couple
   of the MDP_* flags.)
2002-07-13 08:28:40 +00:00
gmcgarry
de0c9630a1 Fix console bell. 2002-07-06 23:15:29 +00:00
gmcgarry
44e6549da3 Invert test of EPASSTHROUGH. Problem reported by
Bernd Sieker <bsieker@freenet.de>.
2002-07-05 23:43:28 +00:00
abs
eb73becae2 Ensure all INSTALL config files consistantly include PIPE_SOCKETPAIR,
MALLOC_NOINLINE, and VNODE_OP_NOINLINE. The exceptions are when they
include another config files that already defines the options, or if
they are for an embedded board, just define a few extra options, and
do not already define PIPE_SOCKETPAIR.
2002-07-05 13:40:10 +00:00
thorpej
011d4d5f44 Add kernel support for having userland provide the signal trampoline:
* struct sigacts gets a new sigact_sigdesc structure, which has the
  sigaction and the trampoline/version.  Version 0 means "legacy kernel
  provided trampoline".  Other versions are coordinated with machine-
  dependent code in libc.
* sigaction1() grows two more arguments -- the trampoline pointer and
  the trampoline version.
* A new __sigaction_sigtramp() system call is provided to register a
  trampoline along with a signal handler.
* The handler is no longer passed to sensig() functions.  Instead,
  sendsig() looks up the handler by peeking in the sigacts for the
  process getting the signal (since it has to look in there for the
  trampoline anyway).
* Native sendsig() functions now select the appropriate trampoline and
  its arguments based on the trampoline version in the sigacts.

Changes to libc to use the new facility will be checked in later.  Kernel
version not bumped; we will ride the 1.6C bump made recently.
2002-07-04 23:32:02 +00:00
gmcgarry
f7458b82ef Back out part of revision 1.20 which was causing PROM re-entry
to fail.  Reported by Jarle Greipsland <jarle@uninett.no>.
2002-06-27 08:45:25 +00:00
christos
3b50728cf4 MD systrace gluons. 2002-06-17 16:32:57 +00:00
lukem
fde6ae6f04 Enable "pseudo-device clockctl" in all kernels, except
installation related kernels (INSTALL* and RAMDISK*).
This enables rc.conf(5) $ntpd_chroot to be used "out of the box"
2002-06-17 05:14:02 +00:00
thorpej
d941ddfee0 Don't use -traditional-cpp if HAVE_GCC3. 2002-06-04 21:39:09 +00:00
thorpej
cc938a1daf Account for changes to struct partition. 2002-05-30 19:03:50 +00:00
thorpej
c26e1749fc Add -ffreestanding to CFLAGS. 2002-05-30 18:35:08 +00:00
thorpej
1768ff83e0 Don't use multi-line string literals. 2002-05-30 18:32:18 +00:00
thorpej
1964f8446c Make this work with an ISO C preprocessor. 2002-05-30 18:30:17 +00:00
gmcgarry
da51df2271 Clarify comment: cpu_startup() doesn't do autoconfiguration. 2002-05-23 03:05:30 +00:00
drochner
60b6f587bc Subtract vm_map_min(kernel_map) from kernel virtual addresses to get offsets
into kernel_object where this was missing.
This is a no-op on ports where VM_MIN_KERNEL_ADDRESS==0, ie all but
cesfic.
Confirmed and corrected by Chuck Silvers.
2002-05-22 14:29:23 +00:00
jdolecek
51260b556e use 'jmp label:l' to force adressing to be absolute, rather than pc-relative 2002-05-19 21:40:04 +00:00
matt
0dc8ee943d Eliminate more commons or redundant declarations. 2002-05-14 02:58:32 +00:00
jdolecek
77a65b5e56 use _KERNEL_OPT rather than _KERNEL && !_LKM 2002-05-11 09:39:25 +00:00
gmcgarry
d9248c05c1 FPSP required. Noted by Michael Wolfson. 2002-05-07 06:17:10 +00:00
gmcgarry
918cdbbb79 Make more featureful. 2002-05-07 06:07:30 +00:00
gmcgarry
5a1f9fc69c 400-series machines only have DIO framebuffers. From discussion
with Michael Lorenz and Bernd Sieker.
2002-05-05 22:55:49 +00:00
atatat
d1b3852365 Add the INCLUDE_CONFIG_FILE option to all config files. In config
files that are generic (ie, GENERIC, GENERICSBC, GENERIC32, ALL, or
ALPHA), it is uncommented.
2002-04-25 15:06:20 +00:00
gmcgarry
e99aada22c Bump ramdisk size. 2002-04-22 06:10:16 +00:00
gmcgarry
36adeea7c2 Don't frob MCR_IEN bit if on a 425e. Problem initially reported
by Christoph Badura:

It looks to me like the 425e uses reverse polarity of the MCR_IEN bit with
respect to the other 4xx models.  That could be because it doesn't have
an inverter wired behind the IEN(OUT2) output of the UART.

Fix is inspired by change in OpenBSD.  Serial console input is
confirmed working on 425e by Thilo Manske.
2002-04-17 23:31:24 +00:00
gmcgarry
b3dae2b4b6 Regen: "digital audio" 2002-04-17 20:51:11 +00:00
gmcgarry
c4ab5a6201 typo in previous 2002-04-17 20:50:45 +00:00
gmcgarry
5123c61682 device id 0x13 is "digital audio" as reported by Thilo Manske. 2002-04-17 20:49:06 +00:00
gmcgarry
e25ab469b9 Attach apci console as an intio device, not a dio device.
Fixes console attach on 425e noted by Thilo Manske.
2002-04-17 20:40:30 +00:00
gmcgarry
6e066ba77a Add commented-out USERCONF option. Mainly useful for install media
and can be optionally enabled based on miniroot and ramdisk size
requirements.
2002-04-12 08:10:45 +00:00
gmcgarry
dea19257e2 Create default disklabel correctly. 2002-04-08 21:41:44 +00:00
gmcgarry
61d1eb003e actually, we didn't want to print pa, not kva 2002-04-05 05:31:42 +00:00
gmcgarry
2ec9c06efb cosmetic formatting 2002-04-02 05:46:36 +00:00