Commit Graph

14110 Commits

Author SHA1 Message Date
John Polstra
0aca4b60dc On the i386, load the ELF dynamic linker where an mmap(0, ...) would
put it, just like on the Alpha.  It was wrong to load it at the
fixed address 0x08000000.  That should only be done if the dynamic
linker is an executable (not a shared object) with a specific load
address encoded in the object file itself.

This fixes the recent breakage in the Linux emulator.
1999-02-19 01:30:43 +00:00
Nick Hibma
fe5ba84529 Moved [uo]hci_pci.c from /sys/dev/pci to /sys/pci after Soren
threatened to send Bruce. These files are no longer shared
   with NetBSD anyway.

   Requires a config and make depend.
1999-02-18 21:42:19 +00:00
Kenneth D. Merry
043653d4ff Set the devstat priority for ccd devices to DEVSTAT_PRIORITY_CCD
instead of DEVSTAT_PRIORITY_OTHER.
1999-02-18 21:11:53 +00:00
Nick Hibma
e99cd85d69 Moved busreset in uhci_init up to avoid clearing of FLBASE in Via 83572
(PR1)
1999-02-18 21:03:10 +00:00
Matthew Dillon
327f4e8394 Limit number of simultanious asynchronous swap pager I/Os that can
be in progress at any given moment.

    Add two swap tuneables to sysctl:

	vm.swap_async_max: 4
	vm.swap_cluster_max: 16

    Recommended values are a cluster size of 8 or 16 pages.  async_max is
    about right for 1-4 swap devices.  Reduce to 2 if swap is eating too much
    bandwidth, or even 1 if swap is both eating too much bandwidth and sitting
    on a slow network (10BaseT).

    The defaults work well across a broad range of configurations and should
    normally be left alone.
1999-02-18 19:57:33 +00:00
Nick Hibma
47fd282734 Undo Nicolas' changes (1.91->1.92, added USB controller in pcisupport.c).
Please don't.
1999-02-18 18:48:01 +00:00
Kenneth D. Merry
588b47e5d2 Fix sync rate and transfer rate printouts in xpt_announce_periph().
Sync rates like 4.032MHz were getting printed as 4.32MHz.

Also, add a quirk entry for the 18G Quantum Atlas III.  Like most other
recent Quantum drives, it bogusly reports queue full.  Thanks to Andre
Albsmeier <andre.albsmeier@mchp.siemens.de> for the Atlas III inquiry
information.

Reviewed by:	gibbs
1999-02-18 18:08:39 +00:00
Doug Rabson
ef5253d801 Move the declaration of the vfs.nfs sysctl node outside an ifdef so that
it builds if NFS_NOSERVER is defined.

Spotted by: Bruce Evans <bde@zeta.org.au>
1999-02-18 09:19:41 +00:00
Garrett Wollman
29c6a10b58 Add a little bit more identifying information to the myriad PCI network
drivers.
1999-02-18 01:13:40 +00:00
Luoqi Chen
75ffaf5939 Initialize procsig0.ps_refcnt to 1 (instead of 2), this would silence
complaints about ps_refcnt greater than two when we try to fork() a
kthread from proc0 with RFSIGSHARE flag set.

Noticed by:	Tor Egge <tegge@fast.no>
Reviewed by:	Richard Seaman, Jr. <dick@tar.com>
1999-02-17 21:03:14 +00:00
Kirk McKusick
133ff2619a fix double LIST_REMOVE; other cosmetic changes to match version 9.32.
Obtained from: Jeffrey Hsu <hsu@FreeBSD.ORG>
1999-02-17 20:01:20 +00:00
Bruce Evans
1f2e401efc Fixed bitrot in NFS_ACDEBUG option. 1999-02-17 13:59:29 +00:00
Matthew Dillon
b33fb764f1 Submitted by: Luoqi Chen <luoqi@watermarkgroup.com>
Unlock vnode before messing with map to avoid deadlock between map and
    vnode ( e.g. with exec_map and underlying program binary vnode ).  Solves
    a deadlock that most often occurs during a large -j# buildworld reported
    by three people.
1999-02-17 09:08:29 +00:00
Matt Jacob
8f5381965d add now required queue.h include 1999-02-16 20:34:56 +00:00
KATO Takenori
b6478cfe85 - Cosmetic change.
- Enable bs driver.
- Add ax and xl drivers.

Submitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-02-16 11:15:21 +00:00
KATO Takenori
ef2ec056c3 Merge with sys/i386/conf/options.i386 revision 1.102.
Submitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-02-16 11:12:42 +00:00
KATO Takenori
7c9eb5b166 Sync with sys/i386/i386/machdep.c revision 1.326. 1999-02-16 11:07:06 +00:00
Doug Rabson
ce02431ffa * Change sysctl from using linker_set to construct its tree using SLISTs.
This makes it possible to change the sysctl tree at runtime.

* Change KLD to find and register any sysctl nodes contained in the loaded
  file and to unregister them when the file is unloaded.

Reviewed by: Archie Cobbs <archie@whistle.com>,
	Peter Wemm <peter@netplex.com.au> (well they looked at it anyway)
1999-02-16 10:49:55 +00:00
Nick Hibma
fe7627280b Applied patch from MAEKAWA Masahide <bishop@rr.iij4u.or.jp>. (PR2)
Seems to solve a problem with a mouse not responding to movements in the
X direction. Problem description is still rather vague and solution is
not exactly clear. Problem might be a compiler optimisation.
1999-02-15 21:41:43 +00:00
Nick Hibma
08c3a58944 Added vendor Compaq/CMDTACH and USB067[03] 1999-02-15 21:39:49 +00:00
Nick Hibma
48f79d0e5c Added more verbose debugging output to uhci_run 1999-02-15 20:43:17 +00:00
Tor Egge
3d8befc22d Enable load of i386 ELF kernels with larger KVA range (e.g. starting at
0xe0100000u or 0xc0100000u instead of the usual 0xf0100000u).
1999-02-15 17:36:58 +00:00
Roger Hardiman
02819e7033 Corrected ioctl numbers conflict.
Thanks to Vsevolod Lobko <seva@alex-ua.com> for spotting this.
P:
1999-02-15 11:04:36 +00:00
Bill Fenner
13ca3c01ec Clean up some .Os macro uses: quotes are not needed, multiple arguments
don't really work if the first one isn't "FreeBSD", and "FreeBSD-Experimental"
isn't an OS name.
1999-02-15 08:34:14 +00:00
Matthew Dillon
efcae3d355 Minor reorganization of vm_page_alloc(). No functional changes have
been made but the code has been reorganized and documented to make
    it more readable, reduce the size of the code, and optimize the branch
    path caching capabilities that most modern processors have.
