Commit Graph

26145 Commits

Author SHA1 Message Date
wpaul
5b01407669 In lge_detach(), don't contigfree() the jumbogram buffer memory;
lge_free_jumbo_mem() does it for us.
2001-06-05 23:16:52 +00:00
imp
f5e8ef092a Commit part of the patch that I have for card eject problems with the
ep driver.  The rest of the patch will wait until I can put the time
into it to get it righter than the kludge it is.

This protects us against card eject problems at all times,e xecpt when
we're in the epintr ISR.
2001-06-05 22:29:16 +00:00
joerg
b58cdc4c79 Make the FDC (state machine) state an enum, as opposed to an int
abusing a bunch of #defines, for clarity and better debugging support.
2001-06-05 21:01:46 +00:00
wpaul
83c7edbffd Fix mindo:
PCN_BCR_CLRBIT(sc, PCN_BCR_MIICTL, PCN_MIICTL_DANAS);

should be:

	PCN_BCR_SETBIT(sc, PCN_BCR_MIICTL, PCN_MIICTL_DANAS);

Turning this bit on is what disables MII autoneg, not turning it off.
Without this, manually setting the media doesn't work.

Noticed by: Jim Browne <jbrowne@jbrowne.com>
2001-06-05 20:51:17 +00:00
shafeeq
8c780c8d9a Now works again and as a module and with devfs.
Used the bpf & tun drivers as examples as to what is necessary for devfs.
2001-06-05 19:45:16 +00:00
mjacob
deca6805ae Fix botch for state levels. Role minor release. Start adding code for a
'force logout' path.

MFC after:	4 weeks
2001-06-05 17:11:06 +00:00
hm
38bd0a5384 PR: i386/26347
Submitted by:	Nicola Vitale <nivit@libero.it>
Reviewed by:	hm
Fix screen number display in HP mode in case PCVT_NSCREENS > 10
2001-06-05 15:31:47 +00:00
jlemon
404f6dd2da Add a kqueue filter for writing to ufs filesystems which always returns
true.  This permits better interoperability with programs which register
filters on their stdin/stdout handles.

Submitted by: Niels Provos <provos@citi.umich.edu>
2001-06-05 13:52:37 +00:00
imp
b77106dd8d Close the line displine on detach. Lots of folks have submittd this, and
I think bde even reviewed it once.

Also, change the name of ActionTEC pat to more generic Lucent Kermit
chip.  Add stub for Xircom card.  Add cardbus attachment too.
2001-06-05 05:58:57 +00:00
dd
1c7d10ac21 Add a line discipline close routine which restores some functionality
I accidently nuked in rev. 1.54.  Also rework the error handling in
snplwrite a little.
2001-06-05 05:07:53 +00:00
dd
c35e39a5cb Style and cosmetic cleanups. This driver is now reasonably stlye(9)
compliant.  All the variable definitions and function names are
reasonably consistent, and the functions which should be static (i.e.,
all of them) are.  Other assorted fixes were made.  The majority of
the delta is indentation fixes.

Partially reviewed by:	bde
2001-06-05 05:00:17 +00:00
imp
7006efd193 Only build i82365_isa attachment when we have isa bus. 2001-06-05 04:26:12 +00:00
obrien
c3d076fe28 There seems to be a problem that the order of disk write operation being
incorrect due to a missing check for some dependency.  This change
avoids the freelist corruption (but not the temporarily inconsistent
state of the file system).

A message is printed as a reminder of the under lying problem when a
pagedep structure is not freed due to the NEWBLOCK flag being set.

Submitted by:	Tor.Egge@fast.no
2001-06-05 01:49:37 +00:00
dd
b646de742c Use the l_nullioctl exported from tty_conf.c rather than rolling our own. 2001-06-04 23:31:21 +00:00
dd
c6d2a1e6f9 Unstaticize l_nullioctl; it is needed elsewhere (like in tty_snoop.c).
Suggested by:	bde
2001-06-04 23:30:47 +00:00
jlemon
a3f3e57534 While in the interrupt loop, check for a bogus interrupt value of 0xff.
This may be returned if the underlying hardware is a pc-card which has
been ejected.

Reviewed by: warner
2001-06-04 22:01:44 +00:00
joerg
9c040b1c43 Move out the files from src/sys/isa/ic/ to src/sys/dev/ic/, so they
can be made userland-visible as <dev/ic/...>.  Also, those files are
not supposed to contain any bus-specific details at all, so placing
them under .../isa/ has been a misnomer from the beginning.

The files in src/sys/dev/ic/ have been repo-copied from their old
location (this commit is a forced null commit there to record this
message).
2001-06-04 21:04:14 +00:00
jhb
4f5a9fbe9e Use bitmasks of the KTR_* constants instead of hexidecimal values for
the KTR_COMPILE and KTR_MASK examples.
2001-06-04 18:26:02 +00:00
jhb
1925fcda63 Add a new psuedo-KTR trace level KTR_ALL which is a mask of all currently
used KTR levels.
2001-06-04 18:24:07 +00:00
mjacob
0a829fc665 first blush at some FC path inquiry settings 2001-06-04 18:23:49 +00:00
mjacob
76d93c9267 Do NOLUNS dance for oddball Exabyte. We *really* need to do this as hints.
Correct match for A5000 SES instance.

