Commit Graph

12054 Commits

Author SHA1 Message Date
Robert Nordier 18577050a0 Allocate space for storing of arguments at the end of conventional
memory.
1998-10-04 21:14:33 +00:00
Mike Smith 5f8edb2c4d Don't include ELF symbol information yet - it causes the ELF DDB to
explode.
1998-10-04 20:58:46 +00:00
Bill Paul 9624d2cdc2 Force the ThunderLAN driver to use PIO mode by default instead of
memory mapped mode. There are some laptop docking stations with
built-in tlan chips where memory mapped mode doesn't work correctly.

Pointed out by: jmb
1998-10-04 18:47:38 +00:00
Alexander Langer ee6f62ee47 Support hz > 1000 (Alpha) in BIOCSRTIMEOUT.
Obtained from:	OpenBSD
1998-10-04 17:20:22 +00:00
Dag-Erling Smørgrav 5b3a79a466 Nit in comment: PnP ID 0x3500630e is a CS4236B, not a CS4236. 1998-10-04 16:22:25 +00:00
Mike Smith 7546830370 Improve the handling of the initial bootdev value from the previous loader.
Remove some unused code.
1998-10-04 09:12:54 +00:00
Mike Smith 58b7e8766e biosdisk.c
Allocate space for, and copy, NDOSPART slice entries from the
	MBR, not just one.  Add some extra debugging while we're at it.

elf_freebsd.c
	Initialise the symbol table start/end pointers in case we don't
	have them.
1998-10-04 09:12:15 +00:00
Mike Smith b0773b5098 At net-jp@jp.freebsd.org mailing list, if_cs user in Japan
reported bug.

  At using tcpdump for cs interface, tcpdump only dump packet which
src or dst MAC-address is cs interface. cs interface can't look up
packet between others.

Submitted by:	MIHIRA "Sanpei" Yoshiro <sanpei@sanpei.org>
1998-10-04 02:11:15 +00:00
Gary Palmer 1a1c25472a Build the new boot loader on the alpha. This allows make release to work again. 1998-10-04 00:42:08 +00:00
Nate Williams ed8d80c2de Fix 'noatime' bug that was unrelated to use of noatime.
The problem is caused when a directory block is compacted.  When this
occurs, softdep_change_directoryentry_offset() is called to relocate each
directory entry and adjust its matching diradd structure, if any, to match
the new location of the entry.  The bug is that while
softdep_change_directoryentry_offset() correctly adjusts the offsets of
the diradd structures on the pd_diraddhd[] lists (which are not yet ready
to be committed to disk), it fails to adjust the offsets of the diradd
structures on the pd_pendinghd list (which are ready to be committed to
disk).  This causes the dependency structures to be inconsistent with
the buf contents.  Now, if the compaction has moved a directory entry to
the same offset as one of the diradd structures on the pd_pendinghd list
*and* a syscall is done that tries to remove this directory entry before
this directory block has been written to disk (which would empty
pd_pendinghd), a sanity check in newdirrem() will call panic() when it
notices that the inode number in the entry that it is to be removed doesn't
match the inode number in the diradd structure with that offset of that
entry.

Reviewed by:	Kirk McKusick <mckusick@McKusick.COM>
Submitted by:	Don Lewis <Don.Lewis@tsc.tdk.com>
1998-10-03 19:17:11 +00:00
Robert Nordier a2a87ebc0b Missing newline in heap command display.
Noticed by: jkh
1998-10-03 18:27:50 +00:00
Robert Nordier 3948b979ba For system calls, reboot without prompting; for exceptions, display
message and await reset.
1998-10-03 18:05:12 +00:00
John Polstra d441b3e8c3 Two new C symbols were added to apm_setup.s but not put into
asnames.h.  That broke builds of ELF kernels.  *Whap*.
1998-10-03 17:23:25 +00:00
Jordan K. Hubbard 6335d18e9b Add dpt driver back to GENERIC and adjust a stale comment. 1998-10-03 17:09:00 +00:00
Bruce Evans 8f359bc68c Quick fix for not being able to sync all the buffers in boot() if
an ext2fs file system is mounted.  The soft update changes added
a check for B_DELWRI buffers.  This exposed the complete brokenness
of the previous quick fix for failing syncs (PR 3571, committed on
1997/08/04).  Use a new buffer flag B_DIRTY and don't abuse B_DELWRI.
B_DIRTY buffers are still written too late, as broken in the previous
fix.  This is fairly harmless, because B_DIRTY is only used for
bitmap buffers and fsck.ext2 can fix up the bitmaps perfectly.

