3500 Commits

Author SHA1 Message Date
peter
0e9d5904c5 This implements enough of the BSDI extensions to the net-2 ogetkerninfo()
syscall to allow applications linked against their libc's uname() to
work.  Netscape 1.1N being a prime example, which prints:
"uname() failed. cant tell what system we're running on".
This change is a little ugly, but that's mainly because of the "interesting"
semantics of the BSDI extension.
Since ogetkerninfo() is only enabled by COMPAT_43, Netscape will only
be affected on kernels with that option (eg: "GENERIC")
Reviewed by:	davidg
1995-07-09 02:49:30 +00:00
ats
6ea869c942 Correct a typo in a comment. 1995-07-08 22:09:11 +00:00
joerg
e9baa60cfb Several constants have been missing in the SysV IPC header files that
are recommended by the literature.

Fixes PR# misc/575: constants in sys/sem.h...

Submitted by:	daveho@infocom.com (Dave Hovemeyer)
1995-07-08 16:36:30 +00:00
joerg
fd179c3a95 PR #kern/600: PPP does not pay attention to IPTOS_LOWDELAY
Kernel PPP doesn't pay attention to IPTOS_LOWDELAY, but uses
        a table of port numbers, which isn't a generic method.  The following
        patch fixes this (the table is still used, but in addition
        PPP queues the packet in fastq if IPTOS_LOWDELAY is set.

Obtained from:	Tatu Ylonen <ylo@cs.hut.fi>
Submitted by:	Heikki Suonsivu <hsu@clinet.fi>
1995-07-08 16:34:55 +00:00
dg
a5338d3518 Improve negative usecount diagnostic a little. 1995-07-08 04:10:32 +00:00
dg
ea344a6b3f Added missing splx() in DIAGNOSTIC code.
Suggested by enami@sys.ptg.sony.co.jp.
1995-07-08 04:03:12 +00:00
dg
0c5108c021 The generated VCALL always uses the first vp which in the case of /link/
might not be handled by the same FS as the directory (e.g. special device
files)...so it must be special-cased. This bug is seen when doing
"ln /dev/console /dev/foo" or equivilent and first appeared after I fixed
the argument order of VOP_LINK.  YUCK! There really needs to be a way of
specifying what vp to use in the VCALL; doing this could fix the strategy
and bwrite special-cases, too.
1995-07-07 13:41:28 +00:00
se
e8134f91a6 Put back second case of CC handler in NCR script. 1995-07-07 12:30:39 +00:00
dfr
2671254e23 Use a consistent blocksize for sizing bufs to avoid panicing the bio system. 1995-07-07 11:01:31 +00:00
dg
f1a09f1734 Worked around a bug with if.c setting the interface up even when we don't
want it to.
1995-07-07 01:13:49 +00:00
dg
72be2e09b9 Modified joerg's last change to only set the interface "up" when setting
the address if the device is a SLIP device (i.e. "attached").
1995-07-06 11:55:18 +00:00
dg
21036bccfd Fixed an object allocation race condition that was causing a "object
deallocated too many times" panic when using NFS.

Reviewed by:	John Dyson
1995-07-06 11:48:48 +00:00
bde
3c221d9da7 Multiplex the soft tty interrupt some more to support the cy driver.
This should be configured better, perhaps by providing a software
interrupt and mask bit to go with every hardware interrupt.
1995-07-05 14:35:34 +00:00
bde
c2bda5b590 Fix error logging:
- get the timeout countdown right
- report everything before turning timeouts off.
1995-07-05 14:30:07 +00:00
bde
5cca7ebf45 Rewrite:
- use pseudo-dma
- provide the same features and interface as sio
- support multiple boards
- fix bugs.

Some compile-time configuration constants are set to support higher
speeds and Cyclom-16Y's at a 30% relative cost in efficiency.
Cyclom-16Y support is untested.
1995-07-05 12:15:52 +00:00
dg
5f993810e3 Killed "maxmem" declaration. We don't have that variable in FreeBSD. 1995-07-05 12:04:51 +00:00
dg
60db1a16bc Protected entire epioctl routine with splimp(). In this case, it is better
form to do this than it is relying on individual subroutines (the logic
in epioctl is itself very minimal). Ideally, unnecessary splimp()'s should
now be removed if they exist; I'll leave this for a later date (a complete
code review of the driver needs to be done). Fixes a bug I noticed that
would show up when ifconfig'ing the interface down.
1995-07-05 07:21:34 +00:00
gibbs
dde2724ff9 Add PCI Id for the 3940 controller. 1995-07-04 21:21:33 +00:00
gibbs
1909eb5f65 Dan Eischen's serial eeprom code. 1995-07-04 21:16:12 +00:00
gibbs
f932227387 First pass cleanup of this driver. This pass does not include the sequencer
optimizations I have been working on yet, but does bring in some bug fixes
and performance improvments that were easy to regression test:

