Commit Graph

19355 Commits

Author SHA1 Message Date
bde
c0ba1d663e Fixed longstanding brokenness of wddump() in LBA mode. LBA mode may now
be safe enough to recommend for working around the problem with CHS mode
normally being limited to 65536*16*63 sectors.

Fixed bitrot in related debugging code.

Fixed related style bugs.

Removed another vestige of bad144 support.
2000-01-30 07:58:14 +00:00
jasone
acdc4c82d5 Do not use 'alias' as a macro parameter name for __strong_reference(),
since the word 'alias' appears in the macro body.

Approved by:	jkh
2000-01-30 07:54:05 +00:00
jhb
f14425e1c7 Fix bogon in previous commit. Re-enable Forth in the loader.
Noticed by:	dcs
Approved by:	jkh
2000-01-30 06:56:27 +00:00
shin
52220d80c5 Fix kernel build breakage.
ip6_fw.c also needs ipv6firewall options. Sorry for the problem.

Submitted by: Jim Bloom <bloom@acm.org>
2000-01-30 03:52:28 +00:00
jasone
df12fb7fd7 Add __strong_reference(). 2000-01-29 22:51:16 +00:00
sos
4dae551c07 cosmetic changes only. 2000-01-29 22:38:36 +00:00
peter
394b57d7b2 Use config's tools rather than #if's. 2000-01-29 18:54:12 +00:00
n_hibma
c403f310c9 Get the KASSERT right. 2000-01-29 18:53:42 +00:00
peter
7760fba064 Tidy up stray or bogus #if NFOO > 0 and #include "foo.h". 2000-01-29 18:48:30 +00:00
peter
1129f8f225 Remove a rather bizzare set of #ifdefs and #defines that all worked out
to be a NO-OP.
2000-01-29 18:44:01 +00:00
peter
a767328eaf Remove #if NDGB > 0 and #if NDGM > 0 2000-01-29 18:42:45 +00:00
peter
a9988a615b Remove a somewhat odd #if that is always true (NOLTR will be always
1 or more if this file is being compiled)
2000-01-29 18:38:31 +00:00
peter
b7f989d004 Remove #include "eisa.h" and #if NEISA > 0 2000-01-29 18:22:33 +00:00
peter
e841a66d63 Remove unneeded #include "eisa.h" and #if NEISA > 0 2000-01-29 18:21:21 +00:00
peter
25c1fa20e1 Remove #if NGIF > 0 and #if NFAITH > 0 as config already checks this. 2000-01-29 18:10:39 +00:00
peter
c4b6cd7f5c Remove 'conflicts' token - it has been effectively doing absolutely
nothing for quite some time.  The only thing that cared was userconfig,
but it was for one invisible device so we never saw it's effects.
2000-01-29 18:07:07 +00:00
n_hibma
7a76a6d4d2 Fix debugging output. The TDs are linked through the dnext field, not
nexttd.
2000-01-29 18:01:15 +00:00
peter
59db460dbc Zap isa_device -> id_conflicts. The sole user of it (userconfig) never
actually used it since the only device that specified it (vga0) was marked
as "FLG_INVISIBLE" in userconfig and therefore never shown.

Suggested by:	bde
2000-01-29 18:01:10 +00:00
peter
1caa831a53 Add some more comments about sound card bridge devices and their
relationship with pcm and other things like newmidi.
2000-01-29 17:56:23 +00:00
peter
ceeb2c61a6 Still allow sbc/gusc/csa to perform as bridge devices (eg: to newmidi)
without pcm being present.
2000-01-29 17:48:28 +00:00
peter
46956a66e7 Allow the pnp and pci cards to be attached with just a 'device pcm' in
the user's config file.  Based on an idea/suggestion from Cameron (cg).

Change LINT to build newpcm instead of the old Voxware derived stuff.
That's much more useful in the longer term.
2000-01-29 17:28:48 +00:00
mjacob
1428bfa051 update copyright 2000-01-29 17:23:41 +00:00
peter
ca8b043d8e Move the (duplicated exactly!) portable ISA pcm drivers to files and
tighten up the logic a little.
2000-01-29 17:15:03 +00:00
peter
39f0933907 Remove #include "wd.h" and #if NWDC > 0 as that's always true as this
file is 'optional wdc'  (note wd.h has both NWDC and NWD in it because
of config quirks)
2000-01-29 16:59:53 +00:00
mjacob
eb4cc7eefa Wrong patch had been applied. 2000-01-29 16:57:03 +00:00
peter
d15f4a9e26 Remove some #if NFOO > 0 that are always true because of config rules. 2000-01-29 16:56:24 +00:00
peter
1246bb847f Remove the TABLDISC line discipline number, it's not in the tree
any more (and never worked in FreeBSD 2.x onwards as far as I can tell),
and isn't used by anything in the tree any more either.
2000-01-29 16:47:35 +00:00
mjacob
db5f0c8dcf Update copyright and pull some newer definitions from NetBSD version. 2000-01-29 16:41:08 +00:00
mjacob
32980fbceb Put tslb_device structure in this file. Put a pointer to to primary
CPU's structure.
2000-01-29 16:40:17 +00:00
mjacob
c9c14d15b4 Clean up some compilation warnings and errors. 2000-01-29 16:39:21 +00:00
peter
d88b6e4e9b Remove (commented out and marked as broken) pseudo-device tb. This was
added in rev 1.205 (october 1995).
2000-01-29 16:39:14 +00:00
peter
c084ca5d69 Remove kern/tty_tb.c. 2000-01-29 16:36:22 +00:00
peter
3cc9491f77 Remove sys/tablet.h and kern/tty_tb.c (the old RS232 CAD-style tablet
support code).  It hasn't worked since at least October 1995, and probably
has never worked in the FreeBSD 2.0+ tree.  Obviously it's not a priority
to many folks.