Fixed a race in ULCK_BUF() (bremfree() was outside of the splbio()
section).
1998-10-03 16:19:28 +00:00
Alexander Langer fd5e555c48 Removed duplicate case.
Submitted by:	dfr
Blessed by:	luigi
1998-10-03 14:43:49 +00:00
Robert Nordier 9cd66506dd Map all BTX system pages readable at ring 3.
This resolves the firmware problem first raised in connection
with PR 8105, although unrelated.
1998-10-03 14:33:06 +00:00
Robert Nordier 0860fb8f8c bootinfo bi_vesa no longer exists. 1998-10-03 14:13:30 +00:00
Doug Rabson 780330ee00 Send a MOD_UNLOAD event before deleting the module. if the MOD_LOAD event
failed.
1998-10-03 11:05:45 +00:00
Doug Rabson 84bc104b8e Don't call DEVICE_DETACH directly, always go through the device_detach()
wrapper which checks to make sure the device isn't currently open.
1998-10-03 08:55:29 +00:00
John Polstra 7b4c881cef Fix a bug which caused the dynamic linker pathname in the PT_INTERP
program header entry to be ignored if a recognized brand was found.
1998-10-03 04:12:09 +00:00
Kenneth D. Merry 6326180fab Fix a printf format warning that shows up when CAMDEBUG is defined. 1998-10-02 21:20:21 +00:00
Kenneth D. Merry d05caa00c5 Add a new CAM debugging mode, CAM_DEBUG_CDB. This causes the kernel to
print out a one line description/dump of every SCSI CDB sent to a
particular debugging target or targets.

This is a good bit more useful than the other debugging modes, I think.

Change some things in LINT to note the availability of this new option.

Fix an erroneous argument to scsi_cdb_string() in scsi_all.c

Reviewed by:	gibbs
1998-10-02 21:00:58 +00:00
Mike Smith bf72f68088 Consolidate the bootinfo-loading code, greatly simplifying the _exec
functions.
1998-10-02 20:53:17 +00:00
Mike Smith 9d38269bae Fix an egregious precedence bug. 1998-10-02 20:52:26 +00:00
Nicolas Souchu ed7ce1536a abort imm init if can't disconnect from drive 1998-10-02 20:44:58 +00:00
Luigi Rizzo fe854067c7 Update the pcm driver to the most recent version. This should
add support for Vibra16X, OPTi925, and bring in several assorted
fixes to the code and documentation.
Also present here are apm hooks so that laptops can properly
reconfigure the hardware after suspend (tested on the Libretto50).
Reviewed by: jordan
1998-10-02 17:26:37 +00:00
Mike Smith 41e43bf627 Set $currdev according to our best guess at the BIOS device that the previous
bootstrap loaded us from.
1998-10-02 16:33:43 +00:00
Mike Smith 6b15efd961 aout_freebsd.c
Use bd_getdev() to work out a dev_t for the root device.
	Allow $rootdev to override $currdev as the root device.

biosdisk.c
	Save the slice table and disklabel when opening a disk.
	Add bd_getdev(), which attempts to return a dev_t corresponding
	to a given device.  Cases which it still doesn't get right:
	 - The inevitable da-when-wd-also-exists
	 - Disks with no slice table (the slice number is not set correctly)
	The first is difficult to get right, the second will be
	fixed in an upcoming commit.

comconsole.c
vidconsole.c
	getchar() should return an 8-bit value; some BIOSsen pack extra
	information in %eax.

libi386.h
	Remove some stale prototypes, add new ones.
1998-10-02 16:32:45 +00:00
Mike Smith 39de38225b Mark exit() as __attribute__((__noreturn__)) 1998-10-02 16:22:54 +00:00
Mike Smith f9ba80b0e7 boot.c
Increase the robustness of the "is it time to boot yet" test;
	if the time skipped the "when" time, we would miss it.
	Don't spin in an endless loop if we don't find the first possible
	kernel suggested.  When we run out, don't try to load an empty
	kernel name.