PR:		19887
MFC after:	2 weeks
2001-06-04 18:20:52 +00:00
mjacob
989a523fa8 first blush at some FC path inquiry settings 2001-06-04 18:08:30 +00:00
imp
93128f58b0 If the chip isn't in power state D0, put it in power state D0. I
elected to do this in the probe rather than the attach so that we don't
disturb things which this might reset.  different cards have different
quirks, according to their datasheets.

This should fix the "I booted in windows and rebooted to FreeBSD and
now things don't work" problem.

PR: 4847, 20670
2001-06-04 17:14:28 +00:00
brian
91bbcb8b58 Add BSD-style copyright headers
Approved by: Charles Mott <cmott@scientech.com>
2001-06-04 15:09:51 +00:00
brian
5a407d2957 Change to a standard BSD-style copyright
Approved by:	Atsushi Murai <amurai@spec.co.jp>
2001-06-04 14:52:17 +00:00
ru
2f07da5108 When looking for an interface appropriate for the (new or changing)
route in ifa_ifwithroute(), as the last resort, look up the route to
the gateway, not destination (to derive the interface from).

PR:		kern/27852
Submitted by:	Iasen Kostoff <tbyte@tbyte.org>
MFC after:	2 weeks
2001-06-04 14:13:15 +00:00
imp
a83bd75d36 Add new pci attachment for pcic. This supports pci cards as well as
card bus bridges.

We now always use pci interrupts for pci cards.  This will allow us to
more easily configure things.  You must change your IRQ lines in
/etc/pccard.conf to match what we've probed.  I'm not sure the right
way to deal with this right now.

Development of pci pcmcia has been funded by Monzoon Networks AG.  I
am grateful for their generosity.
2001-06-04 06:49:46 +00:00
dillon
7f9e532290 The pipe_write() code was locking the pipe without busying it first in
certain cases, and a close() by another process could potentially rip the
pipe out from under the (blocked) locking operation.

Reported-by: Alexander Viro <viro@math.psu.edu>
2001-06-04 04:04:45 +00:00
paul
9471850c14 S_IFCHR is not a bit mask, it's just a value in a field. The correct
way to clear that field is to use S_IFMT.

Pointed out by BDE.
2001-06-04 03:39:14 +00:00
imp
87ef6dd449 #defines for pci way interrupt routing. 2001-06-04 03:36:22 +00:00
imp
b7a73ced2f Move the pcic interrupt from pcic.c to pcic_isa.c. The ISA handling
for card change interrupts is different than the pci stuff that's
coming soon.  Set the management irq in different ways.  If
pci_parallel interrutp routing, then use the PCI way of getting
interrupts.  Move polling mode into pcic_isa since when we're routing
via pci polling doesn't work because many bridges (systems hang solid).

If we're routing interrupts via pci, they can be shared, so flag them
as such.

Note, this doesn't actually change anything since the pci attachment
isn't quite ready to be committed.
2001-06-04 03:29:06 +00:00
imp
68781cda99 Minor style(9) nit. a|b -> a | b. 2001-06-04 03:13:45 +00:00
mjacob
7a95ffd839 Use correct flag in test whether this interrupt handler is fast or not.
PR:		27866
Submitted by:	Peter Jeremy <peter.jeremy@alcatel.com.au>
2001-06-04 00:52:09 +00:00
jesper
4ff715c022 Prevent denial of service using bogus fragmented IPv4 packets.
A attacker sending a lot of bogus fragmented packets to the target
(with different IPv4 identification field - ip_id), may be able
to put the target machine into mbuf starvation state.

By setting a upper limit on the number of reassembly queues we
prevent this situation.

This upper limit is controlled by the new sysctl
net.inet.ip.maxfragpackets which defaults to 200,
as the IPv6 case, this should be sufficient for most
systmes, but you might want to increase it if you have
lots of TCP sessions.
I'm working on making the default value dependent on
nmbclusters.

If you want old behaviour (no upper limit) set this sysctl
to a negative value.

If you don't want to accept any fragments (not recommended)
set the sysctl to 0 (zero).

Obtained from:	NetBSD
MFC after:	1 week
2001-06-03 23:33:23 +00:00
joerg
8166dba3c8 Fix my email address. I accidentally cut'npasted the wrong (old)
hostname laste time.
2001-06-03 20:41:21 +00:00
yar
27ef13f896 First, wrap the if_up() call into splimp()/splx() because
if_up() must be called at splnet or higher.
Second, set the IFF_RUNNING flag on an interface after its
resources (i.e. tunnel source and destination addresses)
have been set. Note that we don't set IFF_UP because it is
if_up()'s job to do that.

