Commit Graph

13787 Commits

Author SHA1 Message Date
John Polstra
6f8126face Correct an "&" operator which should have been "&&".
Submitted by:	mjacob
1999-02-05 22:24:26 +00:00
Mark Newton
925d12eac5 Style nit: sort elf_brand_inuse() prototype in with the others.
Prototype also needed to be added for !ELFCLASS32 case.

Submitted by:	bde
1999-02-05 13:52:15 +00:00
Kazutaka YOKOTA
3dec8614fe Oops, the last commit contained a wrong patch. This is the correct one. 1999-02-05 12:58:40 +00:00
Dag-Erling Smørgrav
2da199da53 Followup to yokota's last commit:
- va_mode_flags -> va_info.vi_flags
 - scanline width may be different from screen width
1999-02-05 12:40:16 +00:00
Kazutaka YOKOTA
1c27745f73 - Don't assume the line length in the video memory is always the same as
the screen width.
- Store the current video mode information in the `video_adapter' struct.
- The size of the `v_offscreensize' field in the VESA mode information
  block is u_int16, not u_int8.
1999-02-05 11:52:13 +00:00
KATO Takenori
533601dc35 Sync with sys/i386/isa/sio.c revision up to 1.228.
Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-02-05 11:37:40 +00:00
Matt Jacob
8410876eb9 quiet the alpha compiler 1999-02-05 08:49:34 +00:00
Matt Jacob
fe18c5291a minor tweaks 1999-02-05 07:57:26 +00:00
Matthew Dillon
5b02fcc3d0 The elf loader sets the permissions on bss to VM_PROT_READ|VM_PROT_WRITE
rather then VM_PROT_ALL.  obreak, on the otherhand, uses VM_PROT_ALL.
    This prevents vm_map_insert() from being able to coalesce the heap and
    creates an extra map entry.  Since current architectures ignore
    VM_PROT_EXECUTE anyway, and since not having VM_PROT_EXECUTE on data/bss
    may provide protection in the future, obreak now uses read+write rather
    then all (r+w+x).

    This is an optimization, not a bug fix.

Submitted by:	Alan Cox <alc@cs.rice.edu>
1999-02-05 07:49:29 +00:00
Matt Jacob
499d2a2a5c Extend unit numbers to a full 10 bits (split into sections
of the minor). Establish and use a control mode open. Control
mode opens may open the device without locking, but are prohibited
from all but some ioctls. MTIOCGET always works. MTIOCERRSTAT
works, but the clearing of latched error status is contingent
upon whether another application has the device open, in which
case an interruptible perip acquire is done. MTSETBSIZ, MTSETDNSTY
and MTCOMP also require a periph aquire.

Relative fileno and blkno are tracked. Note that just about any
error will make these undefined, and if you space to EOD or use
hardware block positioning, these are also lost until the next
UNLOAD or REWIND.

Driver state is also tracked and recorded in the unit softc
to be passed back in mt_dsreg for a MTIOCGET call.
Thanks to Dan Strick for suggesting this.

Reintroduce 2 filemarks at EOD for all but QIC devices. I
really think it's wrong, but there is a lot of 3rd party
software that depends upon this (not the least of which is
tcopy). Introduce a SA_QUIRK_1FM to ensure that some devices
can be marked as only being able to do 1 FM at EOD.

At samount time force a load to BOT if we aren't mounted. If the
LOAD command fails, use the REWIND command (e.g., for the IBM 3590
which for some gawdawful reason doesn't support the LOAD (to BOT)
command).

Also at samount time, if you don't know fixed or variable, try to
*set* to one of the known fixed (or variable, for special case)
density codes. We only have to do this once per boot, so it's not
that painful. This is another way to try and figure out the wierd
QIC devices without having to quirk everything in the universe.

A substantial amount of cleanup as to what operations can and what
operations cannot be retried. Don't retry space operations if they
fail- it'll just lead to lossage.

Not yet done is invalidating mounts correctly after errors. ENOTIME.
1999-02-05 07:32:52 +00:00
Matt Jacob
d032c79f31 add QIC 525,320,1320,3080 codes 1999-02-05 07:19:23 +00:00
John Polstra
b7429e253a Correct a format mismatch on 64-bit architectures. This should
fix the erroneous values in the procfs "map" file on the Alpha.
1999-02-05 06:18:54 +00:00
Greg Lehey
3f8d2678bc Remove some dead debug code
build_write_request: get the check for failure right
1999-02-05 05:09:22 +00:00
Mark Newton
3b351cc1d3 Additional note on last rev: The rationale for this is to allow you
to run Solaris executables (or executables from any other ELF system)
directly off the CD-ROM without having to waste megabytes of disk
by copying them to another filesystem just to brand them.
1999-02-05 03:47:47 +00:00
Mark Newton
f8b3601e08 Created sysctl kern.fallback_elf_brand. Defaults to "none", which will
give the same behaviour produced before today.  If sysadmin sets it
to a valid ELF brand, ELF image activator will attempt to run unbranded
ELF exectutables as if they were branded with that value.