load_aout.c
	printf format warnings
1998-10-02 16:22:26 +00:00
Peter Wemm 2e06076f23 First shot at loading elf symbols. Things are a bit strange because
of the ..umm.. "wierd" way binutils lays out the file.  The section
headers are nearly at the end of the file and this is a problem when
loading from a .gz file which can't seek backwards (or has a limited
reverse seek, ~2K from memory).

This is intended to be compatable with the ddb/db_elf.c code and the
alpha/libalpha/elf_freebsd.c layout.  I've studied these (which are NetBSD
derived) but did it a bit differently.  Naturally the process is similar
since it's supposed to end up with the same result.
1998-10-02 08:04:56 +00:00
Kenneth D. Merry 696db22238 Modify the changer driver so it can handle (hopefully!) changers that need
block descriptors enabled on mode sense commands.

Basically, we try sending a mode sense with block descriptors disabled (the
previous default), and if it fails, we try sending the mode sense with
block descriptors enabled.  If that works, we note that in a runtime quirk
entry, so we don't bother disabling block descriptors again for the device.

This problem was first reported by Chris Jones <cjones@honors.montana.edu>
on one of the NetBSD lists, but I'd imagine that some FreeBSD users would
have run into it eventually as well, since our changer driver is derived
form the NetBSD changer driver.

Also, change some of the probe logic so that we do the right thing in the
case of a failure to attach.

Fix a memory leak in chgetparams().

Add a couple of inline helper functions to scsi_all.h to correctly return
the start of a mode page.

NetBSD PR:	kern/6214
Reviewed by:	gibbs
1998-10-02 05:25:49 +00:00
Kenneth D. Merry 9dfb44710e Patches from DES to create three new kernel config options to control
timeouts in the SA driver (timeouts for space, rewind and erase).  Folks
can lengthen the timeouts if their hardware is especially slow, or shorten
them if they want to be notified of errors a little sooner.

Also, get rid of two OD driver options.  The od driver has been made
obsolete by the da driver.

Reviewed by:	ken, gibbs
Submitted by:	Dag-Erling Coidan Smørgrav <des@FreeBSD.ORG>
1998-10-02 05:15:51 +00:00
Mike Smith 8fe644b289 Define KLD_MODULE if building a KLD module.
Forgot to mention that the previous commit was
Submitted by:	Doug Rabson <dfr@freebsd.org>
1998-10-02 05:08:09 +00:00
Mike Smith 90f60fc9bc Changes to support building of KLD modules. This includes the possibly
to be removed KMODDEPS define.
1998-10-02 04:51:10 +00:00
Warner Losh 27af0eb7b6 GC unused stuff. 1998-10-02 04:37:49 +00:00
Kazutaka YOKOTA 6ce70b4260 A size field returned by the VESA BIOS is already expressed in bytes.
Submitted by: sos
1998-10-02 03:42:19 +00:00
Justin T. Gibbs 7135060ce3 Remove a spurious, but benign statement.
Correct some panic and printf strings that referenced the 'bt' driver.
I should be more careful when I Cut 'n Paste.
1998-10-02 03:40:53 +00:00
Andrey A. Chernov 24c7337e25 Restore static of sc_flags.
Restore set_destructive_cursor prototype.
1998-10-01 21:04:52 +00:00
John Polstra a0fce82724 Fix a bug in which a page index was used where a byte offset was
expected.  This bug caused builds of Modula-3 to fail in mysterious
ways on SMP kernels.  More precisely, such builds failed on systems
with kern.fast_vfork equal to 0, the default and only supported
value for SMP kernels.

PR:		kern/7468
Submitted by:	tegge (Tor Egge)
1998-10-01 20:46:41 +00:00
Jonathan Lemon 582b2d100e Don't try to save FP state if npxproc is null.
Submitted by:	Tor Egge
1998-10-01 20:45:28 +00:00
Mike Smith d35326ae28 Remove lpt1 - we have userconfig if you have a weird port.
Remove mse0 - the Microsoft Bus Mouse is a dinosaur.  There are probably
              more Pintos on the road than these on peoples' desks.