1999-02-15 06:52:14 +00:00
Matthew Dillon
1ce137be82 Fix a bug in the new madvise() code that would possibly (improperly)
free swap space out from under a busy page.  This is not legal because
    the swap may be reallocated and I/O issued while I/O is still in
    progress on the same swap page from the madvise()'d object.  This bug
    could only occur under extreme paging conditions but might not cause
    an error until much later.  As a side-benefit, madvise() is now even
    smaller.
1999-02-15 02:03:40 +00:00
Nicolas Souchu
5174ad8b76 More appropriate fix to the id_irq read during probe 1999-02-14 22:02:47 +00:00
Matthew Dillon
ef528b292a Only needed to cast array index from char to unsigned char, did not
also have to cast it to int.  (int)(unsigned char)char_exp ->
    (unsigned char)char_exp.
1999-02-14 20:58:21 +00:00
Guido van Rooij
05440e6882 On second thought: do previous fux in pcic.c better.
Now we just untimeout the call to inserted() if it exists.
1999-02-14 20:41:01 +00:00
Jordan K. Hubbard
7d0d5e18d4 MF3: add SYSVMSG 1999-02-14 20:28:38 +00:00
Guido van Rooij
a1f7e1b4c5 Somehow, it is possible to get a pcicintr() when in the resume process.
This will trigger inserted()) to be called twice which confuses pccardd.
Add code to not process pcicitr())'s when in the middle of a resume
process. The real insertion of cards and the emulated one in the suspend/resume
code really do not mix up.
1999-02-14 20:16:15 +00:00
Nicolas Souchu
a1142115dd The way the interrupt id was calculated was wrong and the lpt
driver was thinking irq was enabled although it wasn't.
This case was particular to a no-interrupt static configuration.

Reported by: "Norman C. Rice" <nrice@emu.sourcee.com>
1999-02-14 17:09:59 +00:00
Nicolas Souchu
17b5923dbb Move away from lpt.h data structure definition that only lpt.c relies on.
Remove if_plip.c dependency to lpt.h.
1999-02-14 16:19:16 +00:00
Nicolas Souchu
4012f363f2 Return approriate errors to userland. 1999-02-14 14:36:45 +00:00
Dag-Erling Smørgrav
ad5ebf3fba Ignore errors from chflags. This makes it possible to make installworld
with DESTDIR set to an NFS-mounted file system.
1999-02-14 13:56:15 +00:00
Nicolas Souchu
3ab971c14f Fix interrupt handling with DMA. Bit nFault was tested in the control reg.
instead of the status reg. and check ECP mode before considering nFault.
1999-02-14 12:03:35 +00:00
Nicolas Souchu
fdf94d1afe Rename nlpt to lpt.
Remove from ppi.c the old depreciated module stuff.
Print info when if_plip can't use interrupts.
1999-02-14 12:00:00 +00:00
Nicolas Souchu
67c13fce36 Handle correctly iicbus request/release mechanism. Add iicbus allocation
to the general purpose i/o iic(4) driver.
1999-02-13 18:01:55 +00:00
Nicolas Souchu
ba81c311c1 Fix smbus allocation and add the alsmb (see alpm(4)) driver. 1999-02-13 17:57:19 +00:00
Nicolas Souchu
c5ea635c67 Add alpm, Acer Aladdin-IV/V/Pro2 Power Management Unit. See alpm(4). 1999-02-13 17:54:32 +00:00
Nicolas Souchu
5ca2e94010 Add alpm.c, Aladdin Power Management SMBus support for the SMBus framework.
Update pcisupport.c with NALPM and Aladdin USB detection printf.
1999-02-13 17:51:46 +00:00
Nicolas Souchu
24ca0d705d Add pci/alpm.c, Aladdin SMBus driver (alpm(4)). 1999-02-13 17:49:57 +00:00
Bruce Evans
2088de1b49 Don't pass PSL_NT to vm86 signal handlers. Some vm86/real mode
programs, including msdos, set PSL_NT in probes for old cpu types,
although PSL_NT doesn't do anything useful in vm86 or real mode.
PSL_NT is even less useful in the signal handlers.  It just causes
T_TSSFLT faults on return from syscalls made by the handlers.
These faults are fixed up lazily so that Xsyscall() doesn't have
to be slowed down to prevent them.  The fault handler recently
started complaining about these faults occurring "with interrupts
disabled".  It should not have, but the complaints pointed to this
bug.