PR:		kern/27851
Submitted by:	Horacio J. PeÓa <horape@compendium.com.ar>
2001-06-03 17:31:11 +00:00
peter
f1767c79ae Fix reversed arguments to pci_write_config()
PR:		kern/9408
Submitted by:	Philipp Mergenthaler <philipp.mergenthaler@stud.uni-karlsruhe.de>
2001-06-03 09:45:40 +00:00
dd
eaa7d6fe18 Remove unused includes, use *min() inline functions rather than a
home-grown macro, rewrite a confusing conditional in snpdevtotty(),
and change ibuf to 512 bytes instead of 1024 bytes in dsnwrite().

Reviewed by:	bde
2001-06-03 05:17:39 +00:00
dd
e9e92e57f1 When tring to find out if this is a request for a write in
kernel_sysctl and userland_sysctl, check for whether new is NULL, not
whether newlen is 0.  This allows one to set a string sysctl to "".
2001-06-03 04:58:51 +00:00
nyan
4a336ef729 Merged from sys/kern/subr_diskmbr.c revision 1.45. 2001-06-03 04:44:26 +00:00
nyan
f9486ac10a Merged from sys/kern/subr_diskmbr.c revision 1.52. 2001-06-03 03:36:57 +00:00
dd
824074e63c Include sys/mutex.h to silence a warning. 2001-06-03 02:19:07 +00:00
jlemon
e2b8fe4ab9 Only touch the PCR register in order to set bits for the fxp driver.
The 3C509-TX card apparently had a slightly different version of the
chip, and has problems when this register is set.  The problem does
not appear on the 3C509{BC} cards, but since only the fxp driver needs
specific bits set, conditionalize on that.
2001-06-02 19:51:02 +00:00
obrien
b4047cede4 Support GCC 3.0 2001-06-02 17:35:50 +00:00
phk
b2f9beade9 Properly wrap mtx_intr_enable() macro in "do $bla while (0)" 2001-06-02 08:17:42 +00:00
nyan
c060eab5cb Merged from sys/i386/i386/machdep.c revision 1.454. 2001-06-02 06:30:56 +00:00
nyan
58f4d7553b Disabled unneeded code for PC98.
Submitted by:	NOKUBI Hirotaka <nokubi@ff.iij4u.or.jp>
2001-06-02 05:51:21 +00:00
nyan
69fcd42961 Merged from sys/i386/isa/npx.c revision 1.101. 2001-06-02 05:00:08 +00:00
tmm
87a858d545 Change the way information about swap devices is exported to be more
canonical: define a versioned struct xswdev, and add a sysctl node
handler that allows the user to get this structure for a certain device
index by specifying this index as last element of the MIB.
This new node handler, vm.swap_info, replaces the old vm.nswapdev
and vm.swapdevX.* (where X was the index) sysctls.
2001-06-01 22:53:10 +00:00
dirk
bf437699a2 Fix typo (opt_acc.h -> opt_aac.h) for AAC_COMPAT_LINUX. 2001-06-01 22:39:50 +00:00
jesper
42275c0786 Revert the last bits of my bogus move of NMBCLUSTERS
to <sys/param.h>
2001-06-01 21:47:34 +00:00
imp
81dbd8e316 The orm device. This device gobbles up the Option ROMs in the ISA
memory I/O space.  Otherwise, our resource allocation system might
mistakenly assign pccard, plug and play devices or other things
addresses that conflict with ROMs.

I cleaned up his code a little from the submited driver: style(9)
issues, commentary on why something that looks incorrect really is
correct.  Also noted that while a checksum field is defined for the
ROMs, enough common hardware neglects it to make it not worthwhile
checking.

Submitted by: Nikolai Saoukh <nms@otdel-1.org>
PR: 22078
2001-06-01 20:58:32 +00:00
gallatin
97157b4d0e Resurrect platform.pci_intr_map() and essentially undo the effects of
the interface conversion to platform.pci_intr_route().  I've left the
platform.pci_intr_route() function pointer in place, as well as
alpha_pci_route_interrupt(), but no platform currently implements it.

To work around the removal of alpha_platform_assign_pciintr(cfg);
from the pci probe code, I've hooked in calls to platform.pci_intr_map()
in pcib_read_config (similar to the x86 APIC_IO ifdef in pci_cfgregread)
for every chipset that has a platform which needs it.

While here, I've removed the interupt mapping/routing code from the
AS2x00 platform because its not required (it has never been present in
-stable).

Tested on: UP1000, Miata(GL), XP1000, AS2100, AS500
2001-06-01 17:39:11 +00:00
brian
18d829816a Support /dev/tun cloning. Ansify if_tun.c while I'm there.
Only tun0 -> tun32767 may now be opened as struct ifnet's if_unit
is a short.

It's now possible to open /dev/tun and get a handle back for an available
tun device (use devname to find out what you got).

The implementation uses rman by popular demand (and against my judgement)
to track opened devices and uses the new dev_depends() to ensure that
all make_dev()d devices go away before the module is unloaded.