1998-10-01 19:35:28 +00:00
Mike Smith 882ffc4bbd Remove the bi_vesa field, as vesa modeswitching is no longer performed
by the bootblocks.
1998-10-01 18:25:04 +00:00
Mike Smith c2316d3e9a Pass the BIOS unit number from which the kernel/loader was obtained in
the bootinfo struct so that it can be reused later.
1998-10-01 18:22:52 +00:00
Kazutaka YOKOTA 38e152d29d Fix typo.
PR: kern/8118
Submitted by: Sheldon Hearn
1998-10-01 11:48:38 +00:00
Kazutaka YOKOTA def802441f Yet another round of fixes for the VESA support code.
- Express various sizes in bytes, rather than Kbytes, in the video
  mode and adapter information structures.
- Fill 0 in the linear buffer size field if the linear frame buffer
  is not available.
- Remove SW_VESA_USER ioctl. It is still experimetal and was not meant
  to be released.
- Fix missing cast operator.
- Correctly handle pointers returned by the VESA BIOS. The pointers
  may point to the area either in the BIOS ROM or in the buffer supplied
  by the caller.
- Set the destructive cursor at the right moment.
1998-10-01 11:39:18 +00:00
Jordan K. Hubbard 4225585999 Override STRIP so installation doesn't try to strip the loader. 1998-10-01 09:57:09 +00:00
Søren Schmidt 6f83a5f331 Oops, forgot /* */ around Id string 1998-10-01 09:35:48 +00:00
Warner Losh 667b14c256 Misc cleanup and probe rework:
o Use the board id command to find out what kind of board
	  we're talking to.  If we're talking to a board that is has
	  an ID that is shared between boards supported by the aha
	  driver and the bt driver, then use the bt's geometry
	  register to weed out the bt cards.  Otherwise assume that we
	  support this card.
	o Remove bt esetup command sending to the card.  It seems to
	  wedge too many cards.
	o Revert to doing a soft reset after an invalid command.  This
	  change didn't fix anything, so I'm backing it out.  The
	  whole issue of card resetting needs to be revisisted at some
	  point so that we can do it properly on all hardware.
	o GC unused stuff in some places.
1998-10-01 04:53:55 +00:00
Peter Wemm 392dfcadb1 Make 'make install' do something that might be useful. 1998-09-30 22:37:47 +00:00
Peter Wemm f511533b56 Stop libi386.a from being installed.. 1998-09-30 22:36:45 +00:00
Søren Schmidt 2a4070eb7c Hauppauge Tech Support confirmed all Hauppauge 878 PAL/SECAM boards
will use PLL mode.  Added to card probe. Thanks to Ken and Fred.

Submitted by:   Roger Hardiman <roger@cs.strath.ac.uk>
1998-09-30 21:06:55 +00:00
Søren Schmidt dd32a6ad67 Hauppauge Tech Support confirmed all Hauppauge 878 PAL/SECAM boards
will use PLL mode.  Added to card probe. Thanks to Ken and Fred.

Submitted by:   Roger Hardiman <roger@cs.strath.ac.uk>
1998-09-30 20:58:09 +00:00
Søren Schmidt ff2c4726bc Changed tuner code to autodetect tuner i2c address.
Addresses were incorrectly hardcoded.

Submitted by:   Roger Hardiman <roger@cs.strath.ac.uk>
1998-09-30 20:43:25 +00:00
Søren Schmidt 4d075b334c Make devfs update the atime timestamp so that 'w' works when using
options DEVFS.
1998-09-30 20:33:46 +00:00
Peter Wemm cf6b812d33 Turn on i386-elf 1998-09-30 19:48:42 +00:00
Peter Wemm d1a50365db i386 ELF loader startup backend. On an ELF kernel booted with the 3-stage
bootblocks, the kernel shows up as the primary module:

[3:24am]~-100# kldstat
Id Refs Address  Size     Name
 1    1 0xf0100000 ff00000  /kernel
		   ^^^^ oops.. :-)