PR:		9211
1999-02-13 17:45:15 +00:00
Jun Kuriyama
a766716a9a Add "beep" ioctl. (#10 is reserved for PIOCSVIR)
Obtained from:	PAO3
Reviewed by:	-current list
1999-02-13 11:32:00 +00:00
Matthew Dillon
2a2ecc3027 General additional cleanup of VOP API for NFS ops - mainly NFS ignoring
the API for freeing up cnp's.  This cleanup should not effect nominal
    operation one way or the other since NFS VOPs just happen to be called
    with flags that match what it actually does to the NAMEI components it
    gets.  Still, if an NFS error occured, there was probably some memory
    leakage of NAMEI components with certain NFS VOP ops.
1999-02-13 09:47:30 +00:00
Matthew Dillon
89a01116cf Remove XXX comment in regarsd to why NFS doesn't use VOP_ABORT(). NFS
is being fixed now.
1999-02-13 08:38:28 +00:00
Matthew Dillon
5e9d4f1303 PR: kern/9970
Remove incorrect vput() in nfs_link()
1999-02-13 08:01:59 +00:00
Matthew Dillon
41c67e12bd Minor optimization to madvise() MADV_FREE to make page as freeable as
possible without actually unmapping it from the process.

    As of now, I declare madvise() on OBJT_DEFAULT/OBJT_SWAP objects to be
    'working and complete'.
1999-02-12 20:42:19 +00:00
Julian Elischer
a728078455 Improved reporting of autodetected speed and duplex.
Now should be able to report speed for cards using NatSemi PHY.
(if you have one please let me know if it works as I
only have the Intel version)

Reviewed by: David Greenman <dg@root.com>
1999-02-12 17:56:23 +00:00
Bruce Evans
1e66367c66 Fixed -Wcast-qual warnings. 1999-02-12 12:44:19 +00:00
Bruce Evans
ad6d29b0ac Fixed fatal type mismatches in the aout case. Const poisoning in
db_sym.h had not reached here.
1999-02-12 12:15:07 +00:00
Brian Somers
a360b6bd0e Correct i/o addresses for dgb & dgm
Submitted for dgm by: Andre Oppermann <opi@opi.flirtbox.ch>
1999-02-12 12:15:02 +00:00
Matthew Dillon
2aaeadf8d9 Fix non-fatal bug in vm_map_insert() which improperly cleared
OBJ_ONEMAPPING in the case where an object is extended by an
    additional vm_map_entry must be allocated.

    In vm_object_madvise(), remove calll to vm_page_cache() in MADV_FREE
    case in order to avoid a page fault on page reuse.  However, we still
    mark the page as clean and destroy any swap backing store.

Submitted by:	Alan Cox <alc@cs.rice.edu>
1999-02-12 09:51:43 +00:00
KATO Takenori
28791bce44 Sync with sys/i386/i386/machdep.c revision 1.325. 1999-02-12 09:15:33 +00:00
Bill Paul
021f8bcb89 Do not issue RX and TX reset commands in xl_stop() and xl_init(). On the
3c905B, the RX and TX reset commands also reset the cyclone chip's internal
PHY, which causes it to restart its autonegotiation session. This takes a
second or two to complete, which makes the interface seem to stop responding
for a few seconds every time you do something that reinitializes it.

Issuing the RX and TX resets on the older 3c905 boomerang adapters doesn't
cause any delay because the boomerang chip requires an external PHY.

This should fix the problem where people doing network installs via 3c905B
cards experience a delay after the interface is first initialized, among
other things.
1999-02-11 23:59:29 +00:00
Julian Elischer
da15ec8bf7 Define more registers and fix incorrect (but unused) register bit definitions. 1999-02-11 23:41:21 +00:00
Julian Elischer
f1bf08c22e Define more registers in the PHY unit and use them to report back
the result of the media auto negotiation.

Reviewed by: David Greenman <dg@freebsd.org>
1999-02-11 21:47:10 +00:00
Roger Hardiman
f02529f9b2 Added ioctl REMOTE_GETKEY for Hauppauge Infra-Red Remote Control.
Submitted by Roger Hardiman.

Added ioctl TVTUNER_GETCHANSET to discover which regions the bktr driver
supports. Submitted by Vsevolod Lobko <seva@alex-ua.com>

Added BT848_GPIO_SET_EN,BT848_GPIO_SET_DATA (and GETs) to allow user land
control of the GPIO pins. This allows a Radio module on the GPIO port
to be controlled. Submitted by Vsevolod Lobko <seva@alex-ua.com>
The kernel option BKTR_GPIO_ACCESS must be used to enable the GPIO ioctls.

Submitted by:	Roger Hardiman and Vsevolod Lobko <seva@alex-ua.com>
1999-02-11 10:22:30 +00:00
Roger Hardiman
29122ece3e Added new ioctls for Hauppage Infra-Red Remote Control support,
Obtaining the supported channel sets and Controlling the GPIO port.

Submitted by:	Roger Hardiman and Vsevolod Lobko <seva@alex-ua.com>
1999-02-11 10:18:04 +00:00
Mike Smith
e4a5d947a3 Zero p->retval[1] when starting a process. This value ends up in %edx
when the process starts, and having it nonzero causes statically-linked
Linux binaries to fail.

PR:		i386/10015
Submitted by:	Marcel Moolenaar <marcel@scc.nl>
1999-02-11 07:53:28 +00:00
Justin T. Gibbs
957fea92f0 Set the ultra enable bits in the adaptor's scratch ram area only after
we finish modifying our in kernel version during seeprom configuration.
1999-02-11 07:12:16 +00:00
Justin T. Gibbs
ef3c268fde Make the ahc_eisa file also optional on 'eisa'. 1999-02-11 07:11:00 +00:00
Justin T. Gibbs
03c4f58aa3 Ensure that the ACK from the last information transfer phase has been
de-asserted by the initiator before changing phase or releasing the bus.
Corrects a SCSI specification violation in target mode.
1999-02-11 07:10:20 +00:00
Justin T. Gibbs
11eaafb1f1 Completely set information in the transaction description before performing
a selwakeup for it.  Cosmetic.
1999-02-11 07:08:58 +00:00
Justin T. Gibbs
922b8593e6 Correct a race condition where a target mode SCB dma could occur
before we finished setting the pending phase information.

Use the ALL_TARGETS_MASK #define instead of 0xffff for the default
ultraenb mask.
1999-02-11 07:07:27 +00:00
Greg Lehey
9e0aa8e9b8 Correct some indentation
Implicitly-desired-by: bde

update_plex_state:  Handle empty RAID-5 plexes correctly
1999-02-11 06:44:46 +00:00
Greg Lehey
e8b3affb8e build_write_request: correct logic for handling writes to volumes with
failed plexes.

allocrqg: Remove dead code
1999-02-11 06:44:12 +00:00
Greg Lehey
8093cf90f1 check_drive: Make sure that we don't open two different drives with
the same name.  Silently return EEXIST if this happens.

vinum_scandisk: Collect drive numbers, not pointers, to avoid problems
of relocated drives.

Tripped-over-by:  Bernd Walter <ticso@cicely.de>
1999-02-11 06:43:15 +00:00
Greg Lehey
cc902735df In some cases, it's possible that I/O errors will cause the daemon to
time out on an operation.  Under these circumstances, vinum(8) will
automatically start another daemon.  Add a pid for the daemon, so that
an overtaken daemon will discover that it's no longer in favour, and
will crawl into a corner and die.
1999-02-11 06:42:39 +00:00
Joseph Koshy
04e83575bc Fix typos 1999-02-11 06:07:27 +00:00
KATO Takenori
3d7ac74e60 Fixed COPYRIGHT_PC98 (good bye 1998).
Noticed by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-02-10 13:09:09 +00:00
KATO Takenori
cdbef5dacd Sync with sys/i386/i386/userconfig.c revision 1.130. 1999-02-10 13:02:38 +00:00
Dag-Erling Smørgrav
807ef708be Remove the lpt driver, as discussed on -hackers. 1999-02-10 02:41:24 +00:00
Dag-Erling Smørgrav
d26aaee1ae Remove lpt from the device list.
Add the rdp driver (forgotten by Joerg?)
1999-02-10 02:37:24 +00:00
Dag-Erling Smørgrav
de7462ba59 Use ppbus instead of the lpt driver. Throw in a (commented-out) vpo entry
for good measure.
1999-02-10 02:18:31 +00:00
Jordan K. Hubbard
0f1eaab82c Save pnp changes into a sysctl variable for kget, just as is done
with the isa changes.
1999-02-10 00:26:47 +00:00
Kenneth D. Merry
2a888f938e Add a prioritization field to the devstat_add_entry() call so that
peripheral drivers can determine where in the devstat(9) list they are
inserted.

This requires recompilation of libdevstat, systat, vmstat, rpc.rstatd, and
any ports that depend on the devstat code, since the size of the devstat
structure has changed.  The devstat version number has been incremented as
well to reflect the change.

This sorts devices in the devstat list in "more interesting" to "less
interesting" order.  So, for instance, da devices are now more important
than floppy drives, and so will appear before floppy drives in the default
output from systat, iostat, vmstat, etc.

The order of devices is, for now, kept in a central table in devicestat.h.
If individual drivers were able to make a meaningful decision on what
priority they should be at attach time, we could consider splitting the
priority information out into the various drivers.  For now, though, they
have no way of knowing that, so it's easier to put them in an easy to find
table.

Also, move the checkversion() call in vmstat(8) to a more logical place.

Thanks to Bruce and David O'Brien for suggestions, for reviewing this, and
for putting up with the long time it has taken me to commit it.  Bruce did
object somewhat to the central priority table (he would rather the
priorities be distributed in each driver), so his objection is duly noted
here.

Reviewed by:	bde, obrien
1999-02-10 00:04:13 +00:00
Garrett Wollman
cc766e041e After wading in the cesspool of ip_input for an hour, I have managed to
convince myself that nothing will break if we permit IP input while
interface addresses are unconfigured.  (At worst, they will hit some
ULP's PCB scan and fail if nobody is listening.)  So, remove the restriction
that addresses must be configured before packets can be input.  Assume
that any unicast packet we receive while unconfigured is potentially ours.
1999-02-09 16:55:46 +00:00
Jordan K. Hubbard
73899d2e48 Remove dictHashSummary internal function; it used doubles.
Submitted by:		Daniel C. Sobral <dcs@newsguy.com>
1999-02-09 16:04:19 +00:00
Guido van Rooij
879ab261b0 Add missing poatch for ibcs2_ipc.h as well.
Sorry this took so long but there was a routing problem earlier today.
1999-02-09 15:53:21 +00:00
Matthew Dillon
b4f8f16e56 Addendum to vm_map coalesce optimization. Also, this was backed-out
because there was a concensus on current in regards to leaving bss r+w+x
    instead of r+w.  This is in order to maintain reasonable compatibility
    with existing JIT compilers (e.g. kaffe) and possibly other programs.
1999-02-09 01:39:29 +00:00
Matt Jacob
d951bbca48 Cleanup. Set all PCI parameters of importance. Set a define that will
allow us via config options prefer mem space to I/O space.
1999-02-09 01:12:52 +00:00
Matt Jacob
10f20e4038 Roll internal release tag. Roll core version minor. Fix broken DPARM_DEFAULT
define. Add a new config flag param (ISP_CFG_NONVRAM) whose intent it is
to cause NVRAM to be ignored. Add ISPASYNC_LOOP_DOWN and ISPASYNC_LOOP_UP
isp_async enums.

Amazingly enough, I did all my scsi_sa work recently without realizing
that I had a broken isp card whose (unchangeable- it's an old old old
isp1020) NVRAM has sync mode enabled, but disconnect/reconnect disabled-
the ISP_CFG_NONVRAM is definitely warranted when you want to bloody well
ignore the NVRAM and set something sensible.
1999-02-09 01:11:35 +00:00
Matt Jacob
68ce4ba588 clean up some NVRAM defines 1999-02-09 01:09:35 +00:00
Matt Jacob
cd5622a63b Add in defines that disable (temp) fast posting. 1999-02-09 01:09:03 +00:00
Matt Jacob
2b05293160 Allow fibre channel 'bus resets' to go through. Handle Loop Down/Loop Up
events by freezing/unfreezing the simq- nice to have such control at this
level! Do bus resets in attach layer (non-CAM defined code).
1999-02-09 01:08:38 +00:00
Matt Jacob
3c688670f5 Roll internal release tag. Print out if we're in a 64 bit PCI slot.
Use fast memory timing NVRAM parameter. Clean up and fix establishment
of default target parameters. Don't use NVRAM if are flagged as not to
do so (I had a busted NVRAM setup which I couldn't edit that enabled SYNC
mode but disabled disconnect/reconnect and wide!!). Fix delays after
resets. BUS resets not done in isp_init anymore- relegated to OS
specific outer layers. Fix a buglet where you can get in a loop for
a NULL xs in the completion list in isp_intr. Add in some defines that
can disable fast posting. Add in code for Loop Up/Loop Down events that
call into the outer layers as to what to do.
1999-02-09 01:07:06 +00:00
Matt Jacob
289b93c044 roll internal release tag 1999-02-09 01:05:42 +00:00
Matt Jacob
017b0edcda add isp specific config options and explanations 1999-02-09 01:03:17 +00:00
Matt Jacob
3fc2ba4d77 add isp host adapter specific options 1999-02-09 01:02:37 +00:00
Matthew Dillon
2ad1a3f729 Revamp vm_object_[q]collapse(). Despite the complexity of this patch,
no major operational changes were made.  The three core object->memq loops
    were moved into a single inline procedure and various operational
    characteristics of the collapse function were documented.
1999-02-08 19:00:15 +00:00
Dag-Erling Smørgrav
8f84257ed7 Generate correct DLT_NULL headers before passing packets to bpf.
Do not modify m_len before passing mbuf chains to bpf.
Don't forget to pass packets to bpf when running in Crynwr mode (LINK0).

Partially based on a patch by Bill Fenner <fenner@freebsd.org>.

PR:             bin/7241
1999-02-08 14:12:38 +00:00
Dag-Erling Smørgrav
9539cd4d92 Bring in the simplified port probe from src/sys/i386/isa/lpt.c 1999-02-08 13:55:43 +00:00
Roger Hardiman
08d8a5b841 Added detection for bt848a chips 1999-02-08 11:55:30 +00:00
Roger Hardiman
a3869d3479 Added check to bktr_mmap() from OpenBSD driver.
Improved MSP34xx reset for bt848 Hauppauge boards.
Added detection for Bt848a.
Vsevolod Lobko<seva@sevasoft.alex-ua.com> added more XUSSR channels.
Submitted by:	parts from Vsevolod Lobko<seva@sevasoft.alex-ua.com>
Obtained from:  parts from OpenBSD
1999-02-08 11:53:05 +00:00
KATO Takenori
d4df79101c Sync with sys/boot/i386/loader/version revision 1.3. 1999-02-08 09:59:38 +00:00
Julian Elischer
a0c091ad1d remove leftover garbage line. 1999-02-08 05:53:39 +00:00
Julian Elischer
b0935ca284 Fix for PR 9309.
Divert was not feeding clean data to ifa_ifwithaddr() so it was
giving bad results.
Submitted by: kseel <kseel@utcorp.com>, Ruslan Ermilov <ru@ucb.crimea.ua>
1999-02-08 05:48:46 +00:00
Matthew Dillon
d031cff181 General cleanup. Remove #if 0's and remove useless register qualifiers. 1999-02-08 05:15:54 +00:00
Daniel C. Sobral
b9305c6c70 Bumb up loader's version.
Reviewed by:	Michael Smith <msmith@freebsd.org>
1999-02-08 04:14:31 +00:00
Matthew Dillon
dd2f9956e2 Adjust idle zero-page fill hysteresis based on tests. Use 2/3 and 4/5
zero-fill levels.

    Adjust comment for ozfod in vmmeter.h - this counter represents
    non-optimal ( on the fly ) zero fills, not prefills.
1999-02-08 02:42:13 +00:00
Matthew Dillon
d718be7be7 Add hysteresis to alpha version of vm_page_zero_idle(). 1999-02-08 00:47:32 +00:00
Matthew Dillon
faa273d5c2 Rip out PQ_ZERO queue. PQ_ZERO functionality is now combined in with
PQ_FREE.  There is little operational difference other then the kernel
    being a few kilobytes smaller and the code being more readable.

    * vm_page_select_free() has been *greatly* simplified.
    * The PQ_ZERO page queue and supporting structures have been removed
    * vm_page_zero_idle() revamped (see below)

    PG_ZERO setting and clearing has been migrated from vm_page_alloc()
    to vm_page_free[_zero]() and will eventually be guarenteed to remain
    tracked throughout a page's life ( if it isn't already ).

    When a page is freed, PG_ZERO pages are appended to the appropriate
    tailq in the PQ_FREE queue while non-PG_ZERO pages are prepended.
    When locating a new free page, PG_ZERO selection operates from within
    vm_page_list_find() ( get page from end of queue instead of beginning
    of queue ) and then only occurs in the nominal critical path case.  If
    the nominal case misses, both normal and zero-page allocation devolves
    into the same _vm_page_list_find() select code without any specific
    zero-page optimizations.

    Additionally, vm_page_zero_idle() has been revamped.  Hysteresis has been
    added and zero-page tracking adjusted to conform with the other changes.
    Currently hysteresis is set at 1/3 (lo) and 1/2 (hi) the number of free
    pages.  We may wish to increase both parameters as time permits.  The
    hysteresis is designed to avoid silly zeroing in borderline allocation/free
    situations.
1999-02-08 00:37:36 +00:00
Matthew Dillon
5313b05fe0 Backed out vm_map coalesce optimization - it resulted in 22% more page
faults for reasons unknown ( under investigation ).
    /usr/bin/time -l make in /usr/src/bin went from 67000 faults to 90000
    faults.
1999-02-08 00:27:56 +00:00
John Polstra
47633640aa Change the load address of the ELF dynamic linker from "2L*MAXDSIZ"
to an architecture-specific value defined in <machine/elf.h>.  This
solves problems on large-memory systems that have a high value for
MAXDSIZ.

The load address is controlled by a new macro ELF_RTLD_ADDR(vmspace).
On the i386 it is hard-wired to 0x08000000, which is the standard
SVR4 location for the dynamic linker.

On the Alpha, the dynamic linker is loaded MAXDSIZ bytes beyond
the start of the program's data segment.  This is the same place
a userland mmap(0, ...) call would put it, so it ends up just below
all the shared libraries.  The rationale behind the calculation is
that it allows room for the data segment to grow to its maximum
possible size.

These changes have been tested on the i386 for several months
without problems.  They have been tested on the Alpha as well,
though not for nearly as long.  I would like to merge the changes
into 3.1 within a week if no problems have surfaced as a result of
them.
1999-02-07 23:49:56 +00:00
Matthew Dillon
9fdfe602fc Remove MAP_ENTRY_IS_A_MAP 'share' maps. These maps were once used to
attempt to optimize forks but were essentially given-up on due to
    problems and replaced with an explicit dup of the vm_map_entry structure.
    Prior to the removal, they were entirely unused.
1999-02-07 21:48:23 +00:00
Matthew Dillon
a0e7b3e5ce Remove L1 cache coloring optimization ( leave L2 cache coloring opt ).
Rewrite vm_page_list_find() and vm_page_select_free() - make inline out
    of nominal case.
1999-02-07 20:45:15 +00:00
Joerg Wunsch
a467384b1c Reorder the pcvt(4) options to the appropriate section, so i can close
docs/1855. :)