Suggested by: Dima Ruban <dima@best.net>
1999-02-05 03:43:18 +00:00
Matt Jacob
46bc42dcf8 Add driver states that will be reported (for SCSI) in mt_dsreg. 1999-02-05 02:47:30 +00:00
Matthew Dillon
e198079da2 Fix race in pipe read code whereby a blocked lock can allow another
process to sneak in and write to or close the pipe.  The read code
    enters a 'piperd' state after doing the lock operation without
    checking to see if the state changed, which can cause the process
    to wait forever.

    The code has also been documented more.
1999-02-04 23:50:49 +00:00
Adam David
38ebe5624f replace previous stupid comment with one more appropriate
where it will be easily found
1999-02-04 22:34:23 +00:00
Mark Newton
d9300dd82b Can't use elf_brand_inuse() here because iBCS2 doesn't use ELF. D'oh!
Inlined the same logic elf_brand_inuse() utilizes instead.
1999-02-04 21:21:38 +00:00
Mark Newton
d27583423e Added call to elf_brand_inuse() to prevent you from cutting your own
legs out from under you.
1999-02-04 21:20:13 +00:00
Matthew Dillon
82b23b5384 vp->v_object must be valid after normal flow of vfs_object_create()
completes, change if() to KASSERT().  This is not a bug, we are
    simplify clarifying and optimizing the code.

    In if/else in vfs_object_create(), the failure of both conditionals
    will lead to a NULL object.  Exit gracefully if this case occurs.
    ( this case does not normally occur, but needed to be handled ).

Obtained from: Eivind Eklund <eivind@FreeBSD.org>
1999-02-04 18:25:39 +00:00
Adam David
431552d221 remind that apm is required in order for timekeeping to work 1999-02-04 18:08:55 +00:00
Matthew Dillon
588059bea0 Fix bug in a KASSERT I introduced in vm_page_qcollapse() rev 1.139.
Since paging is in progress, page scan in vm_page_qcollapse() must be
    protected at atleast splbio() to prevent pages from being ripped out from
    under the scan.
1999-02-04 17:47:52 +00:00
Daniel C. Sobral
98c5378cdc Make FICL_TRACE default.
Add freebsd.fr, for FreeBSD specific forth source. Add $ and %, to
replace the lost @ and - functionality of include. $ has the opposite
behavior of @ though, since the default behavior was inverted.
1999-02-04 17:13:49 +00:00
Daniel C. Sobral
47749087ac Make use of prototypes to silence warnings.
Change include() so it will be able to load files with forth code,
instead of just builtins. Remove #@- from the include section of the
help file, since they don't work in the new version of include, unless
BOOT_FORTH is not defined.

Change bf_run() so it will return the result returned by ficlExec(). Also,
make bf_run() push "interpret" to be executed by ficlExec(), since ficlExec()
doesn't do it by itself. (Things worked previously because nothing
recursed through ficlExec() by the way of bf_run()).

Change/extend comments on builtin behavior.

Search for "interpret" at the end of bf_init(), so /boot/boot.4th can
provide it's own version.

Remove dead code.
1999-02-04 17:06:46 +00:00
Daniel C. Sobral
099d325dd5 Make ficlExec recursive. This removes vmReset and vmQuit from the
error cases, but the replacement should be doing everything they
did, except what did shouldn't be doing, and might do a little more
they ought to be doing.
1999-02-04 16:53:47 +00:00
KATO Takenori
921bc385e8 Recognize Pentium II Xeon, Celeron and Pentium III cpus. Because CPU
names are printed on their packages and shown by BIOS, kernel does not
need to show details.

PR:		8751, 9320 and 9463
1999-02-04 16:48:26 +00:00
Bruce Evans
89955e6330 YAMFsio.c (1.227-1.228: set up input buffering dynamically). 1999-02-04 15:54:02 +00:00
Bruce Evans
d95f2350b0 M_TTYS -> M_DEVBUF. M_TTYS is documented to be for "tty data
structures" but since tty structs aren't malloced it is actually
mainly for tty-level (clist) buffers.  It was slightly misused
here for com structs, and the previous commit completely misused
it for device buffers.

Fixed some bugs in nearby pccard code:
- memory leak when pccards go away (broken in previous commit).
- bogus bzeroing of the com struct before freeing it.
- style bugs.
1999-02-04 15:24:29 +00:00
KATO Takenori
1e476c296d Sync with sys/i386/i386/userconfig.c revision 1.129. 1999-02-04 13:58:44 +00:00
Bruce Evans
b36c719659 Set up interrupt-level input buffering dynamically depending on
the input speed, so that it can work at speeds larger than 115200
bps without being flow controlled.  The buffer is twice as large
as before at 115200 bps and half as large as before at low speeds
Use a single interrupt-level buffer instead of ping-pong buffers
because the simplifications provided by ping-pong buffers became
complications.