Based heavily on aout_freebsd.c.  Hmm.. There's so much in common that
these could probably be combined and just check the metadata to see which
format it is.
1998-09-30 19:48:09 +00:00
Peter Wemm e6001c6229 Save booted kernel name. Cosmetic cleanups. 1998-09-30 19:42:06 +00:00
Peter Wemm f9489e6a0e Fix typos.. The vector for "int 0x12" (get base mem) is not written in
hex as "0x1a". :-)
Fix a comment about the extended memory checks, that's int 0x15.
1998-09-30 19:41:07 +00:00
Peter Wemm efca1dc5ee ELF loader, part 1. It works with ELF kernels generated on the i386
so far, and should probably be able to be made to work for the alpha
without too much trouble once it's connected up and my assumptions tested.

I think (but have not tested) it will also load "old" ELF kernels that
were not linked with DYNAMIC headers.

The module glue is yet to come. (oh fun.. :-)

It does not explicitly load symbols [yet].  The _DYNAMIC data contains a
runtime symbol set that ddb can use via ddb/db_kld.c.  It'll be missing
some detail that stabs normally provides (eg: number of args to a function,
line numbers, etc).  On the other hand, those minimal symbols will always
be available even on a stripped kernel.

This is mostly stolen from load_aout.c with some ideas from
alpha/libalpha/elf_freebsd.c.
1998-09-30 19:38:26 +00:00
Peter Wemm 42355b3c0b s/out_loadmodule/aout_loadmodule/ in a printf diagnostic. 1998-09-30 19:26:23 +00:00
Peter Wemm 524d1bc175 Uncomment prototype for elf_loadmodule 1998-09-30 19:25:26 +00:00
Dag-Erling Smørgrav afc8ba89ef Document that we support the CS4236B. 1998-09-30 14:09:00 +00:00
Dag-Erling Smørgrav e401e55f33 Add PnP ID for Crystal Semiconductors CS4236B codecs (register-
compatible with CS4236, so no driver changes are required)

Reviewed by:	Luigi Rizzo <luigi@iet.unipi.it>
1998-09-30 14:06:25 +00:00
KATO Takenori b3c2b0173a Sync with sys/i386/i386/machdep.c revision 1.311. 1998-09-30 13:21:44 +00:00
Peter Wemm 6b7a14ce57 Make the ELF kernel build produce a dynamic executable (!). This enables
the in-kernel linker to access the _DYNAMIC data for doing loadable elf
modules.  The alpha kernel is already done this way, I've borrowed some of
the hacks from there.

This is primarily aimed at the 3-stage boot process which is intended to
be able to do pre-loading of kernel modules.

Note that the entry point isn't 0xf0100000 any more, it'll be a little
further on - but this value is stored in the headers.  I don't think this
will be a problem, but I'm sure somebody will tell me if it is. :-)

I'm not sure if btxboot is going to like this, it doesn't do proper ELF
header checking and assumes that there are exactly two program header
entries and that they are both PT_LOAD entries - a bad assumption.
1998-09-30 12:14:39 +00:00
Justin T. Gibbs 013a898f40 Remove SCSI support as the only driver in this kernel config, aic, is not
currently supported by CAM.
1998-09-30 03:48:23 +00:00
John Fieber f18bad6e73 Add several missing ioctl handlers. One needed by Sybase, the others
found while looking for the one.
1998-09-30 01:42:53 +00:00
Kirk McKusick df077352a7 Do not allow a mounted on directory to be rmdir'ed. This removal can
happen when an NFS exported filesystem tries to remove a locally
mounted on directory.
PR:		kern/7272
Submitted by:	Andre Albsmeier <andre.albsmeier@mchp.siemens.de>
1998-09-30 00:53:40 +00:00
Warner Losh 6a04333133 Perform a hard reset on cards when the command fails. This should help
those people that have cards that become wedged when a bogus command is
issued that are too wedged to have a soft reset help.
1998-09-30 00:10:44 +00:00
Kirk McKusick b5cf6d7984 In nfs_link(), check for a cross-device mount *before* looking
in the v_data field.
Obtained from: Charles Hannum, via Frank van der Linden <frank@wins.uva.nl>
1998-09-29 23:39:37 +00:00
Kirk McKusick d25ad74791 Missing vput when cross-device link error is detected in nfs_link. 1998-09-29 23:29:48 +00:00
Kirk McKusick b6b74f2f4e During truncation, have to notify the VM about the new size
of the NFS file *before* doing the nfs_vinvalbuf operation.
Otherwise some invalid data may show up in an mmap.
1998-09-29 23:28:32 +00:00
Kirk McKusick e68e908bda Frank sez: 'It fixes a problem with servers that return 0 values
for some of the fsinfo RPC fields. It is strictly speaking not
wrong to do this, as the spec says that "it is expected that a
server will make a best effort at supporting all the attributes",
but pretty unusual. You guessed it, it's NT servers that do it.'
Obtained from: Frank van der Linden <frank@wins.uva.nl>
1998-09-29 23:15:53 +00:00
Kirk McKusick 35800d700a Do not need (or want) to take a reference on an NFS file that
is being deleted due to an forcible unmount. The problem is
that vgone calls vclean() which then calls calls nfs_inactive()
with VXLOCK set on the vnode. Nfs_inactive() was calling vget()
to get a reference on the vnode, which in turn hung on VXLOCK.
Nfs_inactive() now checks v_usecount to make sure that the vnode
is not coming from vclean() before it does a vget().
1998-09-29 23:15:25 +00:00
Kirk McKusick 96438eb911 The code checks each fragment mark to see if it's valid; if the fragment
is less than NFS_MINPACKET or greater than NFS_MAXPACKET in size, it
barfs and, I think, drops the connection.