PR:		docs/1855
Submitted by:	Jeroen Ruigrok/Asmodai <asmodai@wxs.nl>
1999-02-07 20:33:05 +00:00
Guido van Rooij
e9e3bfdf42 1) Fix our view of how ibcs2_semid_ds looks. There is no padding int there
(SVR4 does have it so that;s probably the cause of this bug)
2) Add a wrapper function for translation between ibcs2_ipc_perm and
ipc_perm as I think we screwed up when defining the ipc_perm struct and
mixed up 'normal' and creator [ug]id's
3) Fix IBCS2_IPC_STAT semctl. The FreeBSD version needs a union semun
whereas the IBCS2 version gives a struct ibcs2_semid_ds.

Apparently this is all fixed in the SVR4 compatibility code.
PR:		7729
1999-02-07 19:35:40 +00:00
Daniel C. Sobral
0538bafc65 Remove strange-looking quotes. This part of the code is #if'ed out,
and the variable doesn't even exist (though it is referenced elsewhere).
Just make sure it produces error messages when Mike get back to it.

PR:		kern/9934
Submitted by:	Adrian Filipi-Martin
1999-02-07 12:12:29 +00:00
Matthew Dillon
9b09fe24a4 When shadowing objects, adjust the page coloring of the shadowing object
such that pages in the combined/shadowed object are consistantly
    colored.