Reviewed by:	phk
2001-06-01 15:51:10 +00:00
tmm
047342f08c This file is not needed any more, the definitions and declarations it
contained have been moved to i386/isa/icu.h and sys/interrupt.h.
2001-06-01 13:33:30 +00:00
tmm
9ce8a62347 Clean up the code exporting interrupt statistics via sysctl a bit:
- move the sysctl code to kern_intr.c
- do not use INTRCNT_COUNT, but rather eintrcnt - intrcnt to determine
  the length of the intrcnt array
- move the declarations of intrnames, eintrnames, intrcnt and eintrcnt
  from machine-dependent include files to sys/interrupt.h
- remove the hw.nintr sysctl, it is not needed.
- fix various style bugs

Requested by:	bde
Reviewed by:	bde (some time ago)
2001-06-01 13:23:28 +00:00
non
8314721211 Add a quirk entry for ARCHIVE Python 06408.
Approved by:	mjacob
2001-06-01 12:36:24 +00:00
ru
0c44ad95b8 - VFS_SET(msdos) -> VFS_SET(msdosfs)
- msdos.ko -> msdosfs.ko
- mount_msdos(8) -> mount_msdosfs(8)
- "msdos" -> "msdosfs" compatibility glue in mount(8)
2001-06-01 10:57:26 +00:00
ru
e7a85be33f Remove vestiges of MFS. 2001-06-01 10:07:28 +00:00
kris
e1524eb20c Add ``options RANDOM_IP_ID'' which randomizes the ID field of IP packets.
This closes a minor information leak which allows a remote observer to
determine the rate at which the machine is generating packets, since the
default behaviour is to increment a counter for each packet sent.

Reviewed by:    -net
Obtained from:  OpenBSD
2001-06-01 10:02:28 +00:00
obrien
538a64fd6b Back out jesper's 2001/05/31 14:58:11 PDT commit. It does not compile. 2001-06-01 09:51:14 +00:00
imp
57d12fd872 Change plxic to plxcard, per phk. He thnks plxic is too generic a
name.  I didn't do repo magic because this is so new.
2001-06-01 05:20:38 +00:00
jake
d729aaf555 Unlock the process returned from pfind() if it does not return NULL.
This fixes a witness lock violation for nfssvc returning with locks
held.