However, there's no guarantee that in a multi-fragment RPC, all the
fragments will be at least as large as NFS_MINPACKET.

In fact, with the version of "tclnfs" we have here, which supports NFS
over TCP, at least when built under SunOS 4.1.3 (i.e., with 4.1.3's
user-mode ONC RPC library), I can *repeatably* cause "tclnfs" to send a
request with more than one fragment, one of which is only 8 bytes long.
I just do a 3877-byte write to a file, at an offset of 0.

The check that "slp->ns_reclen" is greater than or equal to
NFS_MINPACKET serves no useful purpose - if the NFS server code can't
handle packets < NFS_MINPACKET bytes, it can't handle them over *any*
protocol, so the check has to be done above the RPC-over-TCP layer - and
should be removed.
Obtained from: Fix from Guy Harris, forwarded by Rick Macklem.
1998-09-29 22:33:05 +00:00
Kenneth D. Merry e5b118dd3d In the bootverbose case, print out error messages for all errors that will
not be retried again, even if the SF_NO_PRINT flag is set.

Reviewed by:	gibbs
1998-09-29 22:11:30 +00:00
Andrey A. Chernov 6b491db1bd vm86_datacall: always use workaround since temp. malloced buffer or stack
area can be passed (and mapped to page1!) as vesa.c does. Use contigmalloc
now to get proper alignment. Bump max buffer size to PAGE_SIZE
1998-09-29 22:06:33 +00:00
Kirk McKusick 1cda241131 Mark directory buffers that have no valid data with B_INVAL
so that they are not put in the cache.
1998-09-29 22:01:10 +00:00
Kirk McKusick 113b88d241 When adding data to a buffer, we need to clear the B_NEEDCOMMIT flag
which says that the data is on server but not committed.
1998-09-29 21:46:54 +00:00
Andrey A. Chernov cecc3abb9d Restore v1.3 - page align workaround moved to vm86_datacall now 1998-09-29 20:38:54 +00:00
Andrey A. Chernov 0e4c0f17f3 Move workaround about page aligned data buffer directly to vm86_datacall,
it is impossible to use this func otherwise, i.e. all vesa calls are
potentially broken. Max arg size limited to 1024 for now, bump it, if needed.
1998-09-29 20:36:31 +00:00
Robert V. Baron ecee3646ce Fixes for lkm:
1. use VFS_LKM vs ACTUALLY_LKM_NOT_KERNEL
2. don't pass -DCODA to lkm build
1998-09-29 20:19:45 +00:00
Jonathan Lemon 9379f795cd Don't erase curproc when making a vm86() call. The previous behavior
was a pessimization that broke schedcpu(). (It caused the process to
be remrq()'d).
Reviewed by:	Tor Egge
1998-09-29 18:01:18 +00:00
Andrzej Bialecki faa5f8d8da Make #define NO_SWAPPING a normal kernel config option.
Reviewed by:	jkh
1998-09-29 17:33:59 +00:00
Andrzej Bialecki c796cfa18a Make #define NO_SWAPPING a normal kernel config option.
Warn unsuspecting users against current DEVFS pitfalls.

Reviewed by:	jkh
1998-09-29 17:33:45 +00:00
Andrzej Bialecki dede34d355 Add sysctl 'machdep.msgbuf_clear'. Setting it to anything causes the
kernel message buffer to be cleared. It comes handy in situations when
the only logging facility you have is the msgbuf.

Reviewed by:	jkh
1998-09-29 11:20:16 +00:00
Bruce Evans 2e8bf20912 Fixed printf format errors. u_long is not necessarily suitable for casting
pointers to, and %d is not suitable for printing uint32_t's.
1998-09-29 09:18:08 +00:00
Bruce Evans 894e2bd49e FIxed printf format errors (an new one that is only detected on systems
with pointers smaller than u_longs, and 2 possibly-truncating casts in
the same printf).
1998-09-29 09:14:52 +00:00
Peter Wemm a7de32b2aa The bootinfo struct was getting clobbered or not passed through correctly.
Presumably VTOP doesn't work for static objects.
The easiest way to get it working was to reserve some space after the
environment strings and copy the bootinfo struct there.
Also, set RB_BOOTINFO, it's needed.

I got the code to load and run an unmolested kernel OK for the first time
with this system a few minutes ago - at last!.  I did have to stop it
looking at the floppy though as BTX was trapping a mode 14 fault when
it look for /boot/boot.conf when no disk was in the drive. (I'm booting
from a scsi disk (bios disk 0x80)).

Now to teach it about ELF and modules :-)
1998-09-29 09:11:49 +00:00
Bruce Evans 0c71101cb7 Don't pretend to support ix86's with 16-bit ints by using longs just
to ensure 32-bit variables.  Doing so broke ix86's with 64-bit longs.
1998-09-29 09:06:00 +00:00
Bruce Evans 9702cd0422 Fixed initialization of new inodes. ext2fs doesn't clear inodes when
they are deleted, so inodes must be cleared when they are reused, but
we didn't clear the indirect blocks.  This caused serious filesystem
corruption.
1998-09-29 08:07:32 +00:00
Warner Losh 8d74c4aa15 Several minor cleanups, inspired by bug reports and the old driver:
o Unlock mailbox interface if we have a new card.  Before only newer cards
  (B or newer) that had the BIOS disabled would probe.  Cards with the
  BIOS enabled would fail to probe in the mailbox initialization code.