Submitted by:	"John S. Dyson" <dyson@iquest.net>
1999-02-07 08:44:53 +00:00
Matt Jacob
db909d8274 Hmm- I must be blind. There *was* already an appropriate typedef still
left there. The typedef that was inserted negated the correct typedef.
This may have just been cvs automerge foo. Sorry.
1999-02-06 17:58:06 +00:00
Matt Jacob
76744f75ab I don't know what happened here- I submitted a *working* patch for
alpha to John Polstra yesterday and it was checked in. Then there
was a bunch of CVS activity, and it ended up with the *broken*
prototype being reinserted. All I see in the history is 'style nits'
as a comment, and I certainly agree with the latter of those two words.
1999-02-06 16:39:16 +00:00
Roger Hardiman
9864d54a58 Changed to use IICBUS_REPEATED_START
Submitted by:	Changed to use IICBUS_REPEATED_START
1999-02-06 10:56:09 +00:00
John Hay
23b29a7c5e Make it possible to use lo0 as an internal IPX network. This is usefull
for mars_nwe server and nwfs.
PR:		9871
Submitted by:	Boris Popov <bp@butya.kz>
1999-02-06 10:48:11 +00:00
John Hay
d468daa7d2 Don't use the pointer returned by MALLOC before checking if it is NULL.
PR:		9871 (part of it)
Submitted by:	Boris Popov <bp@butya.kz>
1999-02-06 10:45:17 +00:00
KATO Takenori
8ffb208fa0 Sync with syscons for i386.
Submitted by:	Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1999-02-06 09:30:19 +00:00
Bruce Evans
33982c726f Added underscores to some names in svr4_locore.s so that it compiles
with -aout.  Added translation back to elf names in asnames.h as
usual.  The elf names were inconsistent in the aout case even
internally because a macro adds an underscore to just one of them.

