Commit Graph

29485 Commits

Author SHA1 Message Date
augustss 28903948b1 Add legacy support register. 1999-04-03 19:01:20 +00:00
augustss 946efa06b3 Improve debug output a little. 1999-04-03 19:00:43 +00:00
augustss 7793bb6998 Generate grammatically correct sentences. 1999-04-03 18:59:51 +00:00
augustss ecbea6c6a0 More things to do. 1999-04-03 18:58:52 +00:00
scw dd69ae65fb Sync with Jason's latest changes to hp300 pmap. 1999-04-03 13:15:16 +00:00
scw 9737cf763a Fix a problem where no Tx Empty interrupt ever happened if CTS
was deasserted and we wanted to change parameters to -crtscts
This effectively stalled the transmitter since with TS_BUSY set
we only change parameters during the Tx interrupt handler.
1999-04-03 13:13:19 +00:00
augustss 65235b4248 Regen. 1999-04-03 11:57:02 +00:00
augustss 75fd6f5433 Add Microsoft Natural Keyboard. 1999-04-03 11:56:39 +00:00
is 2ac445044e make the Amiga bootblocks link again. 1999-04-03 09:18:41 +00:00
scottr 1a3484fe3c This should have been committed in the previous round, but was
left behind.  Fixes PR 7310.
1999-04-03 08:28:50 +00:00
hwr 3f5c626e42 Setting of source and destination IP is not done by
passing SIOCSIFADDR/SIOIFDSTADDR, but by passing the addresses in
the appropriate structs.
One of the mysteries of ifconfig IMHO...

Should fix kern/6899.
1999-04-02 20:39:23 +00:00
chopps 0723de9c6c deal with failure of malloc NOWAIT by restarting after mallocing with WAIT.
don't write beyond the users given buffer size (this happened if there was
	enough space for the initial malloc to succeed).