o Increase the number of ccbs and sg to 17 from 16 to support 64k I/O
  on a non page aligned boundary.  Ideas for dynamic determination of this
  value welcomed, as more of these are better.
o Took credit for this driver, even though I derived it from Justin's code.
  Made sure that Justin's copyright from bt.c was preserved, along with
  his name, since the error handling code is nearly identical.  Add my
  own, identical copyright.  Point people to aha_isa.c.

Cards tested: 1542C and 1542CF.  The B and CP might work now as well,
but logistical problems precluded me from testing them this evening
(if you have jumper settings for the B card, please send me private
mail).
1998-09-29 06:50:21 +00:00
Andrey A. Chernov 81e30e2649 cosmetique - remove unneded static in previous commit 1998-09-29 04:11:35 +00:00
Andrey A. Chernov bb2691312e workaround painful vm86_datacall requirement that segment+offset
must be withing the same PAGE frame
1998-09-29 04:09:39 +00:00
Andrey A. Chernov d4b2d02fc1 Fix destructive cursor shape after text mode switch.
This is only for standard modes, I don't check vesa modes yet.
1998-09-29 02:00:57 +00:00
Robert V. Baron 6e3a3f387c John Dyson approved of this solution; make vnode_pager_input_old set m->valid 1998-09-28 23:58:10 +00:00
Andrey A. Chernov 83eda2d885 fix handling more than one cards
Submitted by: "Sergey V.Dorokhov" <svd@kbtelecom.nalnet.ru>
1998-09-28 23:27:57 +00:00
Peter Wemm 38e1ef0f4a Only bcopy the correct amount of data from the buffer in case it is ever
in an overrun situation.
1998-09-28 22:04:54 +00:00