Removed commented out code for a previous life of `svr4_esigcode'.
Didn't add an underscore to `svr4_esigcode' since it is correct for
aout although wrong for elf, like most internal names in assembler
files.  These names should be in a different namespace so that gprof
can ignore them.

Fixed some disorder in asnames.h.
1999-02-06 08:41:06 +00:00
Matthew Dillon
61da17a62c Flush delayed-write data out prior to issuing a rename rpc. This appears
to fix the problem w/ NFSV3 whereby a make installworld would get into
    high-network-bandwidth situations continuously trying to retry nfs writes
    that fail with a 'stale file handle' error.
1999-02-06 07:48:56 +00:00
Bruce Evans
b36c1562e1 Honor ${LDFLAGS} for building svr4_genassym. This is part of fixing
world breakage (mainly for cross-world cases).  The world Makefile
attempts to build tools static so that nonexistent or wrong shared
libraries and interpreters don't get used.  This is broken anyway
since the world Makefile doesn't know about svr4_genassym.

Force building svr4_genassym static.  This is part of "fixing"
aout-to-elf-build breakage.  aout-to-elf-build abuses NOTOOLS to
avoid rebuilding all the aout tools.  This saves time and avoids
some complications.  However, it breaks all the internal tools --
they get linked to target libraries which might not work.  Cases
where the host can run the target's static libraries are "fixed"
by encrufting all Makefiles that build internal tools to build the
tools static.

Don't add .depend to CLEANFILES -- it just breaks the separation of
`make cleandepend' from `make clean'.

Removed some superflous explicit dependencies.
1999-02-06 07:48:24 +00:00
Matthew Dillon
2b0d37a4f8 Add hysteresis to the 'swap_pager_getswapspace; failed' console message.
Also widen the hysteresis levels a little ( these really should be
    dynamically configured ).
1999-02-06 07:22:21 +00:00
Peter Wemm
811d024014 Back out rev 1.89. The #include is necessary for the #if that tests
the value that config(8) provides when intpm is configured.  It seems
that somebody forgot to rerun config at the time and commented this out
instead.
1999-02-06 02:28:52 +00:00
Bill Fenner
51b7b33769 Use snd_nxt, not rcv_nxt, when calculating the ISS during TIME_WAIT.
This was missed in the 4.4-Lite2 merge.

Noticed by:	Mohan Parthasarathy <Mohan.Parthasarathy@eng.Sun.COM> and
		jayanth@loc201.tandem.com (vijayaraghavan_jayanth)
		on the tcp-impl mailing list.
1999-02-06 00:47:45 +00:00
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
Semen Ustimenko
52e93a35a3 Added vnode tag for NTFS.
Reviewed by:	David O'Brien <obrien@NUXI.com>
1999-02-03 04:12:36 +00:00
Semen Ustimenko
16ee760296 First version.
Reviewed by:	David O'Brien <obrien@NUXI.com>
1999-02-03 04:07:38 +00:00
Semen Ustimenko
012c9fb3bb First version.
Reviewed by:	David O'Brien
1999-02-03 04:01:27 +00:00
Matthew Dillon
4112823fc7 Submitted by: Alan Cox
The vm_map_insert()/vm_object_coalesce() optimization has been extended
    to include OBJT_SWAP objects as well as OBJT_DEFAULT objects.  This is
    possible because it costs nothing to extend an OBJT_SWAP object with
    the new swapper.  We can't do this with the old swapper.  The old swapper
    used a linear array that would have had to have been reallocated, costing
    time as well as a potential low-memory deadlock.
1999-02-03 01:57:17 +00:00
Doug Rabson
f422bef257 Use the bsd.kern.mk from the source tree rather than the installed one
if possible.
1999-02-02 18:34:23 +00:00
KATO Takenori
f19a38101a Added braces around initializsers and in if-statements.
Submitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-02-02 17:26:03 +00:00
KATO Takenori
524d2ab047 Sync with sys/dev/syscons/syscons.c revision 1.294. 1999-02-02 17:21:33 +00:00
Bruce Evans
bb25f0dd23 Check for signals while reading /dev/urandom. Reading 10MB from
/dev/urandom takes about 38 seconds on a P5/133.  It is useful
to be able to kill such reads almost immediately.  Processes
doing such reads are now scheduled so their denial of service
is no worse than that of processes looping in user mode.
1999-02-02 14:14:05 +00:00
Bruce Evans
8b6ca0359b Switch context before doing some i/o operations that might block if
context would be switched on return to user mode.  This fixes some
denial of service problems.
1999-02-02 12:11:01 +00:00
Bruce Evans
79a2501238 Added a hopefully-machine-independent macro for determining if a
reschedule is pending.
1999-02-02 09:08:23 +00:00
Bill Fenner
8f70ac3e02 Fix the port of the NetBSD 19990120-accept fix. I misread a piece of
code when examining their fix, which caused my code (in rev 1.52) to:
- panic("soaccept: !NOFDREF")
- fatal trap 12, with tracebacks going thru soclose and soaccept
1999-02-02 07:23:28 +00:00
Matthew Dillon
f7f62e7b56 Get rid of IFF_BROADCAST from default IFF_ slip options. This accidently
snuck in during the big -Wall commit and wasn't supposed to be in there.
1999-02-02 00:28:29 +00:00
Bill Paul
e8354668bd Remember to initialize ifp->if_snd.ifq_maxlen. 1999-02-01 21:25:52 +00:00
Mark Newton
240c6baa11 Nuke some prototypes that really shouldn't be here. 1999-02-01 21:22:30 +00:00
Mark Newton
9cbac9cee4 Moved prototypes for soo_{read,write,close} into socketvar.h where they
belong.

Suggested by: bde
1999-02-01 21:16:31 +00:00
Poul-Henning Kamp
e0ea20bcca Print a message if the driver didn't initialize ifq_maxlen.
Drivers should be updated if they get flagged by this message.

(The reason this is important is because we do not have a way
to catch this mistake for interfaces added after ifinit() runs.)
1999-02-01 20:03:27 +00:00
Mark Newton
4a735ee8b0 Acquiesce to proc.h for declarations of M_ZOMBIE, M_SUBPROC (and reorder
includes so proc.h knows the right type for 'em).

Suggested by: bde
1999-02-01 13:26:13 +00:00
Mark Newton
c4ca2670b8 Fix bogus line breaks in declarations for soo_read() and soo_write()
Suggested by: Pedant Central :-)
1999-02-01 13:24:39 +00:00
Mark Newton
895259716e Declare M_ZOMBIE so the svr4 emulator doesn't need to.
Suggested by: bde
1999-02-01 13:23:18 +00:00
Matthew Dillon
b406c0f55c This patch eliminates a pointless test from appearing twice
in vm_map_simplify_entry.  Basically, once you've verified that
    the objects in the adjacent vm_map_entry's are the same, either
    NULL or the same vm_object, there's no point in checking that the
    objects have the same behavior.