Setup the data fifo threshold and bus off timing correctly for 27/284x cards.
Users of these adapters with fast periferals (greater than 5MB/s) will notice
a big performance difference. (Sometimes as large as going from 3.7->8.3MB/s).

Fix handling of the active target flags.  Some of the outbs where missing
the base offset in the abort code.  The abort code still needs lots of work.

Support 3940 controllers, but only with 16 SCBs for now.  Eventually I'll
add support for all 255, but I need to find a tester for the code first since
we have to enable the cards external SRAM to do this.

Add Dan Eischen's serial eeprom reading facilities.  This allows the 2940
adapters to pull additional information left over from SCSI-Select right out
out of the configuration seeprom.

If the BIOS is disabled on 274x controllers, reset all target parameters
to there defaults since you can't rely on what is stored in scratch ram.

Report motherboard controllers as such.

Stick the first SG address and count into the SCB data and count areas for
all transfers in preparation of a later sequencer optimization.

Keep track of which targets can are allowed to have the disconnection
priveledge since this will be handled by the kernel driver in the future.

If a target issues a message reject in response to a tagged message,
disable tagged queuing for that target.  Some seagates say they can do
tagged queuing, but lie, and its a shame to have to disable tagged queuing
on all devices just because you have one that can't cope.
1995-07-04 21:14:45 +00:00
gibbs
8fbb147508 Add entry for i386/scsi/93cx6.c, the file that handles serial eeprom
routines for the aic7xxx driver.  If and when other drivers start
to access similar serial eeproms, this file should probably be moved.
1995-07-04 21:00:53 +00:00
gibbs
0917dc17df Change SCB_LIST_NULL to 0xff from 0x10 to allow for 255 commands. This
is needed for 3940 support.

Have tagged commands look to see if a target is "busy" with a non tagged
command before executing.  This prevents overlapped tagged and non tagged
commands which can happen since request sense commands are not tagged.
1995-07-04 20:58:57 +00:00
dg
711bd7d109 Added some spaces for KNF. Moved some zero-initialized pointers into the
kernel's .bss.
1995-07-04 05:46:13 +00:00
dg
5d30bb533f This is the end result of about a dozen passes through this code to fix
incorrect indents, a variety of poor coding practices such as comparing
pointers to constants ('0'), poor code structuring, etc, etc. This brings
the code up to the minimum standards for inclusion in FreeBSD.
1995-07-04 05:39:03 +00:00
dg
f131661e5a Define TRUE and FALSE. 1995-07-04 05:29:30 +00:00
dg
c200b4b97b 1) Removed bogus #include
2) Rewrote "bad_packet" code to be less buggy and more readable.
3) Removed a pile of goto's; the code is now somewhat less reminiscent
   of a certain Italian pasta.
4) Changed all boolean returns of "0" and "1" to FALSE/TRUE.
1995-07-04 03:35:20 +00:00
joerg
d295fcd072 Slightly modify my previous change to return EINVAL instead of
EFAULT.

Submitted by:	Peter Wemm
1995-07-02 16:45:07 +00:00
joerg
b3c0c683f3 Revision 1.21 of if_sl.c broke the traditional behaviour that
assigning an address to an interface automatically marks this
interface IFF_UP.  The fix corrects this (and closes PR sys/577).
This is consistent with the way ethernet interfaces are being handled.
1995-07-02 09:01:02 +00:00
joerg
579762e798 I saw a very low-key commit message on the netbsd mailing lists and
figured out what the problem was..  Anyway, I rate it as "highly
serious".

Submitted by:	peter@haywire.DIALix.COM (Peter Wemm)
1995-07-01 19:09:40 +00:00
se
9d272074aa The PCI config mechanism 1 test failed for the Intel Aries.
Make it less strict ...