1999-04-02 17:22:21 +00:00
cgd 4cbbc316f2 add ustarboot, a ustar-capable unified bootstrap intended to be
mkbootimage'd and slapped on the front of a tar file.
1999-04-02 09:13:27 +00:00
cgd e16ad7a3e4 this should have been gc'd with the disk->blkdev changes 1999-04-02 08:50:45 +00:00
cgd b676fcfeca add mkbootimage, a program to make a bootable image (i.e. prepend a boot
block, pad to a block boundary) from a console program (i.e. a boot
block, firmware upgrade executable, etc.)
1999-04-02 08:40:23 +00:00
ross 8969ff9e1e Fix typo in FILE_FORMAT_CPPFLAGS. 1999-04-02 07:55:06 +00:00
cgd bfa2f241f4 use 'struct boot_block' from disklabel.h 1999-04-02 07:34:49 +00:00
cgd 5d472dba93 define 'struct boot_block' which is the alpha (SRM) boot block 1999-04-02 07:32:33 +00:00
cgd bfd7402544 use booted_dev_fd() and booted_dev_close() 1999-04-02 03:50:47 +00:00
cgd bacc33029f build the filesystem-specific primaries 1999-04-02 03:45:12 +00:00
cgd 60fb889b92 makefiles for some filesystem-using primary boot blocks. much as
i hate to say it, these still contain bugs that can't easily be
addressed yet.
1999-04-02 03:38:20 +00:00
cgd 6db093b04a puts -> putstr 1999-04-02 03:35:54 +00:00
cgd 3b5c2ed522 a makefile template for filesystem-using primary boot blocks 1999-04-02 03:34:09 +00:00
cgd 47acf988d7 add a template for a filesystem-using primary boot block, just like
'boot' is a template for secondary and unified boot blocks.
1999-04-02 03:24:53 +00:00
cgd 1fe5f90d85 add a common putstr() function which just puts()'s the chars in
its argument string.  implement a broken version of panic() in terms
of it, for cases where we need panic() but can't affort printf().
1999-04-02 03:23:49 +00:00
cgd e1b1b6b39b update for booted_dev and disk->blkdev changes. 1999-04-02 03:20:00 +00:00
cgd f0bdf50326 abstract the prom device open/close into a separate module, which
provides the correct functions for primary, secondary, and unified
boot blocks.  actually behave correctly (e.g. expect correct arguments,
perform correct operations) depending on which you are.  also
some minor cleanup.
1999-04-02 03:19:08 +00:00
cgd 39ea91226c move the boot/disk.* code to common/blkdev.*, and gut it. The previous
guts were actually functionally equivalent to the current guts, but were
much larger, filled with bugs, and indeed poked around at the disklabel
when some of those bugs prevented them from ever using the disklabel!
1999-04-02 03:17:28 +00:00
cgd 7c4cd2bb56 unrevert the changes made last night, now that 'installboot' has
had a few bugs fixed that let the problem slip in, and since bootxx's
Makefile now goes out of its way to satisfy installboot's undocumented
and totally unreasonable assumptions about the bootxx file it's operating
on.  No point in fixing the assumptions, because sooner rather than later
this incarnation of installboot is going to die.
1999-04-02 03:11:57 +00:00
perry 480ac6a6e5 Update the comments to say 1.4A, too. (slaps own forehead) 1999-04-02 03:08:02 +00:00
perry 7ab8eaeda9 Update trunk to NetBSD 1.4A 1999-04-02 02:57:55 +00:00
perry e8cff4d606 Update trunk to NetBSD 1.4A, and do similar housekeeping 1999-04-02 02:57:19 +00:00
cgd 701c007366 correctly calculate the space left for block addresses, and avoid
assuming that there's always going to be space for the whole boot
block info struct.  (the assumption would cause a malloc'd region
to be overrun, if it proved false.)
1999-04-02 02:47:45 +00:00
perseant 7ea5ec6723 Fix buffer handling problems in lfs_vinvalbuf 1999-04-01 23:28:09 +00:00
bouyer b43b844f6f - change the interrupt routines to take a 3rd arguments, set to 1 if we
are called from the interrupt or timeout handler, 0 otherwise.
- use this to know if we can busy-wait for wait_for_unbusy or wait_for_ready
This fixes a bug where CDs withot the DRQ_INTR capability would not busy-wait
for the CMDOUT phase.
While I'm there change 2 delay() to DELAY() for consistency, and
garbage-collect some old code from wdcintr() which has been ifdef'd out
for some time now.
1999-04-01 21:46:28 +00:00
drochner 39fce9ba9d remove leftover #endif 1999-04-01 20:50:52 +00:00
ragge 60d4b9c2bd A bunch of small fixes to make boot work on most VAXen. 1999-04-01 20:40:07 +00:00
ragge 978ab908d4 Slimmed install kernel with md-root. 1999-04-01 20:36:32 +00:00
is 0d8a2e963a snchronize with reality.
Actually, this should have been done months ago, but slipped the cracks.
1999-04-01 20:31:02 +00:00
is 03957f9d56 regenerate 1999-04-01 20:24:29 +00:00
drochner 5d86b86370 #ifdef out the last change for the branch 1999-04-01 19:36:09 +00:00
explorer 3f80ba486e don't allow /dev/random to be opened (return ENXIO) until there is at least
one active entropy source
1999-04-01 19:07:40 +00:00
drochner 74768f75f4 remove unneeded <vm/*> includes 1999-04-01 18:37:33 +00:00
mhitch 94ac6e6084 Show 50ns period instead of 48ns for Ultra. 1999-04-01 17:27:22 +00:00
drochner 3497f157fd On serious boot errors, dont lock the machine. Instead, wait 3 seconds
and call the ROM BASIC vector. This might behave differently on different
machines, but normally it allows to reboot without power-cycling.
1999-04-01 17:07:54 +00:00
mhitch f2edf64867 Turn off some ATAPI debugging output. 1999-04-01 16:22:57 +00:00
tsubai bee9b5d9ab Enable "de". 1999-04-01 16:11:45 +00:00
drochner 99a84ef740 sync to changed biosdisk interface again 1999-04-01 16:09:49 +00:00
tsubai 500edb5379 Fix typo. (From PR 7027) 1999-04-01 14:55:25 +00:00
minoura eb2c78dd2d Typo. 1999-04-01 14:11:21 +00:00
drochner 00a4d0521a use defopted WSCONS_SUPPORT_PCVTFONTS, refuse to load pcvt fonts if this
option is not given, suppress complaints in non-debug case
1999-04-01 11:52:42 +00:00
drochner 4f0acde07b defopt WSCONS_SUPPORT_PCVTFONTS 1999-04-01 11:50:02 +00:00
ross 9c323a2d8b Revert recent changes, which either don't work, or can't be built
successfully by ordinary mortals.
1999-04-01 11:08:39 +00:00
tsubai 4384fd5134 Fix big-endian support.
TULIP_BUSMODE_BIGENDIAN does bswap packet buffers also, so we should use
TULIP_BUSMODE_DESC_BIGENDIAN on big-endian machines. (PR 7027)

XXX 21040 doesn't have this bit, but supporting only 21041+ is better than
    nothing.
1999-04-01 11:02:20 +00:00
soda 009107c3e1 do not include <machine/regdef.h>, but include <mips/regdef.h>,
requested by Matthias Drochner and Toru Nishimura.
1999-04-01 09:02:53 +00:00
simonb e6ab4443a2 Mention a few other (not implemented) space saving ideas in case we
get desparate in the future.
1999-04-01 08:47:38 +00:00
chopps 71f81a6eb6 add back the SIOCxxx_ISO ioctl's that were eroneously removed previously 1999-04-01 06:51:48 +00:00
simonb f36bd65f46 Build the full MI libsa for the first stage bootblocks rather than
picking the bits we wanted explicitly, taking advantage of some of the
recent code-size trimming from cgd.  There's now no duplication if libsa
code in sys/arch/pmax/stand.

As a bonus, we now have 416 bytes free in stage one (up from 80), and
will all of Chris' space saving options enabled (these are commented out
in scsiboot/Makefile), theres over a 1kB free.
1999-04-01 06:05:04 +00:00
simonb 971284a4ed Add support for LIBSA_SINGLE_DEVICE and LIBSA_SINGLE_FILESYSTEM. 1999-04-01 05:52:38 +00:00
simonb 6db650781c Don't compile in sanity checks for old file systems if
LIBSA_NO_COMPAT_UFS is defined.
1999-04-01 05:27:54 +00:00
simonb 8f8c1f41d9 It's no use having a memcmp() that calls bcmp() if there's no bcmp() in
the SA library.  Basically copied from ../libkern with a few less #if's
and #include's.
1999-04-01 05:12:20 +00:00
simonb e46b652af6 bestsize is unused if ALLOC_FIRST_FIT is defined. 1999-04-01 02:41:08 +00:00
thorpej 2f832df90c Do proc0's TSS and LDT initialization at the end of configure() (i.e.
once the FPU has been attached).
1999-04-01 00:37:50 +00:00
simonb 6ce60662b5 Sync with src/lib/libc/string/bcmp.c 1999-04-01 00:30:39 +00:00
thorpej 4fd2edfbe8 mbinit() can now allocate memory. Update a comment accordingly. 1999-04-01 00:23:25 +00:00
thorpej c431ebc42f Call cpu_startup() immediately after uvm_init(), but before mbinit().
Call configure() directly immediately after config_init().

This causes autoconfiguration to happen at the same time as before, but
creates some kernel submaps earlier, so that e.g. mbinit() can now
allocate memory.
1999-04-01 00:22:45 +00:00
thorpej 967b8c433c Don't call configure() from cpu_startup(). 1999-04-01 00:17:45 +00:00
thorpej 278e7ae222 Yet more fixes to the pool allocator:
- Protect userspace from unnecessary header inclusions (as noted on
current-users).

- Some const poisioning.

- GREATLY simplify the locking protocol, and fix potential deadlock
scenarios.  In particular, assume that the back-end page allocator
provides its own locking mechanism (this is currently true for all
such allocators in the NetBSD kernel).  Doing so allows us to simply
use one spin lock for serialized access to all r/w members of the pool
descriptor.  The spin lock is released before calling the back-end
allocator, and re-acquired upon return from it.

- Fix a problem in pr_rmpage() where a data structure was referenced
after it was freed.

- Minor tweak to page manaement.  Migrate both idle and empty pages
to the end of the page list.  As soon as a page becomes un-empty
(by a pool_put()), place it at the head of the page list, and set
curpage to point to it.  This reduces fragmentation as well as the
time required to find a non-empty page as soon as curpage becomes
empty again.

- Use mono_time throughout, and protect access to it w/ splclock().

- In pool_reclaim(), if freeing an idle page would reduce the number
of allocatable items to below the low water mark, don't.
1999-03-31 23:23:47 +00:00
scottr 5364339415 If'n you change the name of the .o file, you really ought
to change the entry point, too.
1999-03-31 20:45:06 +00:00
mycroft f145c291bd If copyout() fails, make sure to unbusy the mount point before returning. 1999-03-31 19:18:45 +00:00
mycroft 0622545249 Previous change to vn_lock() was bogus. If we got EDEADLK, it was from
lockmgr(), and it already unlocked v_interlock.  So, just return in this case.
1999-03-31 18:30:13 +00:00
cgd bd44d9c286 as pointed out by simonb, since we've moved to ELF __main() calls
aren't emittid anymore.
1999-03-31 16:12:51 +00:00
minoura 35b6e71f52 Enable rnd. 1999-03-31 15:38:32 +00:00
minoura 004b01c5ba Some trivial size reductions. 1999-03-31 15:38:06 +00:00
scottr 0848c89c55 The last change wasn't quite enough to build libc during a 'make build'.
Bump DFLDSIZ, too.
1999-03-31 14:58:15 +00:00
mycroft 83cb600015 Enable rnd. 1999-03-31 14:29:33 +00:00
minoura d264521334 Mapped copy was always disabled. 1999-03-31 14:22:21 +00:00
minoura e58c614810 CADDR1 and CADDR2 should not be used here. 1999-03-31 14:18:49 +00:00
mycroft 94590084d7 Enable rnd. 1999-03-31 14:16:20 +00:00
pk 65707bd131 * Pull in more uvm prototypes.
* Retrieve MID on all modules.
1999-03-31 14:09:09 +00:00
mrg 833fb0ac7f back date this file to version 1.155 which works on the shark. 1999-03-31 12:44:04 +00:00
mrg 920344b9c2 put back #ifdef _KERNEL that broken xosview build. 1999-03-31 12:29:51 +00:00
bouyer bb47e5aecf Increase some DELAY(), this seems required on some hardware (I'm not sure if
the hardware is at fault, or if DELAY(1) waits for less than 1us).
Improve debuging messages for wdcreset_wait().
1999-03-31 11:18:31 +00:00
leo 98732be4ba Export mtpr.h :-( This is because cpu.h depends on it. Probably userland
should not need cpu.h...
1999-03-31 10:48:00 +00:00
leo 968286a826 From Julian Coleman:
- there are a couple of registers that are reset after the X server finishes,
   which do not have the same values as they do when the machine is powered
   on. If the two are mismatched you can't write to the video memory.
 - video memory is mapped at offset 4MB to keep the X server happy
 - there is now a VGA memory mapping
 - DEBUG_ET4000 is now a bit more useful for debugging!
1999-03-31 10:44:15 +00:00
simonb ff2206f6df G/C UFS_NOSYMLINK, UFS_NOCLOSE and UFS_NOWRITE and use new LIBSA_NO_FS_*. 1999-03-31 07:43:39 +00:00
simonb 4c9bbd20fb Don't define errno expliticly, use libsa/errno.c in first stage and
${LIBSA} in the second stage.
1999-03-31 07:23:27 +00:00
scottr 9c8f206e65 Bump DFLSSIZ so that we can build libc.so.*, and limit MAXSSIZ independently
of MAXDSIZ.
1999-03-31 06:53:56 +00:00
cgd 801906b363 GC; unused 1999-03-31 06:37:13 +00:00
cgd be6a1d529a separate defns for primary and unified boot blocks 1999-03-31 06:28:41 +00:00
simonb febdc0ddf2 Use recent LIBSA_NO_TWIDDLE support. 1999-03-31 04:30:11 +00:00
cgd 77a9cb81ff implement NO_GETCHAR, to remove getchar(), and NO_PUTCHAR_HALT to remove
the check in putchar() for character input (specifically control-c, which
causes a halt).
1999-03-31 03:34:21 +00:00
cgd c5fa912232 no point in passing &ret to test_getchar(); nobody cares! also, no
point in doing the check-for-abort functionality twice in putchar()
(once with a call to test_getchar(), once open coded).
1999-03-31 03:22:57 +00:00
simonb 0f4c2803ca Create/build vers.c/vers.o inside the final link stage so that the build
datestamp get's updated each build.
1999-03-31 03:10:56 +00:00
cgd 98f67b8238 In putchar(), don't open-code two calls to the prom puts routine. Instead,
call a helper function (putonechar()).  Savings: 64 bytes.  Cha-ching!
1999-03-31 03:10:00 +00:00
cgd 3665d82d1a GC cpu_number() and turn alpha_pal_imb() into inline assembler. 1999-03-31 03:04:21 +00:00
cgd 51a85dabbb rename the C main() function to main_(). this avoids gcc's implicit
call to __main(), and therefore saves the size of the call and the
  size of a stub implementation of __main().
in the primary boot block, don't bother saving/restoring the argument
  passed in from the caller.  There is no such argument (that we care
  about, at least) to the primary.  (for secondary, it's the firmware
  FD being used.)
1999-03-31 03:03:01 +00:00
cgd 4a209e30f8 Compile with -Os (optimize for size).
Clean up the "Region 1" related definitions, and define load addresses,
  max load size, and max total size for as many boot block types as we can.
  (types = unified, primary, secondary).  We can't always define all
  values for all boot blocks, though.
Make CPP flags selection less gross.
Use objcopy rather than headersize (yay, evil gets a stake to the heart!).
Use a little shell script to verify that the sizes of the boot blocks are OK.
Do not compile too much more of libsa than we actually have to.
1999-03-31 02:52:11 +00:00
mhitch 11cfd11c52 Add CyberStorm MK III. 1999-03-31 02:47:38 +00:00
simonb 5fbc10c671 Reorder ${LIBS} so that we don't need to explicitly pull in bcmp.c
and bzero.c from libkern.
1999-03-31 02:35:14 +00:00
cgd 309213477a Make a bunch of backward-compatible changes to the boot blocks which allow
size to be reduced substantially.  (backward compatibility verified
by compiling one of the alpha boot blocks which uses all of the code
before and after, diffing the object files, and manually verifying that
the differences were 'correct'.  some differences were "unavoidable,"
it wanting to avoid a double-commit, because e.g. local variables which
were previously used were no longer used.)  a README which describes
supported options (or at least the ones mentioned below) is forthcoming.

add support for the preprocessor macro LIBSA_NO_TWIDDLE, which
  causes calls to twiddle() to be omitted if it's defined.
add support for the preprocessor macros:
	LIBSA_NO_FS_CLOSE
	LIBSA_NO_FS_WRITE
	LIBSA_NO_FS_SEEK
  which, if defined, cause the corresponding file system operations
  in the individual file system implementations to be omitted.  (note
  that all of those macros are not supported by all file systems at
  this point.  comments were added to individual file system files
  to indicate lack of support, and should be cleaned up later.  Backward
  compatibility options e.g. UFS_NOCLOSE, etc., are supported.)
add support for the preprocessor macro LIBSA_NO_FS_SYMLINK, which
  removes support for symbolic links from the file system support
  functions.  (same notes as for the macros above apply.)
add support for the preprocessor macro LIBSA_FS_SINGLECOMPONENT which
  removes all subdirectory and symlink support from the file system
  support functions.  (same notes as for the macros above apply.)
add support for the preprocessor macro LIBSA_NO_FD_CHECKING, which
  causes code relating to libsa file descriptor checks (e.g. range
  checking and checking that a file descriptor is valid) to be
  omitted if it's defined.
add support for the preprocessor macro LIBSA_NO_RAW_ACCESS, which
  causes code relating to raw device access to be omitted if it's
  defined.
change some structure copies to use bcopy() instead.  that way
  use of bcopy vs. memcpy() can easily be selected by
  LIBSA_USE_MEMCPY.  (without changes like these, you could end up
  having both bcopy() and memcpy() included.  eventually, all
  calls to bcopy should be changed to calls to memcpy() or memmove()
  as appropriate -- hopefully never the latter -- with an option to
  use bcopy instead.)
add support for the preprocessor macro LIBSA_NO_DISKLABEL_MSGS, which
  causes disklabel() to return '1' as msg rather than a string.  Can
  be used if the boot blocks don't care about the string, and need to
  save the space.
add support for the preprocessor macro LIBSA_SINGLE_FILESYSTEM, which
  if defined causes all of the file system switch code to be removed.
  Its value should be the name of the file system supported by the
  boot block, e.g. "ufs" for the FFS file system.  calls to the
  file system functions open, close, etc., which were previously
  done through a function switch are then done via direct invocation
  of <fs>_open, <fs>_close, etc. (e.g. ufs_open, ...).
add support for the preprocessor macro LIBSA_SINGLE_DEVICE, which
  does the equivalent of LIBSA_SINGLE_FILESYSTEM but for the device
  switch table.  Device entry pointes are expected to be named
  <dev>foo, e.g. the 'strategy' routine used when LIBSA_SINGLE_DEVICE
  is set to 'disk' is diskstrategy.
make ufs.c f_nindir array be unsigned ints.  the fact that it was signed
  caused ufs.c to require signed division routines (which were otherwise
  unnecessary for a small boot block).
1999-03-31 01:50:25 +00:00
cgd e5ce91e0f3 replace memcpy() implementation (which just called bcopy()) with
a small implementation of memcpy().  libsa memcpy() wouldn't
do the right thing if LIBSA_USE_MEMCPY was defined, and the whole
point of that define is to get rid of either bcopy() or memcpy().
(cloned from the bcopy() code.)
1999-03-31 01:39:16 +00:00
thorpej 98d006d2c6 Set a hard limit (rather than an advisory high water mark for pages) of
NMBCLUSTERS for the mbuf cluster pool.  On platforms which use direct-mapped
segments for pool pages (MIPS and Alpha), this makes NMBCLUSTERS actually
meaningful (such ports don't even allocate mb_map, as it is not used to
map mbuf cluster pages).

Improve the message logged at a maximum rate of once per second.  The
new message: "WARNING: mclpool limit reached; increase NMBCLUSTERS".

In the back-end pool page allocator, remove the message about mb_map
being full.  The message was not necessarily correct as the allocator
may have been starved for pages, rather than for space in the map.  Also,
the hard limit on the mbuf cluster pool will be reached before the map
fills (the last cluster will always fit into the map), so the message
is redundant.

Add a comment in mbinit() about considering setting low water marks on
the mbuf and mbuf cluster pools.
1999-03-31 01:26:40 +00:00
thorpej d4d4e314e9 Fix several bugs/deficiencies in the pool allocator:
- Add support for hard limits, with optional rate-limited logging of
a warning message when the pool limit is reached.  (This will be used
to fix a bug in mbuf cluster allocation on the MIPS and Alpha ports.)

- Fix some locking protocol errors.  This required splitting pr_flags
into pr_flags (which is protected by the spin lock) and pr_roflags (which
are `read only' flags, set when the pool is initialized, and never changed
again; these do not need to be protected by a mutex).

- Make the low water support actually mean something.  When a low water
mark is set, add free items to the pool until the low water mark is
reached.  When an item allocation causes the number of free items to
drop below the low water mark, make the pool catch up to it.  This can
make the pool allocator more useful for several applications (e.g.
pmap `pv entry' management) and more robust for others (for e.g. mbuf
and mbuf cluster allocation, so that the pagedaemon can use NFS to clean
pages on diskless systems without completely running dry on buffers to
receive packets in during extreme memory shoratages).

- Add a comment where we sleep waiting for more pages for the back-end
page allocator.  Specifically, instead of sleeping potentially forever,
perhaps we should just wake up once a second to try allocating a page
again.  XXX Revisit this soon.
1999-03-31 01:14:06 +00:00
fvdl fb1b0e7a0b Shifting ecx without explicit prefix in real mode won't work. 1999-03-30 22:35:21 +00:00
cgd 8aa0c52d66 #undef bcopy, so that this will still compile if LIBSA_USE_MEMCPY is defined 1999-03-30 22:03:47 +00:00
cgd 9d06bcdcfe Add bzero.c, errno.c, and memset.c to SRCS 1999-03-30 22:02:39 +00:00
cgd 9ce004e069 add simple (small) implementations of memset and bzero. the versions
in libkern are fine for the kernel, but the versions here are smaller
and in libsa the point is size.
1999-03-30 22:01:15 +00:00
cgd 1611da0c3c move errno to its own file; if you just need errno, you don't need dev.c's fns 1999-03-30 21:59:58 +00:00
mycroft 2f91607aff Enable this is a non-entropy rnd source. 1999-03-30 21:02:41 +00:00
mycroft 9d0dcbced4 Prefault the u-area pages at swapin time. 1999-03-30 21:01:42 +00:00
mycroft dcdd0d6124 Map the system page with access_type=READ. 1999-03-30 20:59:52 +00:00
thorpej ae7f25d8af Fix a typo. 1999-03-30 20:07:56 +00:00
pk 1469e9af76 The MMU_3L option became SUN4_MMU3L long ago. 1999-03-30 19:41:30 +00:00
mycroft 742a052418 Fix a null pointer dereference in the case where forwarding is turned on and
there are interfaces up but with no addresses.
1999-03-30 19:02:56 +00:00
soda 2f9a4a8d93 regdef.h is back 1999-03-30 18:38:32 +00:00
soda 5cf51ff2d5 regdef.h 1999-03-30 18:38:00 +00:00
drochner 17de7b2576 adapt to set_geometry change: we don't have to correct the geometry
anymore
1999-03-30 17:58:05 +00:00
drochner 62031ff978 fix some disk handling problems introduced in the last commits:
-read retries were botched, use the right sector count
-read-ahead buffer was effectively unused
-concentrate the handling of the weird BIOS geometry report at one place
-fallback for old floppies left cylinder count uninitialized
1999-03-30 17:55:48 +00:00
soda 678807689c fix error in previous my change 1999-03-30 17:34:55 +00:00
soda 530794ac61 - add _C_LABEL() to IMPORT(), to make this consistent with EXPORT().
- fix some oversight of previous my changes on defined(USE_AENT) or
  !defined(__NO_LEADING_UNDERSCORES__) case.
1999-03-30 16:50:04 +00:00
mycroft ca5dd9fee7 The AD1848/CS4231 attachment doesn't create DMA maps any more, so we have to
do it here.  This is preferrable anyway, since we're not actually doing DMA
through the AD/CS chip.
1999-03-30 16:40:47 +00:00
perseant 4158afaaf3 Add initialization to quell compiler warning (only on some platforms?) 1999-03-30 16:11:43 +00:00
chs 039c17eca9 remove some old #if 0'd-out debugging code. 1999-03-30 16:07:47 +00:00
perseant 322fef73ae Move variable initialization to the top of lfs_vflush 1999-03-30 16:03:16 +00:00
mycroft a3346d4ca8 Page 0 should never get R/M emulation. 1999-03-30 15:13:42 +00:00
soda 83c01decb0 ALIAS() is not needed, use XLEAF() or XNESTED() instead 1999-03-30 14:27:56 +00:00
soda 2f780c89c9 - regdef.h is back, so use it.
- ALIAS() is not needed, use XLEAF() or XNESTED() instead
- use AENT() instead of .aent
- _END_LABEL() is not needed (and was wrong)
- define ALEAF(), NLEAF(), NON_LEAF(), NNON_LEAF() by
  XLEAF(), LEAF_NONPROFILE(), NESTED(), NESTED_NONPROFILE()
1999-03-30 14:26:42 +00:00
soda e5eb2cfa3f - protect from multiple inclusion
- incorporate changes to comments from asm.h
1999-03-30 14:22:58 +00:00
soda 45b35a036e regdef.h is back 1999-03-30 14:20:43 +00:00
mycroft e7ad33406b Nuke at least a few files which are clearly not used any more. 1999-03-30 13:08:55 +00:00
mycroft afa07de60d Fix two problems with NFSV3CREATE_GUARDED:
* We shouldn't truncate the file.
* We were leaving the vnode locked (unless the truncate happened to fail).
Solaris clients may cause this under some conditions.
Problem reported by chopps, analysis and fix by me.
1999-03-30 12:01:18 +00:00
drochner 4feae58ec1 sync to changed geometry handling in the standalone code 1999-03-30 11:51:35 +00:00
mycroft 99b341de15 Adjust a comparison so that the pagedaemon doesn't get stuck ping-ponging with
a process trying to allocate memory.
1999-03-30 10:12:01 +00:00
mycroft 8cab76a0ec Make the kernel silent by default when running crashme. 1999-03-30 10:10:57 +00:00
mycroft f317021d2c Some of the DIAGNOSTIC checks were too strict and could be tripped by crashme. 1999-03-30 10:10:22 +00:00
bouyer 20cfe22bc8 Needs to include opt_bufcache.h. 1999-03-30 08:21:54 +00:00
tron ab9ea90a8e Regen. 1999-03-30 07:37:58 +00:00
tron b46e8732dd Add poll() emulation. 1999-03-30 07:29:05 +00:00
gwr c5eaccc017 Arrange for "sysctl hw.machine" to show sun3x.
(Needed by the miniroot, etc.)
1999-03-30 06:12:40 +00:00
minoura 2c62712a32 Remove unused files. 1999-03-30 04:29:09 +00:00
minoura d39738d85b Remove options (SWDEV|SWAP|VNODE)PAGE 1999-03-30 04:27:08 +00:00
minoura eabdc25095 Update dependency. 1999-03-30 04:26:01 +00:00
minoura 929875f387 G/c obsoleted devices. 1999-03-30 04:25:36 +00:00
minoura d808d6f5ff defopt EXTENDED_MEMORY and ITE_KERNEL_ATTR. 1999-03-30 04:25:07 +00:00
abs bb2d7dd6dc Regenerate (with poll()) 1999-03-30 02:25:32 +00:00
abs 9c2ef08c3e Since NetBSD has poll(), use it.
Linux oracle install now gets far enough that I want our DBA around to
see if we can finish the job.
1999-03-30 02:22:49 +00:00
simonb a63b96d0c4 Don't install sysconf.h - nothing is exported to userland in this file. 1999-03-30 02:19:02 +00:00
simonb c902cc84ca Don't install intr.h - there's only a kernel function prototype in
this file.
1999-03-30 02:16:03 +00:00
eeh 468dc3bd2b include compat_sparc32.h->compat_netbsd32.h 1999-03-30 02:12:37 +00:00
wrstuden bd2d8363bc The mode for a node is a mode_t in both struct stat and struct vattr -
don't use a u_short for intermediate storage in vn_stat.
1999-03-30 00:16:44 +00:00
wrstuden eb10774f2b Explicitly mask mode returned in old stat structure to 16 bits. Also correct
comment (we're converting from a new to an old struct stat).
1999-03-30 00:13:57 +00:00
thorpej 455b121ce8 In pmap_enter(), set the appropriate page attributes based on access_type.
The m68k maintains modified and referenced information for us, but seeding
the page attributes can save us a pv list traversal.
1999-03-30 00:12:32 +00:00
perseant 5589f33082 Fix unit mismatch in debugging code in lfs_segclean; also put it properly
within `#ifdef DEBUG_LFS'.
1999-03-29 22:13:07 +00:00
perseant 3e0bf5e0d8 Fix the other missing dirop wakeup 1999-03-29 21:54:26 +00:00
perseant f058684b7f lfs_truncate calls vinvalbuf to invalidate all currently-hald buffers, which
in turn forces a flush of the vnode, whether or not it is involved in a dirop.
(This can happen during a remove or rmdir, when the directory is shrunk.)
Because of the nature of dirops, however, flushing a vnode involved in a dirop
is disallowed (and was marked with a panic).  This patch has lfs_truncate
call a specialized vinvalbuf that only invalidates buffers following the new
end-of-file, and thus does not require a flush.  Also the panic is demoted,
in case I missed any other path to lfs_vflush.
1999-03-29 21:51:38 +00:00
perry 55adc1e16e remove BROKEN_LPT_DELAY option 1999-03-29 21:51:25 +00:00
perry d5a261206d Replace the #ifdef'ed variable DELAYs with a pair of non-ifdefed
DELAY(1)'s. This should fix interrupt driven lpt driver hang and
reboot problems for the group of users who have experienced them, and
shouldn't hurt anyone else.
1999-03-29 21:50:06 +00:00
fvdl c45bee7307 Regen. 1999-03-29 21:36:00 +00:00
fvdl 05eae31620 Now that he ESS 1868 and 1869 are working, enable them here. 1999-03-29 21:35:19 +00:00
pk 401d03761f Initialize automatics in stp4020print(); noticed by Jonathan O'Brien. 1999-03-29 21:30:48 +00:00
drochner 2396efd0b7 add a commented out WS_KERNEL_BG option, closes PR port-i386/7271
by Charlie Root <root@theprovider.com>
1999-03-29 19:57:34 +00:00
mycroft 7c33a450ba Recalculate delaytab[]. We need to round up in case we were on the edge of a
tick and the hardware mysteriously responds fast enough that the delay ends
up being 1 tick short.  An unlikely event, but just in case anything actually
relies on this...
1999-03-29 17:54:34 +00:00
mycroft c40877ff9d delay(): For small values of n, use a fixed lookup table. Also use
rtclock_tval as the limit, since this is what we actually programmed the chip
for.
1999-03-29 17:33:29 +00:00
augustss 20d6f6afe6 Regen. 1999-03-29 17:24:33 +00:00
augustss 8333badc92 Add Epson printer cable. 1999-03-29 17:23:45 +00:00
simonb a487471f7c Remove bogus comment. 1999-03-29 13:48:25 +00:00
mycroft f487bc59aa Nuke bogus extra variable, too. 1999-03-29 13:40:41 +00:00
mycroft 85ad0d175c Fix bogons in previous change:
* The fact that IIR_NOPEND was not set on entry does *not* mean that no
  transmission was in progress.  Besides, we don't want to throw away receive
  interrupts either.
* In the !clearirq case, we didn't splx().
1999-03-29 13:21:15 +00:00
mrg c17a4018cb pull in new (?) BUS_SPACE_BARRIER_{READ,WRITE} definitions. 1999-03-29 12:42:51 +00:00
tsubai 7c3a6002b3 Use interrupt-map property rather than hard-coding irqs.
(From Dan Winship <danw@MIT.EDU>. Slightly modified by me)
1999-03-29 12:12:03 +00:00
cjs 5ecfcfbb96 Make `sun4m DMA not supported yet' message print only for this device,
rather than every sbus device probed.
1999-03-29 12:04:43 +00:00
fvdl d58a5af79d Fix multicast hashing function. PR 7274, from Izumi Tsutsui 1999-03-29 11:11:34 +00:00
mycroft 665b05efd4 GC physical_memoryblock. 1999-03-29 10:02:19 +00:00
ross 6a228da053 Mods to com_common_putc(). When doing kprintf() or kgdb output:
1. don't clear the irq unless it was clear before transmitting
2. also do various bus_space_barrier() ops
Stops console from freezing when kprintf interrupts tty driver output.
1999-03-29 10:01:39 +00:00
bouyer ad69d389ab Remove the hack to attach devices responding with ATA signatures as atapi if
IDENTIFY said so: it doesn't help for the drive this was supposed helping,
and seems to break another device.
In interrupt routine, don't return 0 if we are polling: this should fix the
"panic: wdc_exec_command: polled command not done" some people reported
(kern/7269).
1999-03-29 08:32:02 +00:00
nisimura ed7699b360 - Unnecessary to have '#include <machine/autoconf.h>' for those. 1999-03-29 07:22:02 +00:00
mycroft e89e34c04a Nuke the contents of pmap_pageable(). It accomplishes nothing on this port,
and it's potentially a serious bug.
1999-03-29 07:15:06 +00:00
mycroft 460d63062a Do the previously slightly differently; we want to count by pages anyway.
Also fixes a problem with not flushing TLB entries in vmapbuf().
1999-03-29 06:24:31 +00:00
mycroft d05df6042f Add mpu at isapnp, currently commented out. 1999-03-29 06:16:34 +00:00
nisimura 1902d11a08 - Minor formating knots. No functional change. 1999-03-29 05:56:29 +00:00
mycroft 671c65c6da Duuuh. Back and front pages should have an access_type of 0, since we don't
know they're going to be used.  What was I thinking??
1999-03-29 05:43:31 +00:00
mycroft e3c8daf920 Panic if access_type has bits not in prot. 1999-03-29 05:31:24 +00:00
mycroft 12f5abbcee A few things:
* Count page table pages in the RSS.
* Rather than patching it up, panic if access_type has bits not in prot, as
  this should now be impossible.
* Add page table reference counting, but currently disabled as it still has
  some issues.
1999-03-28 22:01:06 +00:00
sommerfe 3e341c9af5 sync with regular syscalls.master: Add getcwd, fchroot, and tweak __getlogin 1999-03-28 21:56:56 +00:00
mycroft 0ce76ca08b Reduce the access_type for copy-on-write pages in the front and back regions. 1999-03-28 21:48:50 +00:00
is 67caec5886 Dont write through a zero pointer (when in probe mode of a2kugettod()). 1999-03-28 21:39:59 +00:00
is 29abee115f Remove 20 lines of register dump from normal operation. 1999-03-28 21:09:54 +00:00
mycroft 8ed77cabd0 Fix a case I missed in the previous. 1999-03-28 21:01:25 +00:00
mhitch d28c630840 I had to have been asleep when I changed Ignatios's constants to register symbols.
Use the correct symbols for ODR full bits.
1999-03-28 20:29:51 +00:00
sommerfe ee7bbe5b2f Fix bug in previous change which resulted in kernel VA space leak.
We need an accurate len after we clear the PTE's in vunmapbuf.
1999-03-28 20:21:51 +00:00
is e657b604f3 Add back the "810" id string. 1999-03-28 20:09:09 +00:00
fvdl 0a8673f4ba Add a few MBR types. 1999-03-28 20:01:52 +00:00
fvdl 1e3ed49ca1 Remove debugging printf. 1999-03-28 19:55:51 +00:00
mycroft 4831b815f5 Only turn off VM_PROT_WRITE for COW pages; not VM_PROT_EXECUTE. 1999-03-28 19:53:49 +00:00
fvdl b815df141c Only use the total number of sectors information field from the EDD if
the bit is set that declares the geometry valid. The spec itself says
that this field isn't covered by the "geometry valid" bit, but at
least one BIOS implements it that way.
1999-03-28 19:41:27 +00:00
is c8c6cb17c3 Initialize all 16 elements. We're wide. 1999-03-28 19:39:24 +00:00
is 5ecbda755f The "Phase mismatch, REQ not asserted" error happens on one of my disks
a few times a day. As the driver and system always recovers, when typing
a few c-ontinues, I think not entering the Debugger() won't hurt.
1999-03-28 19:30:07 +00:00
eeh 6492e81ae6 Fix fault handling code to correctly report access_type and fault_type
and get rid of pmap_enter_phys().
1999-03-28 19:01:02 +00:00
scw cf2576d332 Pull in <net/if{_ether,}.h> and a few others to get ETHER_MAX_LEN. 1999-03-28 18:08:55 +00:00
drochner 4f36436461 add fields for bus_apace tag and handle to ioasic_softc 1999-03-28 17:47:28 +00:00
kleink fe30ad2be0 * Also take into consideration _POSIX_C_SOURCE for name space protection.
* Define UIO_SMALLIOV only for _KERNEL source.
1999-03-28 17:47:06 +00:00
kleink 2304549e9f Sync __getlogin()'s namelen argument with the libc-internal declaration
(u_int vs. size_t).
1999-03-28 17:34:33 +00:00
kleink 1c35ac8f6b Regen. 1999-03-28 17:32:51 +00:00
kleink 38c7f65f0c Sync __getlogin()'s namelen argument with the libc-internal declaration
(u_int vs. size_t).
1999-03-28 17:29:52 +00:00
kleink 22ac9f8845 ANSI C police. 1999-03-28 17:13:47 +00:00
eeh 134ef85615 Fix ref counting. 1999-03-28 16:01:19 +00:00
minoura 67ce202cb5 Fixed the bug described in the previous commit log.
Re-enabled the title image.
1999-03-28 14:03:36 +00:00
drochner 31a77e61b3 Leave out display console related bits if wscons is not compiled in.
Should fix link error reported by Kevin <kev@drule.org>.
1999-03-28 13:48:40 +00:00
tsubai e1410f9e82 Remove unused file. 1999-03-28 13:39:30 +00:00
tsubai 85cece609b Remove unused files. 1999-03-28 13:16:45 +00:00
tron 777c326ff7 Make it possible to force 16 mode via "flags 4" in kernel configuration.
Patch supplied by Martin Husemann on "current-users", fixes PR kern/5673.
1999-03-28 12:51:49 +00:00
tron 9020887854 Fix for handling of 8+3 filenames with blanks supplied by Bill Sommerfeld
in PR kern/7229.
1999-03-28 11:05:43 +00:00
mycroft ea8db6d88d Fix the vunmapbuf() problem, by zeroing out the PTEs before freeing the VA
range.  This is reasonable given that we inserted the PTEs manually in the
first place.
Also try to use specific cache/TLB purges.
1999-03-28 06:35:38 +00:00
simonb 9c02b3c942 Add enabled options NETATALK and IPFILTER_LOG, and disabled PPP_BSDCOMP,
PPP_DEFLATE, PPP_FILTER and PFIL_HOOKS

Partial fix for kern/7264 from Greg Woods.  Too much variance in all
ports GENERIC config files to do across the board right now.
1999-03-28 06:17:40 +00:00
simonb c286d2a5e9 Hopefully get the last of the "ifdef UVM" bogons in genassym.cf's. 1999-03-28 06:00:18 +00:00
simonb 9d77f4eb40 Use COPTS="-Os -mmemcpy" for INSTALL kernels - saves ~15kB in text. 1999-03-28 05:46:53 +00:00
simonb dcc82eccf1 Also comment out inclusion of "builtin.5100" to stop pulling in 5100
devices.
1999-03-28 03:02:49 +00:00
simonb 10ab7f42f7 Protect the variables used during the DDB symbol calculations with
an "#ifdef DDB".
1999-03-28 01:56:41 +00:00
abs 67f5f8fa08 Another vanity config 1999-03-28 01:09:48 +00:00
nathanw 95b075be1e Remove commented-out uaudio declaration;
we don't actually have support for it.
1999-03-27 23:27:57 +00:00
dbj a6f0126b1a fixes to compile if NBPFILTER == 0 1999-03-27 22:48:36 +00:00
nathanw 9c6754cd69 Alpha printf format fixes.
Closes PR kern/7258.
1999-03-27 21:47:59 +00:00
scw c9dd38b5bf UVM is no longer defined. 1999-03-27 18:35:34 +00:00
eeh 692ac0b644 We don't have a default binary format: EXEC_AOUT is used for NetBSD/sparc pre 1.4,
EXEC_ELF64 is used for NetBSD/sparc64, and EXEC_ELF32 is used for NetBSD/sparc_elf.

We really need a way to turn these on and off depending on whether we're building
a 32-bit or 64-bit kernel...
1999-03-27 17:58:20 +00:00
drochner a17279574e alpha uses the mi wscons; remove the old bits 1999-03-27 17:36:30 +00:00
mhitch 037eeb1cf5 Remove ifdef UVM. 1999-03-27 16:56:09 +00:00
ragge d30ddfde0f Change console detection a little bit. 1999-03-27 15:33:46 +00:00
simonb 1a74785d0a Remove "md" - we have a specific INSTALL kernel, so we don't need "md"
on the GENERIC kernel.  Pointed out by Erik Fair.
1999-03-27 15:31:50 +00:00
minoura 1dab9bf74a Work around for broken unzip routine.
Transition to egcs seems to have broken the trickily hacked inflate routine.
Disable the hack and size-consuming title image for a while.
1999-03-27 15:01:34 +00:00
mycroft 237c992085 Fix a possible glitch (not mine) in the wired page accounting. 1999-03-27 14:13:42 +00:00
mycroft 15217d40e3 More DIAGNOSTIC checks... 1999-03-27 11:45:07 +00:00
kleink 65dd935211 Typo. 1999-03-27 11:42:12 +00:00
drochner 1663f7072b remove a diagnostic panic in the keyboard autorepeat timeout() handler.
There is a rece condition which might trigger this but is harmless
otherwise. Leave the handler silently instead.
1999-03-27 11:22:23 +00:00
simonb 4436f7ad26 Uncomment ipfilter and rnd, add md. 1999-03-27 11:10:25 +00:00
mycroft a1784400cd GC PT_Us, add more DIAGNOSTIC checks. 1999-03-27 09:41:03 +00:00
ragge 11f0bebf2b #define was wrong. Some .c should be .s. 1999-03-27 09:33:30 +00:00
ross 5bc91073ce Bug fix for the bug fix. Be sure to prom_close() in bootxx and boot, but not
in netboot, and not in diskclose(), but after trying all kernelnames[].
1999-03-27 09:01:27 +00:00
simonb 28b36b37a5 Remove trailing white-space. 1999-03-27 08:15:29 +00:00
jonb a72ad718a0 Add rnd pseudo-device to GENERIC, and a few cleanups everywhere. 1999-03-27 08:00:43 +00:00
simonb 25cde9b010 Disable 5100's for now - it doesn't work yet, so we may as save a little
bit of space...
1999-03-27 07:40:08 +00:00
simonb 516865d17c Enable now that "make depend" works properly. 1999-03-27 07:39:06 +00:00
simonb d44e9483b0 Go back to a Makefile.booters scheme, like most other ports do. No
more problems for "make depend" - tested with and without obj dirs.
1999-03-27 07:17:50 +00:00
explorer 02db718d0f enable pseudo-device rnd on GENERIC-type, and remove EXPERIMENTAL from rest. 1999-03-27 07:11:35 +00:00
scottr e3efa6ea27 Cleanups from Hauke. 1999-03-27 07:09:30 +00:00
explorer f644cf78d0 remove EXPERIMENTAL comment, enable /dev/random in GENERIC kernels 1999-03-27 07:04:35 +00:00
abs e9ea59935c Make this compile again after mycroft's pmap fixes. 1999-03-27 06:31:31 +00:00
scottr 9506e86204 This file is no longer used by anything. 1999-03-27 06:13:51 +00:00
mycroft 93768384ee Fix a bug in pmap_collect_pv(), even though nobody currently uses it:
When we put a page on the collection list, we must subtract NPVPPG from the
total free count: one for each pv_entry that's free in that page, and one for
each free pv_entry in other pages that we're going to eat by moving the ones
in the page being collected.
1999-03-27 05:57:02 +00:00
briggs f4647f0ec7 Compile itecnputc if NZSC == 0. 1999-03-27 05:53:05 +00:00