Obtained from:  Alan Cox <alc@cs.rice.edu>
1999-02-01 08:49:30 +00:00
Matthew Dillon
06fd697d15 The alternate B_PAGING path for vnstrategy() is used for VM faults
as well as swap I/O now.  This path failed to properly set bp->b_resid
    on I/O completion.
1999-02-01 08:36:02 +00:00
Jordan K. Hubbard
ae84df99c4 Whoops! Forgot to include Mr. Sobray's more command in the last set
of commits.

Submitted by:	Daniel C. Sobral <dcs@newsguy.com>
1999-02-01 06:08:21 +00:00
Greg Lehey
5b3c6cedf5 Move CFLAGS to God's Own Position
Remove white space between CFLAGS and +=
Remove unneeded options

Implied-by: bde
1999-02-01 00:52:51 +00:00
Søren Schmidt
7538974af9 Bzero the devstat structure before use.
Pointed out by:	<Kenneth Merry> ken@plutotech.com
1999-01-31 23:08:47 +00:00
Peter Dufault
e419eecba9 Move the "fetch serial data" delay so that it is an inter-bit delay.
Increase the overall length of the delay by 10.

Without this a 3C509 card on my MediaGX crash box can't be reliably
read.  With this it is solid.

I've left a delay multiplier in instead of just changing the base
delay because I'm surprised I had to increase it so much and expect
there may be another problem.
1999-01-31 22:41:51 +00:00
Søren Schmidt
a257733c19 Add device stats for the acd device. 1999-01-31 21:51:03 +00:00
KATO Takenori
a4af40881f Sync with sys/i386/i386/userconfig.c revision 1.128. 1999-01-31 17:44:06 +00:00
Nick Hibma
aa11c7f9d1 Added UHCI_LEGSUP to uhcireg.h 1999-01-31 16:22:35 +00:00
Julian Elischer
287457c2e7 Submitted by: Alan Cox <alc@cs.rice.edu>
Checked by: "Richard Seaman, Jr." <dick@tar.com>
Fix the following problem:
As the code stands now, growing any stack, and not just the process's
main stack, modifies vm->vm_ssize.  This is inconsistent with the code
earlier in the same procedure.
1999-01-31 14:09:25 +00:00
Kazutaka YOKOTA
d7e4346624 - Don't print unnecessary CLI command prompt (and faked "quit" command)
if RB_CONFIG is not set.
- Print a short, introductory banner for CLI before the first command
  prompt, not after.
1999-01-31 13:08:25 +00:00
Bruce Evans
95c391a468 Don't comment out dead code; remove it. 1999-01-31 11:54:29 +00:00
Nicolas Souchu
c9ab07382c Fix compile warnings about missing braces around static initialization of unions. 1999-01-31 11:52:04 +00:00
Bruce Evans
6acb4914fb Fixed English in previous commit. 1999-01-31 10:05:59 +00:00
Bruce Evans
4c253324ab Fixed smashed tabs and inconstent comment style in previous commit. 1999-01-31 09:40:14 +00:00
Julian Elischer
4c8e8c05fd Slight cleanups. There were 2 ways of getting the arpcom from the ifp.
Both equally bogus. Make it a macro so that we can pretend it's not
bogus and maybe make it less so some time in the future.
1999-01-31 08:17:16 +00:00
Mark Newton
ba198b1c45 Added comments about non-staticization so it doesn't get un-done next
time someone goes on a staticization binge.

Suggested by: eivind
1999-01-31 03:15:13 +00:00
KATO Takenori
4c51e923e0 Use offset to _pc98_system_parameter instead of immediate value which
assumes KERNBASE=0x100000.
1999-01-31 02:04:43 +00:00
Paul Richards
a461710f83 New driver flags to support IFF_ALLMULTI handling. 1999-01-31 00:56:32 +00:00
Paul Richards
5619e92064 Add IFF_MULTICAST when setting flags in lnc_init(). 1999-01-31 00:44:37 +00:00
Paul Richards
5448a2e522 Fix and enable multicast support. 1999-01-31 00:39:20 +00:00
Mike Smith
e25810a699 Remove unused "kern.shutdown_timeout" sysctl node. 1999-01-30 19:36:02 +00:00
Mike Smith
5c40906f11 An error in the last commit; the changes were submitted by, not reviewed by,
"D. Rock" <rock@cs.uni-sb.de>
1999-01-30 19:29:10 +00:00
Mike Smith
db82a982a7 Add a new sysctl node kern.shutdown, off which shutdown-related things
can be hung.

Add a tunable delay at the beginning of the SHUTDOWN_FINAL at_shutdown
queue, allowing time to settle before we launch into the list of things
that are expected to turn the system off.

Fix a bug in at_shutdown_pri() where the second insertion always put
the item in second position in the queue.

Reviewed by:	"D. Rock" <rock@cs.uni-sb.de>
1999-01-30 19:28:30 +00:00
KATO Takenori
1463f029a5 Moved pc98_system_parameter from .text to .data to make ELF kernel
work.
1999-01-30 15:38:48 +00:00
Nicolas Souchu
20240fa3ad Distinguish EPP address/data register. Add EPP address register access to ppi.
Change microseq offsets. Previously, offsets of the program counter where
added to the index of the current microinstruction. Make them rely on the
index of the next executed microinstruction.

Suggested by: Luigi Rizzo <luigi@labinfo.iet.unipi.it>
1999-01-30 15:35:39 +00:00
Poul-Henning Kamp
dd84acd074 Put a comment here about using suser() to determine super-user-ness.
Using suser() means that the p_acflag will (can) be set, to show that
a process used super-powers during execution.  It also makes it easier
to restrict roots we don't trust later on.

Reviewed by:	bde
1999-01-30 12:28:49 +00:00
Poul-Henning Kamp
4e48a6bfe0 Use suser() to determine super-user-ness.
Collapse some duplicated checks.

Reviewed by:	bde
1999-01-30 12:27:00 +00:00
Poul-Henning Kamp
904efa5a75 Use suser() to determine super-user-ness.
Don't pretend we can mount RW.

Reviewed by:	bde
1999-01-30 12:26:22 +00:00
Poul-Henning Kamp
57c90d6fcd Use suser() to determine super-user-ness, don't examine cr_uid directly. 1999-01-30 12:21:49 +00:00
Poul-Henning Kamp
4e2d2aa1cd Use suser() to check for super user rather than examining cr_uid directly.
Use TTYDEF_SPEED rather than 9600 a couple of places.