This change is over-engineered.  Statically configured buffering
was simpler and faster, and increasing the buffer size to support
1.5Mbps would cost about 1 US cent's worth of RAM per port, but I
was interested in the buffer switching mechanism.
1999-02-04 13:45:14 +00:00
Daniel C. Sobral
15369f7e9f Fix ficlExecFD to take kern/9412 changes into account. Also modify it
not to vmThrow errors. This is not what the comments say it does, and
it doesn't work when there is no ficlExec environment (like it's only
use in sys/boot/common/interp_forth.c).

PR:		bin/9772
1999-02-04 13:28:56 +00:00
Daniel C. Sobral
e08e812d7a The trace facility was full of bugs. Correct that by using the
right variable.

PR:		bin/9756
1999-02-04 13:20:30 +00:00
Daniel C. Sobral
b7efae4386 Silence a warning.
PR:		bin/9754
1999-02-04 13:16:21 +00:00
Daniel C. Sobral
7505875a0a The previous fix for "type" was absolutely lousy. Not only the buffer
allocated was not big enough, but it ended up to being used where it
was supposed to be used. The person who did that ought to be shot, but
since I'm a good person, I'll forgive myself...

PR:		bin/9743
1999-02-04 13:06:47 +00:00
Daniel C. Sobral
aa8b85772f Add conditional compilation facilities to ficl. This had been previously
committed to RELENG_3 instead of HEAD, so let's HEAD catch up.

PR:		bin/9662
1999-02-04 12:57:56 +00:00
Mark Newton
0f1110bb5f svr4 emulator will refuse to unload itself if it is currently in use. 1999-02-04 12:43:17 +00:00
Mark Newton
096977fae7 Provide elf_brand_inuse() as a method an emulator can use to find out
whether it is currently in use (which is kinda useful when it's about
to unload itself:  Lockups are never very much fun, are they?).
1999-02-04 12:42:39 +00:00
Kazutaka YOKOTA
3720fe69b6 - Added atkbdc and atkbd to the device info array so that they don't
appear as "unknown device" in the visual UserConfig.
- Mark psm as FLG_FIXED.
1999-02-04 10:36:57 +00:00
KATO Takenori
270b84ae95 Sync with sys/i386/i386/machdep.c revision 1.324. 1999-02-04 09:55:42 +00:00
Bruce Evans
b8be6ed0c2 Added a used include. This file doesn't get tested by LINT because
it is null when trix is configured.

Submitted by:	Brian Feldman <green@unixhelp.org> but moved by me
1999-02-04 08:52:46 +00:00
Greg Lehey
308dad4df3 Split .gdbinit file into two versions, on suitable for remote
debugging, the other for dump analysis.
1999-02-04 04:59:52 +00:00
Mike Smith
ea95d6917a Nuke all the stupid ffs() stuff and use powerof2() instead.
Submitted by:	Bruce Evans <bde@zeta.org.au>
1999-02-04 03:27:43 +00:00
Mike Smith
609b6256fd Fix power-of-2 check for the TCB hash size.
Submitted by:	Brian Feldman <green@unixhelp.org>
1999-02-04 03:02:56 +00:00
David Greenman
cf7d145389 Fixed the type of target_page to vm_offset_t (unsigned). This fixes a
panic during boot on machines with >=2GB of RAM. Also changed some
incorrect printf conversion specifiers from %d to %u (signed to unsigned).
This fixes bugs when printing the amount of memory on machines with >=2GB
of RAM.
1999-02-03 14:10:50 +00:00
Mike Smith
617aa5cdf8 Mention the net.inet.tcp.tcbhashsize tunable. 1999-02-03 09:07:33 +00:00
Mike Smith
aa1458495d Make TCBHASHSIZE a boot-time tunable as well, taking its value from the
variable net.inet.tcp.tcbhashsize.

Requested by:	David Filo <filo@yahoo-inc.com>
1999-02-03 08:59:30 +00:00
KATO Takenori
dccbc08d92 PC98 version of new boot loader. Because boot2 has not yet ported,
files in boot2 directory are copies from legacy biosboot.

Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-02-03 08:39:09 +00:00
Bruce Evans
03126f3524 Removed some unused includes (only 1 to go here now). Sorted includes. 1999-02-03 08:21:44 +00:00
Semen Ustimenko
b4b8aedf57 Added ntfs subdirectory.
Reviewed by:	David O'Brien <obrien@NUXI.com>
1999-02-03 04:18:25 +00:00