Submitted by:	NIIMI Satoshi <sa2c@and.or.jp>
1995-06-30 16:11:42 +00:00
wollman
35b757bd67 Keep track of the number of samples through the srtt filter so that we
know better when to cache values in the route, rather than relying on a
heuristic involving sequence numbers that broke when tcp_sendspace
was increased to 16k.
1995-06-29 18:11:24 +00:00
dg
d948c9cb91 Removed "GATEWAY" consideration when calculating number of mbuf clusters.
It now always uses the value that was used for the GATEWAY case.
1995-06-29 08:21:32 +00:00
dg
3d799ae7f8 Killed "TIMEZONE" and "DST" options. They have been forced to 0 by config
for more than a year now. Moved the declaration of 'tz' into kern_time.c.
1995-06-29 07:07:00 +00:00
ache
6b90340edb Fight with hanging modems continued:
return EIO after t_timeout expired instead infinite looping in "siotx"
in comparam, consuming CPU time.
1995-06-28 17:58:14 +00:00
dfr
2faa2338ab Use the correct cred for nfs_commit operations. 1995-06-28 17:33:39 +00:00
se
be356b2ee6 Changes to support some CDROM drives and the Quantum Grand-Prix
series of hard disk drives, which don't accept any SCSI message
within an REQUEST SENSE command (i.e. even not an IDENTIFY to set
the LUN).
This patch obviates the need for QUIRK_NOMSG and thus all of the
device_tab[] entries in the NCR driver.
1995-06-28 16:40:58 +00:00
se
c772748789 Change message "not supported" to "no driver assigned", because
people tend to assume their devices won't work if they see this
message, though it may indicate that those devices just don't
need any PCI driver (e.g. devices that emulate an ISA card, or
that have been initialised by the BIOS and need no further care).
1995-06-28 16:32:54 +00:00
se
2b44d2ccf2 Give more detailed information about the type of bridge devices
found when probing the PCI bus.
1995-06-28 16:02:05 +00:00
se
728b42a4c5 Failure of the consistency checks for BIOS assigned mappings of busses
connected via PCI to PCI bridges is considered non fatal for now.
1995-06-28 15:59:04 +00:00
se
09eec57f6a PCI configuration mechanism now determined by a method, that doesn't
fail on new hardware (Compaq Prolinea and Compaq Prosignea), and that
doesn't erroneously identify old mech. 2 chip sets as using mech. 1.
(See section 3.6.4.1.1 of the PCI bus specs rev. 2.0)
1995-06-28 15:54:57 +00:00
gpalmer
f3e714fb0e Add a missing `goto' statement so that this compiles yet again. 1995-06-28 13:22:36 +00:00
dg
c6d1e93313 Removed extra semicolon. 1995-06-28 12:32:47 +00:00
dg
2ed1f1c039 Don't include vm_pageout.h. 1995-06-28 12:31:47 +00:00
dg
3c7c1dd62f 1) Converted v_vmdata to v_object.
2) Removed unnecessary vm_object_lookup()/pager_cache(object, TRUE) pairs
   after vnode_pager_alloc() calls - the object is already guaranteed to be
   persistent.
3) Removed some gratuitous casts.
1995-06-28 12:01:13 +00:00
se
2a67a27d9b Corrections and additions to the PCI chip set configurations log.
Submitted by:	"Danny J. Zerkel" <dzerkel@feephi.phofarm.com>
1995-06-28 11:28:43 +00:00
dg
5d0d9f974b Fixed VOP_LINK argument order botch. 1995-06-28 07:06:55 +00:00
dg
3a6fb45237 Fixed bug that was fixed in 1.28.2.1/1.29 a little differently; the
difference is more or less cosmetic.

Submitted by:	Matt Thomas
1995-06-28 05:46:19 +00:00
dg
b8d2a7b022 Don't skip point-to-point interfaces if the netmask==0 (the netmask
should be completely ignored for point-to-point interfaces).
For point-to-point interfaces, route based on the destination address,
not the local address.

Submitted by:	Peter Wemm
1995-06-28 05:31:03 +00:00
dg
2bc3a773d6 Added function prototypes for ip_rsvp_vif_init, ip_rsvp_vif_done, and
ip_rsvp_force_done.
1995-06-28 05:13:02 +00:00
dg
6c5617ad78 Killed the "probably_never" ifdef'd code. 1995-06-28 04:51:06 +00:00