Reviewed by:	bde, with a few grumbles.
1999-01-30 12:17:38 +00:00
Mark Newton
871f5df0ef Oops - Ripped out a bit of debugging code which will stop certain bits
of networking from working for people without DEC Tulip ethernet cards.
1999-01-30 09:42:55 +00:00
Mark Newton
f7be5389dd Nuked the "hello, world!" program from this directory (it has
been teleported to share/examples/svr4).
1999-01-30 08:44:59 +00:00
Matt Jacob
cbf57b472d Implement and use Fast Posting for both parallel && fibre. Redo a bit of
the startup code. Implement a call to outer framework function so that
asynchronous events can be handled (e.g., speed negotiation, target mode).

Roll internal release tags.
1999-01-30 07:29:00 +00:00
Matt Jacob
495bfaf206 Grrr.. Do the *correct* and *usable* 1.31 firmware. You have to power
cycle to get rid of the old 1.31 firmware. *@!$&^@&$!&^&^!!!!!

But anyway comment it out and use new SBus 7.55 firmware. We get fast posting
with this as well as 32 luns and target mode support.

(not that this is used yet in FreeBSD, but it's ready for FreeBSD-sparc
whenever it happens....)
1999-01-30 07:22:30 +00:00
Matt Jacob
73d5e7854f roll internal release tag 1999-01-30 07:20:50 +00:00
Matt Jacob
1d74fa4ca5 roll internal release tag 1999-01-30 07:08:55 +00:00
Mark Newton
e5969755f5 Added a "README" file containing text taken from the message I sent
to -current explaining how to use this sucker.
1999-01-30 06:49:01 +00:00
Mark Newton
7f84fa455a Activate svr4 module 1999-01-30 06:31:51 +00:00
Mark Newton
d1721fe1cd Add streams pseudo-device 1999-01-30 06:31:11 +00:00
Mark Newton
f22dd58acc Emulator KLD for SysVR4 executables grabbed from NetBSD.
See http://www.freebsd.org/~newton/freebsd-svr4 for limitations,
capabilities, history and TO-DO list.
1999-01-30 06:29:48 +00:00
Mark Newton
bd56b99ac3 New pseudo-device to provide for a way of obtaining a socket by open()ing
something in /dev.

Obtained from: Christos Zoulas (NetBSD)
1999-01-30 06:28:29 +00:00
Mark Newton
888ac52b62 New pseudo-device to provide for a way of obtaining a socket by open()ing
something in /dev.
Obtained from: Christos Zoulas, with FreeBSD modifications
1999-01-30 06:27:59 +00:00
Mark Newton
f8b03d857e Changed struct socket to include a new field (at the end, so as not
to break existing software) acting as a pointer to emulator-specific
state data that some emulators may (or may not) need to maintain about
a socket.

Used by the svr4 module as a place for maintaining STREAMS emulation state.

Discussed with: Mike Smith, Garrett Wollman back in Sept 98
1999-01-30 06:26:35 +00:00
Mark Newton
69a6f20bc8 Unstaticized routines which are needed by the svr4 KLD and the streams
garbage needed to support SysVR4 networking.
1999-01-30 06:25:00 +00:00
Greg Lehey
112d8fd2d7 Add MAINTAINER 1999-01-30 01:45:44 +00:00
Matthew Dillon
bc81493155 More const fixes for -Wall, -Wcast-qual 1999-01-29 23:18:50 +00:00
Matthew Dillon
820ca326e1 *_execsw static structures cannot be const due to the way they interact
with EXEC_SET, DECLARE_MODULE, and module_register.  Specifically,
    module_register.  We may eventually be able to make these const, but
    not now.
1999-01-29 22:59:43 +00:00
Bruce Evans
ae4d334421 Fixed parenthesization botch in previous commit. Async update of inodes
was broken.
1999-01-29 15:36:05 +00:00
Bruce Evans
d12895f90b Removed a bogus cast to v_caddr_t. This is part of terminating
v_caddr_t with extreme prejudice.  Here the bogons were originally
the same as for c_caddr_t (half-baked K&R support), but rev.1.95
changed one wrong cast and one harmless cast to 2 wrong casts,
and rev.1.96 only fixed the originally wrong cast.
1999-01-29 11:31:45 +00:00
Bruce Evans
9a6c0bd6c9 Fixed comment and whitespace lossage in recent commits. The -W flag
is not implied by -Wall as claimed by gcc.1.  Adding it causes a
measly 7193 new warnings for LINT, mostly for "unused parameter" and
"comparison between signed and unsigned".
1999-01-29 10:57:18 +00:00
KATO Takenori
fe5871fb09 Sync with sys/i386/i386/machdep.c revision 1.323. 1999-01-29 10:43:09 +00:00
Bruce Evans
cacd1f6aa9 Cast to `const char *' instead of to c_caddr_t. This is part of
terminating c_caddr_t with extreme prejudice.  Here we depended
on the "opaque" type c_caddr_t being precisely `const char *'
to do unportable pointer arithmetic.
1999-01-29 09:04:27 +00:00
Matthew Dillon
3cfc69e6c2 More -Wall / -Wcast-qual cleanup. Also, EXEC_SET can't use
C_DECLARE_MODULE due to the linker_file_sysinit() function
    making modifications to the data.
1999-01-29 08:36:45 +00:00
Bruce Evans
9e26dd2a54 Removed bogus casts to c_caddr_t. This is part of terminating
c_caddr_t with extreme prejudice.  Here the original casts to
caddr_t were to support K&R compilers (or missing prototypes),
but the relevant source files require an ANSI compiler.
1999-01-29 08:29:05 +00:00
Matthew Dillon
12cb7f73a6 Commit a solution for the SYSINIT vs C_SYSINIT conundrum. The
problem and solution is outlined in the comments, but basically
    we needed a way to allow the SYSINIT mechanism to handle const void *
    arguments and function pointers as well as non-const arguments and
    function pointers while still maintaining the compiler's ability to
    issue warnings if you try to use a bad combination.
1999-01-29 08:12:49 +00:00
Bruce Evans
425c50cf51 Removed a bogus cast to c_caddr_t. This is part of terminating
c_caddr_t with extreme prejudice.  Here the point of the original
cast to caddr_t was to break the warning about the const mismatch
between write(2)'s `const void *buf' and `struct uio's `char
*iov_base' (previous bitrot gave a gratuitous dependency on caddr_t
being char *).  Compiling with -Wcast-qual made the cast a full
no-op.

This change has no effect on the warning for discarding `const'
on assignment to iov_base.  The warning should not be fixed by
splitting `struct iovec' into a non-const version for read()
and a const version for write(), since correct const poisoning
would affect all pointers to i/o addresses.  Const'ness should
probably be forgotten by not declaring it in syscalls.master.
1999-01-29 08:10:35 +00:00
Matthew Dillon
f01a9dd520 cleanup warnings by propogating const char pointers properly. 1999-01-29 08:09:32 +00:00