Reviewed by:	phk, sos
2000-01-29 16:34:46 +00:00
n_hibma
5b4848a6e2 Remove a warning from LINT 2000-01-29 16:25:55 +00:00
peter
7b46b1fff9 Remove a bunch of unused (NO-OP) #if NFOO > 0 type includes and some
#include "foo.h" headers.
2000-01-29 16:17:36 +00:00
peter
b3c16cb9b2 Fix this so LINT compiles. There is no way this could have worked if
tested with LINT.  I've put back netatm/kern_include.h and maked it
with a fixme!, otherwise NETISR_ATM isn't defined as ATM_KERNEL isn't
defined.  Defining that exposes a whole bunch of other dependencies.. :-(
2000-01-29 16:13:08 +00:00
peter
53ed6e8650 Remove #if NFOO > 0 (it's not required in most cases) and also where it
isn't used as a result, remove #include "foo.h".  Many of these drivers
still use NFOO for softc struct sizing etc however.
2000-01-29 16:00:34 +00:00
peter
468e098fa0 Don't build the wdc atapi attachments unless wdc is also present. 2000-01-29 15:58:30 +00:00
n_hibma
66f371b6b8 Unbreak LINT.
Pointed out by:   Peter Wemm
2000-01-29 15:55:03 +00:00
peter
d801231f79 Put a FYI in the compatability shims so that people are aware that they
are using an old unconverted driver.  Most (if not all) of the drivers
for common hardware are newbus these days.  However, we don't want
to encourage people to take the easy way out and write new drivers
using the shims.  This is just passive "encouragement".

Reviewed by:	phk
2000-01-29 15:37:36 +00:00
peter
89b9b9b4af Increase the default msgbuf size from 8k to 32k. Boot -v easily
overflows the default buffer making it too hard to get a dmesg from
a verbose boot.  It's still changeable via an option, so if picobsd
needs to set it to something else they still can.

Reviewed by:	phk, alfred
2000-01-29 15:29:11 +00:00
rwatson
2aada2e694 This patch fixes a locking bug that can result in deadlock if
the codepath is followed.

From the PR:

  vclean calls vrele leading to deadlock (if usecount > 0)

  vclean() calls vrele() if v_usecount of the node was higher than one.
  But before calling it, it sets the VXLOCK flag, which will make
  vn_lock called from vrele dead-lock.

PR:		kern/15117
Submitted by:	Assar Westerlund <assar@stacken.kth.se>
Reviewed by:	rwatson
Obtained from:	NetBSD
2000-01-29 15:22:58 +00:00
peter
d7e5eb3faa Use config's conditional compilation rather than using #ifdefs that make
modular compilation harder.  I'm doing this because people seem to like
cut/pasting examples of bad practices in existing code.
2000-01-29 15:08:56 +00:00
peter
e06faf1d94 Arrange for the following files to be compiled when the configuration
conditions are met rather than having to resort to #if's in the code.
> dev/syscons/scvgarndr.c               optional        sc vga
> dev/syscons/scvesactl.c               optional        sc vga vesa
> i386/isa/vesa.c                       optional        vga vesa
2000-01-29 15:04:33 +00:00
n_hibma
46a154cb23 First part of the fix for ohci_hash_find_td panic.
Some controllers submit bogus pointers to the Done queue.
ohci_hash_find_td fails to find these in its hash and panics. Instead of
panicing we now assume the whole done queue is lost and let the timeout
code to clean up the mess after us.
2000-01-29 14:53:47 +00:00
peter
8760ab7a11 Remove #if NVX > 0 and #if NEISA > 0 (and #include "eisa.h") as it's not
needed.
2000-01-29 14:50:32 +00:00
peter
54dfcd8d2c Remove #include "vga.h" and #if NVGA > 0 as it's implied by config. 2000-01-29 14:43:47 +00:00
peter
62db142ea5 Remove #include "splash.h" and #if NSPLASH > 0" - it's implied by config. 2000-01-29 14:42:57 +00:00
peter
9c240b8a2d Remove #if NIE > 0 test, it's guaranteed to be true by config. 2000-01-29 14:41:52 +00:00
n_hibma
c63e4d9590 Add comments and debugging info. 2000-01-29 14:41:48 +00:00
peter
ef55d4b61b Remove #if NEN > 0 in the name of FreeBSD - it's not required as config
only compiles this file if it's true.  NEN is still used though. :-(
2000-01-29 14:38:04 +00:00
peter
2fb5b3a053 Remove #include "eisa.h" and #if NEISA > 0 as it's only ever compiled
if NEISA is > 0 as guaranteed by config.
2000-01-29 14:31:57 +00:00
kato
c28482a132 Synced with sys/isa/ppc.c rev 1.26. 2000-01-29 14:30:28 +00:00
peter
b4c2b19801 Remove #if NCCD > 0 - it's guaranteed to be true by config if ccd.c is
being compiled. (NCCD is used elsewhere though :-( )
2000-01-29 14:29:56 +00:00
peter
c29982e9d2 Remove #include "eisa.h" and #if NEISA > 0 - this is guaranteed by config. 2000-01-29 14:27:26 +00:00
peter
34c7d2ad4f remove #include "eisa.h" and #if NEISA > 0 - this is guaranteed by
config since ahc_eisa.c is "optional ahc eisa" meaning "only compile
ahc_eisa if ahc and eisa are defined"
2000-01-29 14:22:19 +00:00
kato
e5c332c2a2 Synced with sys/kern/subr_diskmbr.c rev 1.44. 2000-01-29 14:21:04 +00:00
n_hibma
0701def723 The toggle carry bit is stored in the headp not the tailp. 2000-01-29 14:18:31 +00:00
sos
027422c351 cosmetic changes only. 2000-01-29 14:10:59 +00:00
peter
1a453ea9ce Remove #include "ppc.h" and #if NPPC > 0 - this is always true as it is
'optional ppc' in conf/files*
2000-01-29 14:02:30 +00:00
kato
6f105adabe Synced with sys/kern/subr_diskmbr.c rev 1.43. 2000-01-29 14:00:58 +00:00
shin
5a973d3065 Add ip6fw.
Yes it is almost code freeze, but as the result of many thought, now I
think this should be added before 4.0...

make world check, kernel build check is done.

Reviewed by: green
Obtained from: KAME project
2000-01-29 13:54:44 +00:00
peter
9baed61100 Remove a workaround for a gas bug. It couldn't assemble a certain
lgdt instruction, but the binutils based one is fine and has been
for ages.
2000-01-29 13:51:17 +00:00
kato
ac9d6cb3b4 Synced with sys/boot/i386/btx/btx/btx.s rev 1.14. 2000-01-29 13:48:36 +00:00
kato
64d8e9b9e5 Synced with sys/isa/ppc.c rev 1.25.
Reminded by:	nyan
2000-01-29 13:40:17 +00:00
peter
f27f68a3d1 Regen after pointing to the real setres[ug]id(). Remove dummy function.
(Note: getres[ug]id is still a dummy as it returns via pointers to a
 different sized integer and does need real wrappers.)
2000-01-29 12:45:36 +00:00
peter
ddc73d8c39 Use the real setres[ug]id(2) rather than dummy stubs. Newer glibc's
call this.
2000-01-29 12:43:29 +00:00
n_hibma
904db0db42 Mask off the last two bits before comparing. It might just be that some
hardware might leave those bits in the wrong state.
2000-01-29 11:59:31 +00:00
n_hibma
720b7903cb Tripmine for bad hardware. 2000-01-29 11:50:44 +00:00
shin
6ef0117870 Sorry in this just befor code freeze commit.
This is fix to usr.sbin/trpt and tcp_debug.[ch]
I think of putting this after 4.0 but,,,

 -There was bug that when INET6 is defined,
  IPv4 socket is not traced by trpt.

 -I received request from a person who distribute a program
  which use tcp_debug interface and print performance statistics,
  that
    -leave comptibility with old program as much as possible
    -use same interface with other OSes

  So, I talked with itojun, and synced API with netbsd IPv6 extension.

makeworld check, kernel build check(includes GENERIC) is done.

But if there happen to any problem, please let me know and
I soon backout this change.
2000-01-29 11:49:07 +00:00
kato
e191625e3f Simplify messages of Pentium II, Pentium II Xeon, Celeron, Pentium III
and Pentium III Xeon CPUs.  If a CPU is one of Pentium II, Pentium II
Xeon and Celeron, the message is always "Pentium II/Pentium II
Xeon/Celeron".   If a CPU is one of Pentium III and Pentium III Xeon,
the message is always "Pentium III/Pentium III Xeon".
2000-01-29 07:49:02 +00:00
kato
b86abe9ca2 Cosmetic changes.
- Fixed order of include files.
 - Fixed white spaces.
2000-01-29 07:36:46 +00:00
gallatin
d609003da5 changes to osf1_wait4()
- only allocate rusage struct when caller wants rusage info
- fix a stupid paren mismatch bug that was causing EPERM to get returned
  to callers rather then ECHILD
2000-01-29 06:31:27 +00:00
kato
debd5713de Synced with sys/isa/sio.c rev 1.287. 2000-01-29 04:47:22 +00:00
kato
9af864f09a Synced with sys/i386/isa/wd.c rev 1.218. 2000-01-29 04:42:49 +00:00
bde
4c824a9165 "Completed" the previous fix. Return ENOMEM on memory allocation failure
in sioattach(), not ENXIO.  Free resources before returning early in
sioprobe() and sioattach().
2000-01-29 03:02:55 +00:00
wpaul
e81c093824 Minor tweak: the D-Link 10/100 USB ethernet adapter is apparently using
the same design as the LinkSys adapter and needs the same special handling
to enable its PHY.
2000-01-29 02:16:47 +00:00
bp
451125d616 Enable '=' character in the filename.
Submitted by:	Dan Nelson <dnelson@emsphone.com>
2000-01-29 02:10:37 +00:00
brian
aed8e5f0eb Restore to version 1.14. Only opt_inet.h is required again. 2000-01-29 01:11:03 +00:00
brian
c798df12dd Remove unused includes 2000-01-29 01:10:24 +00:00
cg
c7803fdb7d differentiate cmi8330 and als100 pnp cards based on their vendor id. this
is a kludge for 4.0
2000-01-29 00:18:29 +00:00
sos
8f80ebe2c0 Get the MEDIA_CHANGED status right here too. 2000-01-28 22:17:29 +00:00
sos
9fa489ba71 Use atapi_test_ready not atapi_wait_ready, I need more sleep :( 2000-01-28 21:30:31 +00:00
sos
fcb7935df1 Get the MEDIA_CHANGED status right. 2000-01-28 21:03:25 +00:00
phk
1232f6e99e rename disk_delete() to disk_destroy(). 2000-01-28 20:49:43 +00:00
green
cff0ff5321 Fix a bug that could crash the system if you press ^T while a slower
system is slowed down and in the right spot (a race condition in fork()).

The "previous time" fields have moved from pstat to proc.  Anything which
uses KVM needs to be recompiled with a new libkvm/headers.

A couple wacky u_quad_t's in struct proc are now u_int64_t (the same, but
according to lack of 'quad's in proc.h and usage in kern_resource.c).
This will have no effect on code.

This has been make-world-and-installed-new-kernel-which-works-fine-tested.

Reviewed by:	bde (previous version)
2000-01-28 20:40:29 +00:00
sos
23174db79e Fix the atapi-fd.c (afd device) so that fx MSDOS formatted ZIP
disks can be mounted. Use b_pblkno instead of b_blkno

Found by: phk

Protect (proberly) against setting modes on nonexisting devices.
2000-01-28 20:18:19 +00:00
groudier
ba40b8cc86 - Fix an issue that paniced the machine in data overrun
condition.
- 1 line change that allows to balance chips between ncr
  and sym using pci compat option (not compiled by default
  in 4.0 but maintains the driver source 3.4 compatible).
2000-01-28 20:11:32 +00:00
shin
73f095255d Count AF_INET6 attachement to routing socket.
Obtained from: KAME project
2000-01-28 20:10:51 +00:00
archie
6dd36cc401 Back out previous commit; it was premature. 2000-01-28 17:11:07 +00:00
sos
f12f1350a5 Fix compilation on ISA only setups... 2000-01-28 15:57:13 +00:00
rwatson
1d708306f5 Fix man page structures/constants to match recent changes in acl.h
Fix a few more namespace messes and whitespace curiosities in acl.h
Fix comments in acl.h
Clean up some function prototypes from acl.h that won't be committed
    before the code freeze.

Some of this kindly pointed out by: the ever patient bde
2000-01-28 15:22:51 +00:00
jhb
ecc56c784b Allow for cdldr to be built in ${.OBJDIR}/../cdldr/cdldr instead of
only looking for it in ${.CURDIR}/../cdldr/cdldr.  This fixes world.
2000-01-28 15:19:22 +00:00
sos
1f5af77314 Cleanup the ata_dmainit function a bit.
Also allow BIOS setup DMA on unknown controllers.
2000-01-28 13:35:43 +00:00
shin
7fd8aeb670 Backout diffs which should not be included. 2000-01-28 13:16:34 +00:00
n_hibma
76324b32bd Correct the list of error messages. It was incomplete. 2000-01-28 13:05:26 +00:00
shin
9b27aa3fec #This is a null commit to give correct description for the previous change.
#Please forget the strange log message of the previous commit .

IPv6 multicast routing.
  kernel IPv6 multicast routing support.
  pim6 dense mode daemon
  pim6 sparse mode daemon
  netstat support of IPv6 multicast routing statistics

  Merging to the current and testing with other existing multicast routers
  is done by Tatsuya Jinmei <jinmei@kame.net>, who writes and maintainances
  the base code in KAME distribution.

  Make world check and kernel build check was also successful.

Obtained from: KAME project
2000-01-28 12:17:49 +00:00
bde
e79d76144b Fixed a memory leak for slices with an (unsupported) bad sector table.
Broken in: rev.1.80.
2000-01-28 11:51:08 +00:00
bde
17f54b4408 Add ${DEBUG_FLAGS} to CFLAGS in bsd.kmod.mk, not in scattered module
makefiles.  Bad examples in fxp/Makefile keep getting copied to new
makefiles.
2000-01-28 11:26:46 +00:00
n_hibma
f9bed91ed9 Regen. 2000-01-28 10:31:12 +00:00
n_hibma
0ea7dddb88 Correct the entry for the Kodak DC290.
Submitted By:	Oliver Fromme <olli@dorifer.heim3.tu-clausthal.de>
2000-01-28 10:26:29 +00:00
bde
dff980d98b Don't permit generation of non-physical disk addresses.
subr_diskmbr.c:
Don't "helpfully" enlarge our idea of the disk size to cover all the
primary slices.  Instead, truncate or discard slices that don't seem
to be on the disk.  The enlargement was a hack for disks that don't
report their size (e.g., MFM disks).  It is just wrong in general.

wd.c:
In CHS mode, limit the disk size so that cylinder numbers >= 65536
cannot occur.  This normally only affects disks larger than 33.8GB.
CHS mode accesses to addresses above the limit are now properly broken
(an error is returned instead of garbage for reads and disk corruption
for writes).

PR:		15611
Reviewed by:	readers of freebsd-bugs did not respond to a request
            	for review
2000-01-28 10:22:07 +00:00
sos
f1a70ea24f Oops, fix compile error due to the new way of storing the transfer mode. 2000-01-28 08:03:21 +00:00
kato
8d31907972 Merged with sys/i386/conf/GENERIC rev 1.238. 2000-01-28 07:15:23 +00:00
imp
9d11326d86 Mitigate the stream.c attacks
o Drop all broadcast and multicast source addresses in tcp_input.
o Enable ICMP_BANDLIM in GENERIC.
o Change default to 200/s from 100/s.  This will still stop the attack, but
  is conservative enough to do this close to code freeze.

This is not the optimal patch for the problem, but is likely the least
intrusive patch that can be made for this.

Obtained from: Don Lewis and Matt Dillon.
Reviewed by: freebsd-security
2000-01-28 06:13:09 +00:00
shin
f8e48f511e Sorry I didn't commit these files at the commit just a few minutes before.
(IPv6 multicast routing)
I think I mistakenly touched TAB and the last arg sys/netinet6 to
the cvs commit changed to sys/netinet6/in6_proto.c.
2000-01-28 05:27:14 +00:00
shin
417b54f8df IPv6 multicast routing.
kernel IPv6 multicast routing support.
  pim6 dense mode daemon
  pim6 sparse mode daemon
  netstat support of IPv6 multicast routing statistics

  Merging to the current and testing with other existing multicast routers
  is done by Tatsuya Jinmei <jinmei@kame.net>, who writes and maintainances
  the base code in KAME distribution.

  Make world check and kernel build check was also successful.
2000-01-28 05:10:56 +00:00
gallatin
b223e32eee Add support for detection of the ESS 1688 found on my Dell Latitude LM 2000-01-28 04:28:11 +00:00
dg
fab6f30ed1 Fixed sign and overflow bugs that caused the allocation size of the kernel
malloc region (kmem_map) to be wrong and semi-random on systems with more
than 1GB of RAM. This is not a complete fix, but is sufficient for
machines with 4GB or less of memory. A complete fix will require some
changes to the getenv stuff so that 64bit values can be passed around.

NOT FIXED: machines with more than 4GB of RAM (e.g. some large Alphas)
since we're still using ints to hold some of the values.

Reviewed by:	bde
2000-01-28 04:04:58 +00:00
dcs
1413d2c5ed Implement a machine-independent (word size-independent) FICL_TRUE. 2000-01-28 03:59:12 +00:00
dcs
22631e4b23 ANS Forth for logical not is 0=, not invert. Replace wrong usage. 2000-01-28 03:41:39 +00:00
dcs
675514383d Add testmain.o to CLEANFILES. 2000-01-28 03:07:25 +00:00
dcs
da94ddfd7a Try my hand again at removing ugly testmain target. 2000-01-28 02:40:23 +00:00
archie
219d3e4583 When an attempt to install a line discipline fails, check for
known KLD's that might support it, and load the KLD if found.
Currently the list includes SLIPDISC, PPPDISC, and NETGRAPHDISC.
2000-01-28 02:22:22 +00:00
wpaul
10d6a2ddbb Fix a bug in the uhci driver that breaks large bulk IN transfers. The
uhci_check_intr() routine needs to be more careful about deciding when
the end of a transfer has been detected.

This allows me to remove the nasty workaround code from if_aue and if_cue.
Receive performance is now much better for these adapters (500KB/sec
vs. 350KB/sec).

Also removed unused KUE_CUTOFF define from if_kuereg.h.

Submitted by: Lennart Augustsson
Reviewed by: n_hibma
2000-01-28 02:15:31 +00:00
nyan
a6ded040ef Merge from sys/i386/conf/GENERIC revision 1.231, 1.232 and 1.235. 2000-01-28 01:07:48 +00:00
nyan
165ca7ea33 Merge from sys/conf/files.i386 revision 1.301. 2000-01-28 01:05:08 +00:00
n_hibma
d9cd3d7688 The values for OHCI_HALTED and OHCI_TOGGLECARRY were reversed. 2000-01-28 00:03:45 +00:00
brian
3f0a670dfa Redo the intrq.c idea as
int family_enqueue(sa_family_t, struct mbuf *);
2000-01-27 23:37:39 +00:00
n_hibma
5674e93381 Move the defines to the right location.
Add a DIAGNOSTIC when closing interrupt pipes.

Insert splx(s) which were left out with iso pipes (non-functional yet) and
in a DIAGNOSTIC.
2000-01-27 23:25:58 +00:00
n_hibma
64633582ac Add umass.c 2000-01-27 23:19:14 +00:00
obrien
3050fca7ad Bump __FreeBSD_version and __FreeBSD_cc_version due to the C++ ABI change
in GCC 2.95.2 from -fvtable-thunks to -fno-vtable-thunks by default.
2000-01-27 23:12:38 +00:00
archie
bb21b7f267 Include ddb/db_sysctl.c when compiling with 'options DDB'. 2000-01-27 22:29:19 +00:00
archie
3e5a94e2ab Add a new sysctl "debug.enter_debugger" (when the kernel is compiled
with 'options DDB').  Setting this to `ddb' or `gdb' breaks into the
kernel debugger in the corresponding mode.  This mechanism has proven
very useful at Whistle for setting breakpoints, etc., while doing
remote serial line kernel debugging.

Obtained from:	Whistle source tree
2000-01-27 22:27:34 +00:00
jhb
372aab7cb7 Add the new cdldr CD bootstrap loader. This patch includes the following:
- Fix btxldr to preserve a NULL bootinfo pointer when it copies the kernel
  arguments.
- Add the cdldr bootstrap program.  This program is tacked onto the
  beginning of the standard 3rd stage boot loader (/boot/loader) to form
  the CD boot loader (/boot/cdboot).  When a CD is booted, the cdboot file
  is copied into memory instead and executed.  The cdldr stub emulates the
  environment normally provided by boot2 and then starts the loader.  This
  booting method does not emulate a floppy drive, but boots directly off of
  the CD.  This should fix the problems some BIOS's have with emulating a
  2.88 MB floppy image.
- Add support to the loader to recognize that it has been booted by cdldr
  instead of boot2 and use a simpler method of extracting the BIOS boot
  device.
2000-01-27 21:21:01 +00:00
jhb
30f3b614b3 Fix brokenness introduced with the PAGING conditional variable. The value
of %cr0 wasn't reloaded into %eax before being modified to turn protected
mode off if PAGING was not defined.  The result was that the processor did
not exit protected mode, so when it tried to jump to segment 0x0 in the
next instruction to clear the prefetch cache like one should when leaving
protected mode, it actually tried to jump to a null selector, causing a
GPF.
2000-01-27 21:06:13 +00:00
asmodai
85c0bf5218 Completely remove ATA_16BIT_ONLY, since this is done automatically
by the ata driver nowadays.

OK'd by:	sos,peter
2000-01-27 19:28:15 +00:00
sos
0dd4bc7de0 Add sysctl oid hw.atamodes to set the transfermodes online. 2000-01-27 19:00:51 +00:00
sos
eaf345be5e remove the ATA_16BIT_ONLY options, its now automatic. 2000-01-27 18:53:41 +00:00
asmodai
f9e6dff4fc Removed ATA_STATIC_ID and ATA_16BIT_ONLY from the undocumented
options section, since they are documented higher up in the
file.

Probably forgotten by:	sos
2000-01-27 17:41:38 +00:00
nyan
d75f204b28 Supported non-512 bytes/sector format.
PR:		misc/12992
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata) and
		Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
Reviewed by:	Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
2000-01-27 14:43:07 +00:00
peter
e3e26fd9df Move if_tun back to the common section now that it works on the Alpha.
Tested by:	make world
2000-01-27 13:42:42 +00:00
yokota
e626ea866f Add more PCI VGA graphics card descriptions.
PR: 10095, 15299, 13850, 16356
Submitted by:  Alex Zepeda, Vladimir Kushnir, Alex Vasylenko, Alex.
Obtained from: XFree86 and NetBSD
2000-01-27 12:02:06 +00:00
shin
2ef83ec04a Added ip6_forwarding check when prefix related ioctl is called.
(prefix related ioctl should only be called on router,
because host use dynamic address and prefix configuration mechanism,
and those prefix are managed separately with ones whih are assined
manually.)
2000-01-27 10:04:28 +00:00
bde
88cf0ffda8 Quick fix for stack overflow when there are more than about 25 slices.
Using recursion to traverse the recursive data structure for extended
partitions was never good, but when slice support was implemented in
1995, the recursion worked for the default maximum number of slices
(32), and standard fdisk utilities didn't support creating more than
the default number.  Even then, corrupt extended partitions could
cause endless recursion, because we attempt to check all slices, even
ones which we don't turn into devices.

The recursion has succumbed to creeping features.  The stack requirements
for each level had grown to 204 bytes on i386's.  Most of the growth was
caused by adding a 64-byte copy of the DOSpartition table to each frame.
The kernel stack size has shrunk to about 5K on i386's.  Most of the
shrinkage was caused by the growth of `struct sigacts' by 2388 bytes
to support 128 signals.

Linux fdisk (a 1997 version at least) can now create 60 slices (4 standard
ones, 56 for logical drives within extended partitions, and it seems to
be leaving room to map the 4 BSD partitions on my test drive), and Linux
(2.2.29 and 2.3.35 at least) now reports all these slices at boot time.

The fix limits the recursion to 16 levels (4 + 16 slices) and recovers
32 bytes per level caused by gcc pessimizing for space.  Switching to
a static buffer doesn't cause any problems due to recursion, since the
buffer is not passed down.  Using a static buffer is wrong in general
because it requires the giant lock to protect it.  However, this problem
is small compared with using a static buffer for dsname().  We sometimes
neglect to copy the result of dsname() before sleeping.

Also fixed slice names when we find more than MAX_SLICES (32) slices.
The number of the last slice found was not passed passed recursively.
The limit on the recursion now prevents finding more than 32 slices
with a standard extended partition data structure anyway.
2000-01-27 05:11:29 +00:00
archie
f966bf838f Add control message ASCII conversion for this node type. 2000-01-27 01:32:53 +00:00
mckusick
b5a8876127 Add soft updates to the set of things being tagged. Syntax cleanup. 2000-01-27 01:22:06 +00:00
dillon
860c8411e1 Fix catastrophic bug in NQNFS related to UDP mounts. The 'nqhost'
struct contains a major union for which lph_slp was being initialized
    only for TCP connections, but accessed for all types of connections
    leading to a crash.  Also, a conditional controlling an nfs_slplock()
    call contained an improper paren grouping, causing a second crash in
    the UDP case.

    The nqhost structure has been reorganized and lph_slp has been made a
    normal structural field rather then a union field, and properly
    initialized for all connection types.

Approved by: jkh
2000-01-26 20:51:29 +00:00
cg
c54637f284 handle simplex devices right 2000-01-26 20:27:45 +00:00
rwatson
4f34910f07 A few more touchups:
- clean up unneeded AFS ID type
- Add Coda, NTFS, NWFS ACL types
- Add acl_dup() prototype
- Remove acl_calc_mask, which belongs in the editing library
- Introduce posix1e.3, a man page introducing POSIX.1e library calls
  (more man pages to follow)
2000-01-26 16:15:48 +00:00
peter
b498317a66 Re-add vpo. I've just re-tested this in a 'make world' on a December
vintage system, well before the ppbus changes.  When I called it an
"example" module, I meant as an example for the rest of the ppbus client
drivers, not that it was worthless.  I'll mail my 5.8MB world.log to
anybody who doesn't believe me.

Wrongly accused by:	obrien
2000-01-26 15:15:50 +00:00
kato
8e057fffb8 Synced with sys/i386/isa/isa_compat.h and pcaudio.c revisions 1.26 and
1.58, respectively.
2000-01-26 11:23:51 +00:00
kato
c5a78336fe Synced with sys/i386/isa/npx.c rev 1.79. 2000-01-26 11:16:14 +00:00
n_hibma
7e6dc45292 Properly teardown the allocated and initialised stuff when an error
occurs (OHCIwas already done for UHCI).

Get rid of the usbus variable. It is confusing.

Align uhci_pci.c and ohci_pci.c again.
2000-01-26 10:52:27 +00:00
bde
9fec7300da Improved English in the messages printed by diskerr().
Fixed some formatting bugs.
2000-01-26 10:28:23 +00:00
n_hibma
64cda4e365 Don't set ivars until we checked the return value from device_add_child. 2000-01-26 10:27:12 +00:00
n_hibma
4a29dd1cc9 Add comments 2000-01-26 08:46:41 +00:00
rwatson
bca585a108 Minor fixes to library interface to improve POSIX.1e compliance. This
adds _np to a couple of function prototypes that provided more broad/useful
interfaces than POSIX.1e interfaces included.

Also, move from using a heuristic to identify POSIX.1e-semantic ACLs to
using different ACL types for non-POSIX.1e ACLs.  This should clean up the
existing fuzzy logic that determined when acl_sort() should be applied
before kernel submission.
2000-01-26 04:19:38 +00:00
obrien
994e477fcd Remove `vpo' with a vengeance -- "EXAMPLE" modules have *NO* business
being hooked up to the build system, *COMPILABLE WORKING* modules do.

Not `make' tested by:	Peter
2000-01-26 02:05:16 +00:00
msmith
c7f9f55626 Correctly initialise the available IRQ numbers in the APIC_IO case.
IRQ 2 was being unilaterally disallowed, which is only appropriate if
the interrupt hardware is the traditional chained PIC arrangement.

Reviewed by:	tegge (in principle)
2000-01-26 01:32:51 +00:00
brian
1d67bbf0a1 Don't use ATM on the alpha - it #errors out.
Pointed out by: jdp
2000-01-26 01:08:03 +00:00
obrien
9ed45b0d46 if_tun is out of here -- it can come back with it stops breaking the
Alpha build.
2000-01-26 00:47:45 +00:00
dfr
d3464c1302 The ppc driver has moved to sys/isa. 2000-01-25 22:26:44 +00:00
dfr
e21d6d6ca6 Get the ppc driver from sys/isa instead of sys/i386/isa. 2000-01-25 22:25:52 +00:00
dfr
17a2aa68ca Make this lot build on alpha. 2000-01-25 22:23:48 +00:00
dfr
7fef19bf38 * Don't use ivars to access resources, bus_set/get_resource is much better.
* First approximation of making this work on alpha (not working yet).
2000-01-25 22:21:45 +00:00
dfr
9b25272548 Convert pca driver to newbus and add PnP ids. 2000-01-25 21:58:43 +00:00
dfr
4825204b37 Use device_printf() instead of device_print_prettyname(). 2000-01-25 21:39:20 +00:00
mjacob
0ca52ef8b9 Because we added 4 bytes to the inquiry data size, we need to
rev the CAM revision too. Tsk.
Submitted by:	ken@freebsd.org
2000-01-25 21:24:52 +00:00
sos
b5f4230b55 Retry a bit more agressively on the atapi identify.
Try to support older systems reporting irq0 for the first channels.

Support sharing of the std interrupts (says peter :) )

Dont use READ_CD on normal data reads (2048 bytes), too many old drives
doesn't support this command even if the std says "shall" :(, but still
use READ_CD on all other blocksizes.

Add the geometry to the ad probe, its still usefull.
2000-01-25 20:14:51 +00:00
peter
c1eb1e6c01 Fix left over references to things like 'ata0' in comments.
Submitted by:	Jim Bloom <bloom@acm.org>
2000-01-25 18:56:41 +00:00
n_hibma
97f54a6227 Add usbd_clear_endpoint_toggle(pipe) function.
This is needed to implement a asynchronous callback for clear endpoint
stall, needed for the umass driver.
2000-01-25 18:40:39 +00:00
n_hibma
54e504ae5d Correct subroutine names in DPRINTF 2000-01-25 18:37:58 +00:00
mjacob
1e8980cde6 Redo the SHORT INQUIRY length stuff to be a bit cleaner.
Obtained from:gibbs@freebsd.org
2000-01-25 18:25:22 +00:00
dillon
fd8bf79164 The swapdev_vp changes made to rip out the swap specfs interaction
also broke diskless swapping.  Moving the swapdev_vp initialization
    to more commonly run code solves the problem.

PR: kern/16165
Additional testing by: David Gilbert <dgilbert@velocet.ca>
2000-01-25 17:49:12 +00:00
ken
810f78cd6f When autosense fails, make sure we retry the command.
PR:		kern/15975
Submitted by:	Carl Mascott <cmascott@world.std.com>, n_hibma
2000-01-25 17:45:02 +00:00
mjacob
88ca73a427 Propagate sense data through from SIM (if there) and mark the CTIO
that there's sense to send with status (if the SIM does it), and
then clear any pending contingent allegiance state for this initiator
if the SIM actually did send the sense data.

Widen MAX_INITITATORS to 256- that's still not quite right, but will
accomodate the widest Fibre Channel support in FreeBSD now.

Obtained from:(partially) gibbs@freebsd.org
2000-01-25 17:42:27 +00:00
mjacob
ac6d799efd Propagate sense data through from SIM (if there) and mark the CTIO
that there's sense to send with status (if the SIM does it).
Reviewed by:	gibbs@freebsd.org
2000-01-25 17:39:09 +00:00
mjacob
456e741298 Go for the gusto and do the full 256 bytes for inquiry data.
Obtained from:gibbs@freebsd.org
2000-01-25 17:37:02 +00:00
peter
3176716b49 Always leave SP_DCEN on (monitor DCD). Otherwise the firmware *really*
does ignore DCD.  Even TIOCMGET cannot read DCD as the firmware doesn't
report it.  This has pretty interesting effects for ppp(8) which runs
in clocal mode and polls carrier (!).  (Specialix's linux driver does
this too)

Also update the firmware to 3.0.6 for the SX cards, as apparently there
was a problem with floating (disconnected) DCD pins causing stray carrier
transitions, especially at port open time.

It seems to work here, and carrier loss is detected nearly immediately
rather than having to wait for a LQR timeout (a few minutes) before ppp(8)
gives up.

DCD problem noted by: nsayer
2000-01-25 16:45:54 +00:00
bde
f521345792 Remove i8042.h. This file is an improvement on its successors, but it
has been unused for too long.
2000-01-25 11:16:16 +00:00
bde
59f42795e8 Don't follow null pointers if we somehow have a null devswitch entry
despite having a non-null cn_tab entry.  This case now works the same
as if there is no physical console, except i/o at the kernel printf
level may still work.  This frees drivers of physical console drivers
from the responsibility of attaching the device no matter what.
2000-01-25 09:20:08 +00:00
bde
9fe8ef8eba Fixed the profiling version ALTENTRY(). Again. The previous version
didn't set up the frame pointer before calling mcount, and then jumped
to the wrong place in ENTRY() to defeat the point of the jump.
2000-01-25 09:01:55 +00:00
bde
2d72ea0422 Removed ssc and su. 2000-01-25 08:46:15 +00:00
mjacob
888adf2a33 put things in place for jumbograms 2000-01-25 06:09:53 +00:00
mjacob
8cd8c3184d define jumbo packet size 2000-01-25 04:11:33 +00:00
archie
a8773de4fe Reserve a major number for /dev/skip, used by the "security/skip" port. 2000-01-25 02:11:02 +00:00
shin
2dec7cab29 Avoid m_len and m_pkthdr.len inconsistency when changing m_len
for an mbuf whose M_PKTHDR is set.

PR: related to kern/15175
Reviewed by: archie
2000-01-25 01:26:47 +00:00
shin
3dd6ac3283 Fix the bug that IPv4 ttl is not initialized when AF_INET6 socket is used
for IPv4 communication.(IPv4 mapped IPv6 addr.)
Also removed IPv6 hoplimit initialization because it is alway done at
tcp_output.

Confirmed by: Bernd Walter <ticso@cicely5.cicely.de>
2000-01-25 01:05:18 +00:00
sos
8ebb100647 General cleanup.
Dont be so verbose in the probe, only ONE line printed now, to get more
info boot verbose. Centralise most printf's in ata-all & ata-dma to use
the ata_printf function, it saves alot of codelines.

Repeat the identify command if drive fails the first.

Protect the timeout functions with splbio.

Dont update the transfer details before we are sure the transfer
succeded, this way they are proberly retried on errors.

Move the handling of next_writeable to userland.

Use the READ_CD command to read CD's. That enables us to read _anything_
via the normal read/write interface. This kindof obsoletes the READAUDIO
ioctl, but we keep that for now.
2000-01-24 20:45:24 +00:00
brian
26fcba4c5a Move the *intrq variables into net/intrq.c and unconditionally
include this in all kernels.  Declare some const *intrq_present
variables that can be checked by a module prior to using *intrq
to queue data.

Make the if_tun module capable of processing atm, ip, ip6, ipx,
natm and netatalk packets when TUNSIFHEAD is ioctl()d on.

Review not required by: freebsd-hackers
2000-01-24 20:39:02 +00:00
wpaul
d46e1313de Add support for DM9102A boards with Davicom DM9801 HomePNA PHYs. 2000-01-24 17:19:37 +00:00
peter
0053820449 Copy i386/isa/atapi-cd.[ch] to a new name so that it doesn't have the
same object file (atapi-cd.o) as the ata drivers. I'd have called it
wcd.[ch], but there's already one of those in the Attic that we can't
clobber - the good names are taken.
Fix building so that it can be compiled into LINT alongside ata.

Requested by:	bde
2000-01-24 17:16:03 +00:00
kato
d2024f75c9 Merged from sys/i386/conf/GENERIC rev 1.236. 2000-01-24 14:02:34 +00:00
roger
1405ac9364 Update to driver 2.07
Add new Channel Set for France. Submitted by Daniel Dagneaux <dagneaux@lure.u-psud.fr>
2000-01-24 14:00:34 +00:00
roger
e5aaa91ca5 Update to driver 2.07
Update i2c code to build on FreeBSD 3.x and 4.x machines.
Added GPIO audio values for the Askey/Dynalink TV card talken from postings on the V4L mailing list.
Update Australian Channel Set. Submitted by John Birrell <jb@cimlogic.com.au>
Add new Channel Set for France. Submitted by Daniel Dagneaux <dagneaux@lure.u-psud.fr>
2000-01-24 14:00:21 +00:00
kato
7898f6d9d6 Synced with sys/i386/isa/isa_compat.h rev 1.25. 2000-01-24 13:58:18 +00:00
kato
f2f2130c16 Synced with files.i386. 2000-01-24 13:56:57 +00:00
yokota
c98556c7b7 Fix a bug exposed by the previous commit. Do not use scp->font_size,
if the screen is in a graphics mode

Reported by: Maxim Sobolev <sobomax@altavista.net>
2000-01-24 13:44:39 +00:00
bde
5ac10ba7c8 Fixed some style bugs (mainly ones associated with the bogus name
condev_t for a non-typedef).
2000-01-24 11:48:11 +00:00
n_hibma
5bef12b54e The previous fix for the USB ugen device set configuration ioctl()
has a slight error, and returns EIO way too often.

PR:		16315
Submitted by:  Louis Mamakos <louie@TransSys.COM>
2000-01-24 10:23:57 +00:00
dfr
f0daab572f Add a workaround to which allows alphas to reserve a port range which
doesn't conflict with the parallel port on my miata (0x3bc..0x3bf).
The right solution will be to reserve two port ranges in vga, 0x3b0..0x3ba
and 0x3c0..0x3ca.

Reviewed by: yokota
2000-01-24 09:22:51 +00:00
ru
8976fc6f89 Notify user processes about interface's MTU change.
Reviewed by:	wollman, freebsd-net
2000-01-24 08:53:39 +00:00
peter
16f4eb83c1 Remove some no-op "port ?" and "irq ?" declarations. 2000-01-24 08:52:29 +00:00
peter
148cc5b79c Remove a no-op "port ?" declaration. 2000-01-24 08:51:16 +00:00
peter
e9cca2953d Remove a bunch of no-op "port ?" and "irq ?" declarations. 2000-01-24 08:49:24 +00:00
kato
782470b16b Return ENXIO on error.
Submitted by:	n_hibma
2000-01-24 08:20:54 +00:00
peter
7023b084df Remove old specialix pre-newbus specialix driver. It lives on in
sys/dev/si now, including with a theoretically working eisa attachment.
2000-01-24 08:18:26 +00:00
bde
df8760b455 Removed assignment to an "unused" variable that was removed in the
previous commit.  Building LINT didn't expose this bug, because the
assignment was in an ifdef that is too tangled for LINT to cover
properly.
2000-01-24 08:16:15 +00:00
peter
d10f128836 Remove isa compat shims for si. 2000-01-24 08:13:53 +00:00