Submitted by:	Jean-Luc Richier <Jean-Luc.Richier@imag.fr>
PR:		kern/27776
2001-06-01 01:30:51 +00:00
wpaul
9d2ad26ca4 Grrr. Fix PR 27742 correctly this time. (At least I got -stable right.) 2001-06-01 00:34:50 +00:00
gallatin
5eae83e2d8 remove unneeded #include <vm/vm_map.h> 2001-05-31 23:31:34 +00:00
wpaul
359f5df65b Close PR #27742: allow the xl driver to receive VLAN tagged frames by
setting the 'max packet size' register in window 3. This only
works for cards based on the cyclone or newer chipsets (i.e. it
won't work with the original 3c905/boomerang cards).

There is a trick which will work with the boomerang, which is to turn
on the 'large packets ok' bit in the MAC control register, however this
lets the chip accept any frame up to 4K in length, which is larger than
the mbuf cluster buffers we use to receive frames. If somebody sends us
such a frame and the chip DMAs it to us, it could write past the end
of the cluster buffer and clobber something.

PR: kern/27742
2001-05-31 22:08:45 +00:00
jesper
726d973cb0 Move the definition of NMBCLUSTERS from src/sys/kern/uipc_mbuf.c
to <sys/param.h>, so it's available to src/sys/netinet/ip_input.c

MFC after:	1 week
2001-05-31 21:58:10 +00:00
jesper
bace144572 Change the default value of net.inet6.ip6.maxfragpackets from
200 to NMBCLUSTERS/4 to match the IPv4 case.

MFC after:	1 week
2001-05-31 21:57:53 +00:00
jesper
70faf8712a Prevent denial of service using bogus fragmented IPv4 packets.
A attacker sending a lot of bogus fragmented packets to the target
(with different IPv4 identification field - ip_id), may be able
to put the target machine into mbuf starvation state.

By setting a upper limit on the number of reassembly queues we
prevent this situation.

This upper limit is controlled by the new sysctl
net.inet.ip.maxfragpackets which defaults to NMBCLUSTERS/4

If you want old behaviour (no upper limit) set this sysctl
to a negative value.

If you don't want to accept any fragments (not recommended)
set the sysctl to 0 (zero)

Obtained from:	NetBSD (partially)
MFC after:	1 week
2001-05-31 21:57:29 +00:00
jesper
51b1367e42 Move the definition of NMBCLUSTERS from src/sys/kern/uipc_mbuf.c
to <sys/param.h>, so it's available to src/sys/netinet/ip_input.c,
and remove the now unneeded includes of "opt_param.h".

MFC after:	1 week
2001-05-31 21:56:44 +00:00
gallatin
70b10bbd04 Backout previous revision. While it fixed many platforms, it broke
all alphas with devices behind ppb's.  I'm working on a better solution now.

Note that all alphas that use per-platform interrupt mapping are broken
again (as they have been for several months)
2001-05-31 21:47:25 +00:00
wpaul
66a9685e9f Add device driver support for the Level 1 LXT1001 NetCellerator
gigabit ethernet controller chip. This device is used on some
fiber optic gigE cards from SMC, D-Link and Addtron. Jumbograms and
TCP/IP checksum offload on receive are supported. Hardware VLAN
filtering is not, because it doesn't play well with our existing
VLAN code. Also add manual page.

There is a 4.x version of this driver available at
http://www.freebsd.org/~wpaul/Level1/4.x if anyone feels adventurous
and wants to test it. I still need to do performance testing and
tuning with this device.

(For my next trick, I will make the 3Com 3cR990 sit up and beg.)
2001-05-31 21:44:26 +00:00
jesper
7e194a2420 Disable rfc1323 and rfc1644 TCP extensions if we havn't got
any response to our third SYN to work-around some broken
terminal servers (most of which have hopefully been retired)
that have bad VJ header compression code which trashes TCP
segments containing unknown-to-them TCP options.

PR:		kern/1689
Submitted by:	jesper
Reviewed by:	wollman
MFC after:	2 weeks
2001-05-31 19:24:49 +00:00
imp
f15f4b4af3 plxic device 2001-05-31 19:06:46 +00:00
imp
bc197cee36 Add a simple plx pci9052 based pccard bridges. This doesn't work yet,
but I'll be fleshing this out as I have time.  This should mean we no
longer need to have an and wi pci attachments, but that's a ways off.
2001-05-31 19:04:29 +00:00
jhb
ff6bb62be3 Revert the previous commit in favor of the fix in rev 1.42 of
ufs/ffs/ffs_extern.h instead.

Requested by:	bde
2001-05-30 23:09:19 +00:00
jhb
b033de0fdc Forward declare struct cg to quiet a warning.
Submitted by:	bde
2001-05-30 23:08:40 +00:00
jhb
2258ad9ec5 Catch up to the axeing of MFS and fix the ia64 build.
Forgotten by:	a Danish axe-wielder
2001-05-30 23:06:14 +00:00
cg
92de892cfa fix typo 2001-05-30 22:46:40 +00:00
cg
8829613a30 no longer used 2001-05-30 22:41:04 +00:00
cg
67fa2b23c6 update this driver to use new firmware and incorporate many fixes.
this works on cs4630 chips, and should implement the clkrun hack for
thinkpads- this will display diagnostic messages when triggered until its
correctness is established.
2001-05-30 22:38:31 +00:00
cg
2c8f781b18 new (gpl licensed) firmware image for cs4280/cs46xx sound chips 2001-05-30 22:28:30 +00:00
jhb
df2e009e62 Quiet warnings by adding a prototype for set_user_ldt_rv() and making it
conditional on #ifdef SMP.
2001-05-30 21:57:52 +00:00
cg
a188d3be39 state the licencing terms for this file
Obtained From:	Yamaha
2001-05-30 19:05:47 +00:00
jhb
d280325d88 We can't grab the sched_lock in set_user_ldt() because when it is called
from cpu_switch(), curproc has been changed, but the sched_lock owner will
not be updated until we return to mi_switch(), thus we deadlock against
ourselves.  As a workaround, push the acquire and release of sched_lock out
to the callers of set_user_ldt().  Note that we can't use a mtx_assert() in
set_user_ldt for the same reason.

Sleuting by:	tmm
Tested by:	tmm, dougb
2001-05-30 14:35:22 +00:00
ru
f478ecd8d3 Add an integer field to keep protocol-specific flags with links.
For FTP control connection, keep the CRLF end-of-line termination
status in there.

Fixed the bug when the first FTP command in a session was ignored.

PR:		24048
MFC after:	1 week
2001-05-30 14:24:35 +00:00
takawata
8c9c53e10b Fix include path for recent acpica update. 2001-05-30 10:12:20 +00:00
sos
38d10280a6 Dont try to play tracks outside whats on the media.
PR 26647
2001-05-30 08:06:57 +00:00
sos
9a9b22ddc1 Update to support the NEC NR-7500A burners. 2001-05-30 07:28:57 +00:00
dougb
4f07dc6b31 Don't ask to build something that doesn't exist anymore. 2001-05-30 06:24:47 +00:00
dougb
c039fbaf3b Move the mfs deletion process down the road a few steps 2001-05-30 06:14:28 +00:00
msmith
789b531931 What I get for "fixing" at the last minute. Correct a mis-merge of takawata's
timeout fix and put proc.h into the right file.

Submitted by:	nnd@mail.nsk.ru
2001-05-30 05:34:10 +00:00
dd
32b1a4110c Export via sysctl:
* all members of msginfo from sysv_msg.c;
  * msqids from sysv_msg.c;
  * sema from sysv_sem.c; and
  * shmsegs from sysv_shm.c;

These will be used by ipcs(1) in non-kvm mode.

Reviewed by:	tmm
2001-05-30 03:28:59 +00:00
mjacob
f321a52b0e move wx to be part of miibus requiring chipsets 2001-05-30 03:20:52 +00:00
jhb
a877c444cf - Catch up to the VM mutex changes.
- Sort includes in a few places.
2001-05-30 00:03:13 +00:00
jhb
3d4bb0e38d Include <ufs/ffs/fs.h> to get the definition of struct cg to quiet a
warning.
2001-05-29 23:53:16 +00:00
dcs
50cbca77e3 Go back to 1.20 again. 2001-05-29 23:49:10 +00:00
dcs
fa71f8751f Turn dictthreshold and dictincrease into cell-sized variables, so
they can be used with cell operators like !.

As I did this, I noticed the whole CELL thing might have problems with
big endian architectures with sizeof(int)!=sizeof(void*).
2001-05-29 23:44:12 +00:00
jhb
9a95925dcf GC #if 0'd calls to releasing and acquiring the old style giant kernel
lock.
2001-05-29 23:35:48 +00:00
wpaul
9a3cecd14f Per jlemon: add code to nge_rxeof() to allow verification of TCP and
UDP checksums too, not just IP. The chip only tells us if the checksum
is ok, it does not give us a copy of the partial checksum for later
processing. We have to deal with this the right way, but we can deal
with it.
2001-05-29 22:14:03 +00:00
wpaul
a85eca56dc Fix mind-o in nge_rxeof(): I used CSUM_IP_CHECKED twice instead of
CSUM_IP_CHECKED|CSUM_IP_VALID.
2001-05-29 21:44:45 +00:00
phk
d442761285 Remove last vestiges of MFS. 2001-05-29 21:21:53 +00:00
phk
9dfeaf738e Remove MFS 2001-05-29 20:39:47 +00:00
msmith
89dd86f647 Remove old ACPI CA code. These will be drained from the repo at some
future date.
2001-05-29 20:22:11 +00:00
msmith
7996f19f43 - Updates for new constant naming in the ACPI CA 20010518 update.
- Use __func__ instead of __FUNCTION.
 - Support power-off to S3 or S5 (takawata)
 - Enable ACPI debugging earlier (with a sysinit)
 - Fix a deadlock in the EC code (takawata)
 - Improve arithmetic and reduce the risk of spurious wakeup in
   AcpiOsSleep.
 - Add AcpiOsGetThreadId.
 - Simplify mutex code (still disabled).
2001-05-29 20:13:42 +00:00
msmith
cc0ed18a81 New files for the ACPI CA 20010518 update. 2001-05-29 20:05:59 +00:00
msmith
2e3b439906 New files and layout for the ACPI CA 20010518 update. 2001-05-29 20:05:35 +00:00
msmith
810dc37f4b - wbinvd isn't an inline on ia64.
- includes are not in subdirectories.
2001-05-29 20:03:32 +00:00
msmith
adc622bc2d Merge FreeBSD-specific changes with the ACPI CA 20010518 release. 2001-05-29 19:56:18 +00:00
jesper
aa7ec52010 Inline TCP_REASS() in the single location where it's used,
just as OpenBSD and NetBSD has done.

No functional difference.

MFC after:	2 weeks
2001-05-29 19:54:45 +00:00
msmith
96a626e3c3 This commit was generated by cvs2svn to compensate for changes in r77424,
which included commits to RCS files with non-trunk default branches.
2001-05-29 19:52:40 +00:00
msmith
bc4d4229dc Import the 20010518 Intel ACPI CA release. Note that Intel's directory layout
keeps changing, so to reduce repository thrash everything has been moved into
a single directory.  (repo copy involved)
2001-05-29 19:52:40 +00:00
msmith
7bec4652bb This commit was generated by cvs2svn to compensate for changes in r77422,
which included commits to RCS files with non-trunk default branches.
2001-05-29 19:52:32 +00:00
msmith
3c0029a0e8 Import the 20010518 Intel ACPI CA release. Note that Intel's directory layout
keeps changing, so to reduce repository thrash everything has been moved into
a single directory.  (repo copy involved)
2001-05-29 19:52:32 +00:00
jesper
02dca88184 properly delay acks in half-closed TCP connections
PR:	24962
Submitted by:	Tony Finch <dot@dotat.at>
MFC after:	2 weeks
2001-05-29 19:51:45 +00:00
phk
785e1e1e17 Remove MFS from the kernel. 2001-05-29 18:50:30 +00:00
phk
9fc285b0df Remove MFS from configs idea of the world. 2001-05-29 18:49:46 +00:00
phk
9937949fe2 Remove MFS compat bits. 2001-05-29 18:49:23 +00:00
phk
bad4fc51cc Remove MFS options from all example kernel configs. 2001-05-29 18:49:06 +00:00
phk
8e6e314c51 Remove the hack-around for the slice/label code, it didn't
cover the hole.
2001-05-29 18:19:57 +00:00
iedowse
fdb42dd4bf Since the netexport struct was centralised to 'struct mount',
attempting to remove nonexistant exports with MNT_DELEXPORT returns
an error; before this change it always succeeded. This caused
mountd(8) to log "can't delete exports for /whatever" warnings.

Change the error code from EINVAL to a more specific ENOENT, and
make mountd ignore this error when deleting the export list. I
could have just restored the previous behaviour of returning success,
but I think an error return is a useful diagnostic.

Reviewed by:	phk
2001-05-29 17:46:52 +00:00
sos
0769bdabee Fix bug in debug code 2001-05-29 17:27:36 +00:00
sos
f6e371bd1f Fix for the fixate problem on the Yamaha burners. 2001-05-29 17:19:42 +00:00
ache
5639a39cc3 Add B460800 define 2001-05-29 17:13:18 +00:00
ache
43c00ef868 Add more high speeds
Fix tabs
2001-05-29 17:06:32 +00:00
jhb
0c84f37525 Don't hold the VM lock across VOP's and other things that can sleep. 2001-05-29 16:58:25 +00:00
phk
3c8f4ed442 Remove a comment which was past its shelf life.
PR:		18750
Submitted by:	Tony Finch <dot@dotat.at>
2001-05-29 09:22:22 +00:00
phk
b7bd9d6b28 Remove unused d_parms_t typedef
Spotted by:	grog
2001-05-29 08:02:31 +00:00
obrien
22e09e1bf0 Revert the ugly band-aide[tm] hack of rev 1.12.
The offending loader.4th commit (rev 1.20) has been backed out.
2001-05-29 01:48:06 +00:00
dcs
b61be3ee13 Revert 1.20, as it causes mysterious problems to the Alpha people. 2001-05-29 00:34:32 +00:00
mjacob
19b20edd40 Spring MegaChange #1.
----

Make a device for each ISP- really usable only with devfs and add an ioctl
entry point (this can be used to (re)set debug levels, reset the HBA,
rescan the fabric, issue lips, etc).

----

Add in a kernel thread for Fibre Channel cards. The purpose of this
thread is to be woken up to clean up after Fibre Channel events
block things.  Basically, any FC event that casts doubt on the
location or identify of FC devices blocks the queues. When, and
if, we get the PORT DATABASE CHANGED or NAME SERVER DATABASE CHANGED
async event, we activate the kthread which will then, in full thread
context, re-evaluate the local loop and/or the fabric. When it's
satisfied that things are stable, it can then release the blocked
queues and let commands flow again.

The prior mechanism was a lazy evaluation. That is, the next command
to come down the pipe after change events would pay the full price
for re-evaluation. And if this was done off of a softcall, it really
could hang up the system.

These changes brings the FreeBSD port more in line with the Solaris,
Linux and NetBSD ports. It also, more importantly, gets us being
more proactive about topology changes which could then be reflected
upwards to CAM so that the periph driver can be informed sooner
rather than later when things arrive or depart.

---

Add in the (correct) usage of locking macros- we now have lock transition
macros which allow us to transition from holding the CAM lock (Giant)
and grabbing the softc lock and vice versa. Switch over to having this
HBA do real locking. Some folks claim this won't be a win. They're right.
But you have to start somewhere, and this will begin to teach us how
to DTRT for HBAs, etc.

--

Start putting in prototype 2300 support.  Add back in LIP
and Loop Reset as async events that each platform will handle.
Add in another int_bogus instrumentation point.

Do some more substantial target mode cleanups.

MFC after:	8 weeks
2001-05-28 21:20:43 +00:00
phk
f80decdc0c Make the beep duration independent of HZ.
PR:		25201
Submitted by:	Akio Morita amorita@meadow.scphys.kyoto-u.ac.jp
MFC after:	1 week
2001-05-28 21:11:38 +00:00
phk
db024351f8 Clarify that the old CD-ROM drivers are only for non-ATAPI drives.
PR:		25369
Submitted by:	Matt Emmerton matt@gsicomp.on.ca
MFC after:	1 week
2001-05-28 20:43:36 +00:00
phk
aaaac2aa6c With the new kernel dev_t conversions done at release 4.X,
it becomes possible to trap in ptsstop() in kern/tty_pty.c
     if the slave side has never been opened during the life of a kernel.

     What happens is that calls to ttyflush() done from ptyioctl() for the
     controlling side end up calling ptsstop() [via (*tp->t_stop)(tp, <X>)]
     which evaluates the following:

	     struct pt_ioctl *pti = tp->t_dev->si_drv1;

     In order for tp->t_dev to be set, the slave device must first be
     opened in ttyopen() [kern/tty.c].

     It appears that the only problem is calls to (*tp->t_stop)(tp, <n>),
     so this could also happen with other ioctls initiated by the
     controlling side before the slave has been opened.

PR:		27698
Submitted by:	David Bein bein@netapp.com
MFC after:	6 days
2001-05-28 20:22:12 +00:00
ru
110c4c81c8 Name this module msdos.ko so that mount_msdos(8) can autoload
it with vfsload("msdos").

(The proper fix would be to rename the `msdos' file system to
`msdosfs' in VFS_SET(), and mount_msdos(8) to mount_msdosfs(8).
But that would break too many existing fstab(5) setups, and
would require a lot of unnecessary documentation and code
msdos -> msdosfs changes.)

Noticed by:	markm
2001-05-28 17:10:46 +00:00
phk
8a71a60369 The disklabel/slice code is more twisted than I thought. Revert to
calling the cdevsw_add() unconditionally.
2001-05-28 16:12:55 +00:00
obrien
01707e0035 One needs to introduce things with a `.file' directive before trying to
do a .loc on it.  BTW, the .loc needs to be in a .text section.
gas 2.11.0 catches these oversights where previous versions did not.
2001-05-28 09:52:21 +00:00
obrien
6b180e3812 grep -v offending lines from loader.4th until the master version of it
is fixed.
2001-05-28 05:18:13 +00:00
obrien
a8cd688fab Add the generated help files to CLEANDIRS.
Found by:	rm -rf /usr/obj/usr/src/sys/boot ; make ; make clean ; cvs -q up
2001-05-28 05:12:13 +00:00
imp
476e3d24e2 Turns out that one bit isn't enough. Introduce two new fields
csc_route and func_route to hold the way that each interrupt is
routed.  csc is Card Status Change in the datasheets and standard, but
is called "Management Interrupt" in FreeBSDese.  There are three types
of interrupt routing:  ISA parallel, PCI parallel and ISA serial (some
chipsets support other types as well, but I don't plan on supporting
them).

When we try to allocate an interrupt, and the type for that interrupt
is pci_parallel, allow it to be shared by oring in RF_SHAREABLE to the
flags argument.  Introduce pcic_alloc_resource to allow this to
happen.
2001-05-28 02:53:02 +00:00
brian
723d7c5d15 Handle NULL struct device *s 2001-05-28 01:00:03 +00:00
jesper
f3057f7160 In sys/boot/common/module.c, near line 105 a request for a raw
file is processed by passing its name in argv[1]:
        return(mod_loadobj(typestr, argv[1]));
however, it is not tested to see if argv[1] actually is defined.

At best, mod_loadobj() near line 244 returns an error like
"can't find 'garbage'" but if the "filename" entered is sufficiently
long, some buffer gets overrun. Of course, "load -t filename" is
actually a typo because we meant to type "load -t mfs_root filename";
nevertheless, a hung machine seems like too harsh a punishment for
such a small typo...

PR:			i386/27693
Submitted by:	Adrian Steinmann <ast@marabu.ch>
MFC after:	1 week
2001-05-27 23:26:11 +00:00
gallatin
e575dde359 finally fix intr routing on alphas such as the as500 after months of
breakage:

- call PCIB_ROUTE_INTERRUPT() regardless of how valid the intline looks.
  Some alphas leave garbage in the intline and leave the intr mapping
  to OS platform support routines that map slots/buses to intlines
- Down in the alpha pci code, first try platform.pci_intr_route() and
  if it doesn't exist or returns garbage, just read the intline out of
  config space.

tested on AS500 (garbage in intline) and UP1000 (PC-like, intline is valid)

Note that a nice little hack like the APIC_IO section of pci_cfgregread()
is not workable.  This is because the calling interface for
alpha_pci_route_interrupt() requires us to figure out the bus/slot/etc
from a device_t.  At pci_read_device() time, we don't have a device_t
for the bus/slot/func in question.
2001-05-27 22:22:03 +00:00
rwatson
8c5428e595 o uifree() the cr_ruidinfo in crfree() as well as cr_uidinfo now that the real uid
info is in the credential also.

Submitted by:	egge
2001-05-27 21:43:46 +00:00
scottl
168e0569af Close the opening comment line on these two files that mysteriouly vanished. 2001-05-27 21:07:39 +00:00
rnordier
83f67b8f31 Fix reboot buglet when BOOT_BTX_NOHANG is defined.
Submitted by: Umesh Krishnaswamy <umesh@juniper.net>
2001-05-27 20:15:10 +00:00
cg
c86d13a3e1 beginnings of virtual playback channel support
instead of using two malloced arrays for storing channel lists, use an
slist.  convert the sndstat device to use sbufs and optionally provide more
detail about channel state.

vchans are software mixed playback channels.  they are not enabled by this
commit.  they use the feeder infrastructure to emulate normal playback
channels in a manner transparent to applications, whilst providing as many
channels are desired, especially suitable for devices with only one hardware
playback channel.  in the future they will provide additional features.

those wishing to test this functionality will need to add vchan.c to
sys/conf/files and use 'sysctl -w hw.snd.pcm0.vchans' to enable it.

blocksize and auto-rate selection are not yet supported.
2001-05-27 17:22:00 +00:00
dcs
c4a3cb3687 As in with ":", check dictionary space and increase it if necessary before
"create".
2001-05-27 16:30:10 +00:00
cg
55c514ea72 add a new method for retrieving feeder parameters 2001-05-27 14:49:14 +00:00
cg
ebee48177e don't erase info in sndbuf_setup()
set free'd pointers to NULL in sndbuf_free()
add a new function
2001-05-27 14:39:34 +00:00