Commit Graph

46355 Commits

Author SHA1 Message Date
njl
37b624bbca Fix some warnings by commenting out unused code. 2004-04-14 17:47:42 +00:00
njl
47c9dd6929 Only try to set the ACPI power state if the handle is valid. There was
probably no problem with this except it may have had the side effect of
registering a NULL consumer.
2004-04-14 17:46:21 +00:00
njl
e3d67bca30 Even though the patch has been submitted to the vendor, this file is off
the vendor branch.  Once more, with feeling!
2004-04-14 16:52:19 +00:00
njl
7f3dad2879 Unbreak the DDB build by replacing #includes that were deleted.
Pointed out by:	Tai-hwa Liang, Xin LI
Pointed hat to:	njl
2004-04-14 16:24:28 +00:00
green
4159ce22be The newpcm headers currently #define away INTR_MPSAFE and INTR_TYPE_AV
because they bogusly check for defined(INTR_MPSAFE) -- something which
never was a #define.  Correct the definitions.

This make INTR_TYPE_AV finally get used instead of the lower-priority
INTR_TYPE_TTY, so it's quite possible some improvement will be had
on sound driver performance.  It would also make all the drivers
marked INTR_MPSAFE actually run without Giant (which does seem to
work for me), but:
	INTR_MPSAFE HAS BEEN REMOVED FROM EVERY SOUND DRIVER!
It needs to be re-added on a case-by-case basis since there is no one
who will vouch for which sound drivers, if any, willy actually operate
correctly without Giant, since there hasn't been testing because of
this bug disabling INTR_MPSAFE.

Found by:	"Yuriy Tsibizov" <Yuriy.Tsibizov@gfk.ru>
2004-04-14 14:57:49 +00:00
wpaul
9765d24df6 Continue my efforts to imitate Windows as closely as possible by
attempting to duplicate Windows spinlocks. Windows spinlocks differ
from FreeBSD spinlocks in the way they block preemption. FreeBSD
spinlocks use critical_enter(), which masks off _all_ interrupts.
This prevents any other threads from being scheduled, but it also
prevents ISRs from running. In Windows, preemption is achieved by
raising the processor IRQL to DISPATCH_LEVEL, which prevents other
threads from preempting you, but does _not_ prevent device ISRs
from running. (This is essentially what Solaris calls dispatcher
locks.) The Windows spinlock itself (kspin_lock) is just an integer
value which is atomically set when you acquire the lock and atomically
cleared when you release it.

FreeBSD doesn't have IRQ levels, so we have to cheat a little by
using thread priorities: normal thread priority is PASSIVE_LEVEL,
lowest interrupt thread priority is DISPATCH_LEVEL, highest thread
priority is DEVICE_LEVEL (PI_REALTIME) and critical_enter() is
HIGH_LEVEL. In practice, only PASSIVE_LEVEL and DISPATCH_LEVEL
matter to us. The immediate benefit of all this is that I no
longer have to rely on a mutex pool.

Now, I'm sure many people will be seized by the urge to criticize
me for doing an end run around our own spinlock implementation, but
it makes more sense to do it this way. Well, it does to me anyway.

Overview of the changes:

- Properly implement hal_lock(), hal_unlock(), hal_irql(),
  hal_raise_irql() and hal_lower_irql() so that they more closely
  resemble their Windows counterparts. The IRQL is determined by
  thread priority.

- Make ntoskrnl_lock_dpc() and ntoskrnl_unlock_dpc() do what they do
  in Windows, which is to atomically set/clear the lock value. These
  routines are designed to be called from DISPATCH_LEVEL, and are
  actually half of the work involved in acquiring/releasing spinlocks.

- Add FASTCALL1(), FASTCALL2() and FASTCALL3() macros/wrappers
  that allow us to call a _fastcall function in spite of the fact
  that our version of gcc doesn't support __attribute__((__fastcall__))
  yet. The macros take 1, 2 or 3 arguments, respectively. We need
  to call hal_lock(), hal_unlock() etc... ourselves, but can't really
  invoke the function directly. I could have just made the underlying
  functions native routines and put _fastcall wrappers around them for
  the benefit of Windows binaries, but that would create needless bloat.

- Remove ndis_mtxpool and all references to it. We don't need it
  anymore.

- Re-implement the NdisSpinLock routines so that they use hal_lock()
  and friends like they do in Windows.

- Use the new spinlock methods for handling lookaside lists and
  linked list updates in place of the mutex locks that were there
  before.

- Remove mutex locking from ndis_isr() and ndis_intrhand() since they're
  already called with ndis_intrmtx held in if_ndis.c.

- Put ndis_destroy_lock() code under explicit #ifdef notdef/#endif.
  It turns out there are some drivers which stupidly free the memory
  in which their spinlocks reside before calling ndis_destroy_lock()
  on them (touch-after-free bug). The ADMtek wireless driver
  is guilty of this faux pas. (Why this doesn't clobber Windows I
  have no idea.)

- Make NdisDprAcquireSpinLock() and NdisDprReleaseSpinLock() into
  real functions instead of aliasing them to NdisAcaquireSpinLock()
  and NdisReleaseSpinLock(). The Dpr routines use
  KeAcquireSpinLockAtDpcLevel() level and KeReleaseSpinLockFromDpcLevel(),
  which acquires the lock without twiddling the IRQL.

- In ndis_linksts_done(), do _not_ call ndis_80211_getstate(). Some
  drivers may call the status/status done callbacks as the result of
  setting an OID: ndis_80211_getstate() gets OIDs, which means we
  might cause the driver to recursively access some of its internal
  structures unexpectedly. The ndis_ticktask() routine will call
  ndis_80211_getstate() for us eventually anyway.

- Fix the channel setting code a little in ndis_80211_setstate(),
  and initialize the channel to IEEE80211_CHAN_ANYC. (The Microsoft
  spec says you're not supposed to twiddle the channel in BSS mode;
  I may need to enforce this later.) This fixes the problems I was
  having with the ADMtek adm8211 driver: we were setting the channel
  to a non-standard default, which would cause it to fail to associate
  in BSS mode.

- Use hal_raise_irql() to raise our IRQL to DISPATCH_LEVEL when
  calling certain miniport routines, per the Microsoft documentation.

I think that's everything. Hopefully, other than fixing the ADMtek
driver, there should be no apparent change in behavior.
2004-04-14 07:48:03 +00:00
njl
6ad9bc9a77 Style cleanups, M_ZERO instead of bzero. 2004-04-14 03:45:20 +00:00
njl
7e03a67713 Style cleanups, use M_ZERO instead of bzero, unify the !semaphore and
semaphore return paths.
2004-04-14 03:43:06 +00:00
njl
10f3b6fc29 Style cleanup, plus properly backup partial resource allocation in
AcpiOsInstallInterruptHandler() in the case of failure to initialize.
2004-04-14 03:41:06 +00:00
njl
d84baf420a Style cleanups to reduce diffs to locking tree. 2004-04-14 03:39:08 +00:00
njl
ad7733a68a Style and printf message cleanups. 2004-04-14 03:34:11 +00:00
njl
2829e3ec62 Use METHOD_VIDEO instead of the method string itself.
Pointed out by:	Andrew Thompson
2004-04-14 03:32:01 +00:00
njl
9e1427e0cf Use TRUE for a boolean and a style nit. 2004-04-14 03:30:09 +00:00
imp
cd0c9b1f7e sx was randomly added to NOTES. Instead, place it in the misc
hardware in properly sorted order.  Fix a little disorder while I'm
here.

Submitted by: bde
2004-04-14 02:25:31 +00:00
njl
fbb8b45dea Update the name for edge triggered for the 20040402 import. 2004-04-14 02:20:35 +00:00
imp
76819b407f Prefer uint16_t to ushort.
Submitted by: bde
2004-04-14 02:20:01 +00:00
njl
fcb88d0194 Check in files with local changes:
* In the resume path, give up after waiting for a while
for WAK_STS to be set.  Some BIOSs never set it.

* Allow access to the field if it is within the region size rounded
up to a multiple of the access byte width.  This overcomes "off-by-one"
programming errors in the AML often found in Toshiba laptops.
2004-04-14 02:17:00 +00:00
njl
fbcf6e9700 Check in unmodified files off the vendor branch. 2004-04-14 02:14:51 +00:00
njl
565e13e588 This commit was generated by cvs2svn to compensate for changes in r128212,
which included commits to RCS files with non-trunk default branches.
2004-04-14 02:10:27 +00:00
njl
3c67c2e8d5 Import ACPI-CA 20040402 distribution. 2004-04-14 02:10:27 +00:00
njl
ac3f2a8703 Add another cleanfile for future imports. 2004-04-14 02:03:33 +00:00
luigi
94049d0810 In an effort to simplify the routing code, try to deprecate rtalloc()
in favour of rtalloc_ign(), which is what would end up being called
anyways.

There are 25 more instances of rtalloc() in net*/ and
about 10 instances of rtalloc_ign()
2004-04-14 01:13:14 +00:00
brooks
6a86b01672 Staticize <if>_clone_{create,destroy} functions.
Reviewed by:	mlaier
2004-04-14 00:57:49 +00:00
njl
36be62a85e Add support for video output switching. It appears no systems use HCI to
change the video output but use a separate device with a DSSX method
and a HID of "TOS6201" instead.  We use a pseudo-driver to get the handle
for this object and pass it to the acpi_toshiba driver.

This is untested but seems to match the Linux Toshiba driver.
2004-04-14 00:23:58 +00:00
imp
d5f2a0a5ed Boomerang 10/100BT (found in 2c905-TX) chips apparently suffer the
same problems as their Hurricane 575* bretheren in that one could set
the memory mapped port, but that has no effect.  Add a quirk for this.

# I'll have to see if I can dig up documentation on these parts to see
# if there's someway software can know this other than a table...
2004-04-13 19:34:20 +00:00
imp
b471e53762 Some devices have what appear to be invalid BARs. They are invalid in
the sense that any write to them reads back as a 0.  This presents a
problem to our resource allocation scheme.  If we encounter such vars,
the code now treats them as special, allowing any allocation against
them to succeed.  I've not seen anything in the standard to clearify
what host software should do when it encounters these sorts of BARs.

Also cleaned up some output while I'm here and add commmented out
bootverbose lines until I'm ready to reduce the verbosity of boot
messages.

This gets a number of south bridges and ata controllers made mostly by
VIA, AMD and nVidia working again.  Thanks to Soren Schmidt for his
help in coming up with this patch.
2004-04-13 19:31:57 +00:00
fjoe
14d6c54105 Use ifconfig(8) for setting common 802.11 parameters.
Submitted by:	Stanislav A. Svirid <count@riss-telecom.ru>
2004-04-13 19:25:26 +00:00
fjoe
43b27a4d76 Add Direct Sequence 354K and 512K (needed for arl(4)). 2004-04-13 19:23:46 +00:00
imp
d14cbe0db8 Remove extra copy of code.
Noticed by: Carlos Velasco
2004-04-13 14:39:26 +00:00
nyan
7b1ee4071d Enable the sx driver on i386 and pc98. 2004-04-13 14:04:25 +00:00
des
8f6e7eec62 Use headers from the kernel source tree rather than installed headers.
Submitted by:	ru
2004-04-13 13:43:11 +00:00
luigi
f83ca5e62d route.h: introduce a macro, SA_SIZE(struct sockaddr *) which returns
the space occupied by a struct sockaddr when passed through a
routing socket.
Use it to replace the macro ROUNDUP(int), that does the same but
is redefined by every file which uses it, courtesy of
the School of Cut'n'Paste Programming(TM).

(partial) userland changes to follow.
2004-04-13 11:22:22 +00:00
sos
cc41608d4e Add support for the Promise command sequencer present on all modern Promise
controllers (PDC203** PDC206**).

This also adds preliminary support for the Promise SX4/SX4000 but *only*
as a "normal" Promise ATA controller (ATA RAID's are supported though
but only RAID0, RAID1 and RAID0+1).

This cuts off yet another 5-8% of the command overhead on promise controllers,
making them the fastest we have ever had support for.

Work is now continuing to add support for this in ATA RAID, to accellerate
ATA RAID quite a bit on these controllers, and especially the SX4/SX4000
series as they have quite a few tricks in there..

This commit also adds a few fixes to the SATA code needed for proper support.
2004-04-13 09:44:20 +00:00
ru
cd72891375 Bump __FreeBSD_version on behalf of the new .warning directive in make(1).
Requested by:	kris
2004-04-13 09:33:33 +00:00
imp
b449361466 Fix off by one error, twice.
Submitted by: Carlos Velasco (first one), jhb (second one)
2004-04-12 23:02:21 +00:00
phk
200ffbe56d Do not drop Giant around the poll method yet, we're not ready for it. 2004-04-12 21:52:52 +00:00
imp
09643af85a MFp4:
Alignment for pccards should also be treated in a similar way that
	we tread it for cardbus cards.

	Remove bogus debugs while I'm here.

# This is also necessary to make the CIS reading work.

Submitted by: Carlos Velasco
2004-04-12 21:04:54 +00:00
imp
67c5859522 Improve reading of CIS cards:
(1) Align to 64k for the CIS.  Some cards don't like it when we aren't
    aligned to a 64k boundary.  I can't find anything in the standard
    that requires this, but I have 1/2 dozen cards that won't work at
    all unless I enable this.
(2) Sleep 1s before scanning the CIS.  This may be a nop, but has little
    harm.
(3) The CIS can be up to 4k in some weird, odd-ball edge cases.  Since we
    have limiters for when that's not the case, it does no harm to increase
    it to 4k.

#1 was submitted, in a different form, by Carlos Velasco.
2004-04-12 20:56:34 +00:00
luigi
9d98841616 remove an almost-duplicate piece of code by setting the loop
limits appropriately.
2004-04-12 20:26:01 +00:00
luigi
1a6dae835c in rtinit(), remove one useless variable, and move a few others
within the block where they are used.
2004-04-12 20:24:30 +00:00
cperciva
7eb8531271 stop() no longer needs sched_lock held; in fact, holding sched_lock causes
a LOR against sleepq.  Fix the comment, and fix ptracestop() to pick up
sched_lock after stop() rather than before.

Reported by:	Scott Sipe <cscotts@mindspring.com>
Reviewed by:	rwatson, jhb
2004-04-12 15:56:05 +00:00
ru
14233a5a33 Count outgoing link-level broadcast packets in if_omcasts.
I'm not sure this is completely correct but at least this
is consistent with the accounting of incoming broadcasts.

PR:		kern/65273
Submitted by:	David J Duchscher <daved@tamu.edu>
2004-04-12 14:59:25 +00:00
mux
006bc4ac4c Don't send the available space as is in the FSSTAT call. Under
FreeBSD, we can have a negative available space value, but the
corresponding fields in the NFS protocol are unsigned.  So
trnucate the value to 0 if it's negative, so that the client
doesn't receive absurdly high values.

Tested by:	cognet
2004-04-12 13:02:21 +00:00
markm
7743e85352 Fix "sleeping without a mutex" panic. 2004-04-12 09:13:24 +00:00
njl
a9c2757cc6 Remove a check for the return value added in rev 1.41. It's not an error
to fail to turn off a fan, since the case is that it's usually already off.
2004-04-12 05:04:47 +00:00
imp
3688839453 Move sx to i386/NOTES for the moment. I missed the
enable/disable_intr() in the code.
2004-04-12 02:36:51 +00:00
mux
cfce98c517 Bump __FreeBSD_version for getgrent(3) removal. I doubt anything
outside of the tree uses it, but it doesn't cost anything.
2004-04-11 21:57:07 +00:00
mux
de871a9ba9 Belatedly remove the getvfsent(3) API. All the consumers have been
updated to use getvfsbyname(3) or the vfs.conflist sysctl since a
long time, except mount_smbfs(8) which has just been fixed.
2004-04-11 21:36:31 +00:00
mux
6b230f7964 Put struct ovfsconf inside BURN_BRIDGES as well. 2004-04-11 21:26:07 +00:00
mux
79217d1505 Put deprecated sysctl code inside BURN_BRIDGES. 2004-04-11 21:09:22 +00:00
ru
157640c616 Implemented per-interface polling(4) control. 2004-04-11 21:01:12 +00:00
ru
bade226899 Implemented per-interface polling(4) control. 2004-04-11 20:34:08 +00:00
imp
ef96ba541f Add sx driver, since it looks like it should work on all
architectures.
2004-04-11 20:17:34 +00:00
imp
8a7f14cc73 Update to recent driver api changes. 2004-04-11 20:15:15 +00:00
imp
761024be8e Add glue for new sx driver. 2004-04-11 20:01:18 +00:00
alc
643a21e287 Use vm_page_hold() rather than vm_page_wire() for short-duration page
wiring.  The reason being that vm_page_hold() is cheaper.
2004-04-11 19:57:11 +00:00
imp
a0e860ef19 Frank Mayhar's <frank@exit.com> sx driver for older Specialix
I/O8+ and I/O4+ intelligent serial controllers.  si is for
completely different hardware, also made by Specialix.
2004-04-11 19:32:20 +00:00
ru
3f9b8e99a0 Implemented per-interface polling(4) control. 2004-04-11 19:25:56 +00:00
imp
7764e9e2f9 Add note about why we're ignoring the below 1MB bit. 2004-04-11 19:22:25 +00:00
ru
a93512febd Fixed resetting of the watchdog timer and queue full flag. 2004-04-11 18:28:14 +00:00
mlaier
d2fa2c987e Commit import of OpenBSD-stable fix:
Fix by dhartmei@ and mcbride@
 1.433
 Properly m_copyback() modified TCP sequence number after demodulation
 1.432
 Fix icmp checksum when sequence number modlation is being used.
 Also fix a daddr vs saddr cut-n-paste error in ICMP error handling.

 Fixes PR 3724

Obtained from:	OpenBSD
Reviewed by:	dhartmei
Approved by:	rwatson
2004-04-11 17:35:40 +00:00
marcel
6dbee1d482 Unbreak build: s/TAILQ_ISEMPTY/TAILQ_EMPTY/g 2004-04-11 17:15:36 +00:00
rwatson
f8b24f78ad In 4.x, if_ipending is used to track network interrupt state. In 5.x,
it is no longer used, so GC the ifnet.if_ipending field.
2004-04-11 16:35:53 +00:00
rsm
8c727ff7fc Stop xe claiming ownership of every card passed to xe_pccard_match.
Found by:	Pete Carss <itinerant at mac dot com>
Reviewed by:	imp (mentor)
Pointy hat to:	rsm
2004-04-11 16:34:29 +00:00
rwatson
64b26340c2 Compare IFF_POLLING flag with ifp->if_flags rather than ifp->if_ipending,
which was almost certainly a bug since polling support was introduced
in this driver.

Found during discussion with:	mlaier
2004-04-11 16:26:39 +00:00
ru
88016a0d08 Implemented per-interface polling(4) control. 2004-04-11 16:23:16 +00:00
marcel
3085115018 Include nehemiah.c only on i386, as is done for the non-modules
build.
2004-04-11 15:40:18 +00:00
ru
57c7179066 Implemented per-interface polling(4) control. 2004-04-11 15:35:49 +00:00
ru
2ffc7fc147 Implemented per-interface polling(4) control. 2004-04-11 15:18:09 +00:00
ru
7da0b60b17 Implemented per-interface polling(4) control. 2004-04-11 14:42:25 +00:00
ru
ba67628e61 First driver with user-configurable polling(4). 2004-04-11 13:47:15 +00:00
ru
dd9ed98446 Added the new interface capability option for drivers that implement
user-configurable polling(4) support.  Make ifconfig(8) aware of it.

Suggested by:	luigi
2004-04-11 13:36:52 +00:00
peadar
7ddbd99725 Don't let the NFS server module be unloaded as long as there are
nfsd processes running

Reviewed By:	iedowse
PR:		16299
2004-04-11 13:33:34 +00:00
peadar
9bb40b73ee Clean up properly when unloading NFS client module.
This includes a modified form of some code from Thomas Moestl (tmm@)
to properly clean up the UMA zone and the "nfsnodehashtbl" hash
table.

Reviewed By:	iedowse
PR:		16299
2004-04-11 13:30:20 +00:00
nyan
3341cc4adb Fix pc98 build. 2004-04-11 09:13:42 +00:00
imp
a85109257a Add system tunable to turn off power state changes. Default to off until
we get the resource allocation stuff hammered out.

Fix and off by one error that caused unnecessary filtering of valid
BARs for only 4 bytes than ICH3 and other PCI IDE controllers have.
Andrew Gallatin submitted this, although it doesn't solve the problems
ICH3 controllers have with the new code, it does restore the former
resource list on the probe line.
2004-04-11 07:02:49 +00:00
alc
b3d75fb6f4 Remove a comment that refers to avail_start and avail_end as these
variables no longer exist.
2004-04-11 06:37:36 +00:00
alc
0f6d9cd13e Remove avail_end. It is not used. 2004-04-11 06:02:24 +00:00
alc
39f4094512 Remove avail_end. It is not used. 2004-04-11 05:08:26 +00:00
alc
ec17c32ba1 - is_physical_memory()'s parameter, which is a physical address, should be
a vm_paddr_t not a vm_offset_t.
2004-04-11 04:26:58 +00:00
alc
f93d7d4240 - pmap_kenter_temporary()'s first parameter, which is a physical address,
should be declared as vm_paddr_t not vm_offset_t.
2004-04-10 23:28:49 +00:00
alc
c380417937 - pmap_kenter_temporary() is unused by machine-independent code. Therefore,
move its declaration to the machine-dependent header file on those
   machines that use it.  In principle, only i386 should have it.
   Alpha and AMD64 should use their direct virtual-to-physical mapping.
 - Remove pmap_kenter_temporary() from ia64.  It is unused.  Approved
   by: marcel@
2004-04-10 22:41:46 +00:00
marcel
432ebac630 Unbreak alpha kernel build and unbreak any non-i386 runtime brokenness.
The VIA Nehemias is so obviously specific to i386 that it should not
be compiled on non-i386 platforms. The obviousness is in the fact that
all functions in nehemias.c are purely i386 inline assembly, guarded
by #ifdef __i386__
2004-04-10 19:43:15 +00:00
kan
9ec94342bd Fix module build during buildworld with MODULES_WITH_WORLD defined. 2004-04-10 19:41:15 +00:00
cognet
59e9d5b09d Call trm_Interrupt() in trm_poll(). This fixes the lock at reboot time some
people reported.

PR:		kern/62864
Tested by:	Putinas Piliponis <putinas.piliponis at icnspot.net>
2004-04-10 15:38:49 +00:00
mux
74cb325f5e Remove a comment that complains about the lack of %qd, to justify
truncating a rlim_t to a long.  We have %qd since some time now.
However, the correct format to use here is %jd and a cast to
intmax_t, so do this.
2004-04-10 11:08:16 +00:00
vkashyap
2446732eb0 Changed comments following changes to not bundle firmware by default.
Approved by: re
2004-04-10 02:41:22 +00:00
scottl
d66e795a25 Don't include the firmware image by default as it adds 500k (uncompressed) to
the module.

Reviewed by:	vinod
2004-04-10 02:00:47 +00:00
emax
3513d3a4bf Make sure Bluetooth stuff can be compiled on amd64
Submitted by:	ps
2004-04-09 23:01:42 +00:00
imp
fd167b36d8 Only print state change message for real state changes. When we set a
device in D0 to D0, that's a no-op, however the messages seem to be
confusing some people.  Eventually, these messages will be parked
behind a if (bootverbose).

# I don't think this will fix any real bugs...
2004-04-09 20:41:18 +00:00
njl
9acc8ad69e Add MODULE_DEPEND entries so some of these drivers can eventually be
loaded separately from ACPI (i.e., embedded use).
2004-04-09 18:14:32 +00:00
rsm
2117917453 Band-aid fix to extract MAC address from some CEM2/CEM28 cards with broken
CIS.  Really needs a better interface to the CIS in pccard driver.

Reviewed by:	imp (mentor)
2004-04-09 17:34:54 +00:00
rsm
35c796651f Fix probe routine to use card IDs from pccarddevs for NEWCARD and OLDCARD.
Should now correctly probe and attach all supported cards in either mode.

Reviewed by:	imp (mentor)
2004-04-09 17:27:36 +00:00
rsm
f4bb5b9196 Sync to pccarddevs 1.83
Reviewed by:	imp (mentor)
2004-04-09 17:10:12 +00:00
rsm
85b93e274d Add Xircom XEM5600 and known versions of CE2, CEM33 and CEM56.
Xircom had an unfortunate habit of re-using PCMCIA IDs for quite different
cards - the xe driver knows about this and uses the first byte of 'extra'
PCMCIA ID info to identify cards with ambiguous IDs.

Reviewed by:	imp (mentor)
2004-04-09 17:08:12 +00:00
markm
c985e44a3d I hate noticing bugs after committing. :-(
ALWAYS set up the CPU base identity string. THEN optionally
add features.
2004-04-09 17:00:03 +00:00
markm
55fe453be7 Reorganise the entropy device so that high-yield entropy sources
can more easily be used INSTEAD OF the hard-working Yarrow.
The only hardware source used at this point is the one inside
the VIA C3 Nehemiah (Stepping 3 and above) CPU. More sources will
be added in due course. Contributions welcome!
2004-04-09 15:47:10 +00:00
imp
ca56ea20fc Omnibus PCI commit:
o Save and restore bars for suspend/resume as well as for D3->D0
	  transitions.
	o preallocate resources that the PCI devices use to avoid resource
	  conflicts
	o lazy allocation of resources not allocated by the BIOS.
	o set unattached drivers to state D3.  Set power state to D0
	  before probe/attach.  Right now there's two special cases
	  for this (display and memory devices) that need work in other
	  areas of the tree.

Please report any bugs to me.
2004-04-09 15:44:34 +00:00
peadar
fd75a2f931 Plug minor memory leak of module_t structures when unloading a file
from the kernel.

Reviewed By: Doug Rabson (dfr@)
2004-04-09 15:27:38 +00:00
markm
f722c4cfc5 Add extra output to show when VIA C3 Nehemiah CPUs have hardware
Random Number Generator (RNG) and/or Advanced Cryptography Engine
(ACE).
2004-04-09 15:01:44 +00:00
cognet
acc91f284d Spell "switches" a more conventional way. 2004-04-09 14:31:29 +00:00
rwatson
435aae62de Compare pointers with NULL rather than using pointers are booleans in
if/for statements.  Assign pointers to NULL rather than typecast 0.
Compare pointers with NULL rather than 0.
2004-04-09 13:23:51 +00:00
bde
e8b3915883 Fixed missing forward declaration of struct rusage in the _KERNEL case.
Removed namespace-polluting forward declaration of struct rusage in the
!_KERNEL && !_BSD_VISIBLE case.

Fixed some nearby style bugs.
2004-04-09 13:14:32 +00:00
njl
6c09d371b9 Replace more ad-hoc versions of acpi_GetReference(). Since the type of
Reference objects changed from ACPI_TYPE_ANY to ACPI_TYPE_LOCAL_REFERENCE
in Oct. 2002, this may help systems where switching the cooler on failed.
We support both types for now until this sorts out.
2004-04-09 06:55:50 +00:00
njl
2c8ba3e867 Include the prototype for acpi_GetReference. 2004-04-09 06:53:50 +00:00
njl
fdef51d350 Add support for packages as the first element of _PRW. This may allow
some machines to enable wake events for more devices although I haven't
seen a system yet that uses this form.  Also, introduce acpi_GetReference()
which retrieves an object reference from various types.
2004-04-09 06:40:03 +00:00
imp
34d7e07971 Ooops, removed this acknowledgement bogusly.
Eagle Eyes: bde
2004-04-09 05:12:47 +00:00
rwatson
56b53cb7be Lock down the netatalk AARP code, which is responsible for appletalk
address discovery and caching (similar to inet ARP).  Use a single
global mutex, aarptab_mtx, to protect the table.  Remove spl/spx.

Tested by:	Bob Bishop <rb@gid.co.uk>
2004-04-09 01:40:12 +00:00
alc
e8b438d9b6 The demise of vm_pager_map_page() in revision 1.93 of vm/vm_pager.c permits
the reduction of the pager map's size by 8M bytes.  In other words, eight
megabytes of largely wasted KVA are returned to the kernel map for use
elsewhere.
2004-04-08 19:08:49 +00:00
mlaier
9bd68e0304 Readd -Werror flag to compilation pf.c after the compiler warnings have been
shut up.

Tested by:	LINT(i386)
Approved by:	bms(mentor)
2004-04-08 18:17:13 +00:00
njl
9898fa8613 Unify on version 1 to be similar to the rest of the tree. After 5-stable
branches, increment version on any API change visible to other modules.
2004-04-08 16:45:12 +00:00
silby
d35a5d60b9 Fix a regression in my change which sends headers along with data; a
side effect of that change caused headers to not be sent if a 0 byte
file was passed to sendfile.  This change fixes that behavior, allowing
sendfile to send out the headers even with a 0 byte file again.

Noticed by:	Dirk Engling
2004-04-08 07:14:34 +00:00
marcel
9584da2d1f Do not assume that the initial thread (i.e. the thread with the ID
equal to the process ID) is still present when we dump a core. It
already may have been destroyed. In that case we would end up
dereferencing a NULL pointer, so specifically test for that as well.

Reported & tested by: Dan Nelson <dnelson@allantgroup.com>
2004-04-08 06:37:00 +00:00
cperciva
9c466edcbc Add whitespace before comment blocks. (reported by njl)
Remove spurious whitespace, add indent protection, fix punctuation,
remove initialization of static variables to zero, put wakeup_ctr
and wakeup_needed in the correct order. (reported by bde)

This doesn't fix all the style bugs I introduced, but the remaining
style bugs make it easier for me to understand what I did here.
2004-04-08 02:03:49 +00:00
imp
7f957a47b4 Back out last bad commit (again!) 2004-04-07 21:56:20 +00:00
imp
b49b7fe799 Remove advertising clause from University of California Regent's
license, per letter dated July 22, 1999 and email from Peter Wemm,
Alan Cox and Robert Watson.

Approved by: core, peter, alc, rwatson
2004-04-07 20:46:16 +00:00
jhb
baec2dbefc Implement an ACPI-aware pci_set_powerstate() method for PCI busses that
are enumerated in the ACPI device tree.  In addition to the normal PCI
powerstate functionality, the ACPI _PSx methods are executed and ACPI
PowerResources are switched on and off via the acpi_pwr_switch_consumer()
function.

Glanced at by:	imp, njl
2004-04-07 19:42:21 +00:00
wpaul
52d50449a1 In ndis_convert_res(), initialize the head of our temporary list
before calling BUS_GET_RESOURCE_LIST(). Previously, the list head would
only be initialized if BUS_GET_RESOURCE_LIST() succeeded; it needs to
be initialized unconditionally so that the list cleanup code won't
trip over potential stack garbage.
2004-04-07 17:02:55 +00:00
imp
66ed31db8a Add new ID for Intel 82562ET (ICH5/ICH5R) Pro/100 VE Ethernet.
Submitted by: Stefan Bethke
PR: 61320
2004-04-07 15:47:14 +00:00
bde
5e501817ae Record where half the bits in this file came from (from ufs_readwrite.c).
Damage to history from moving bits was especially large since a repo copy
is not feasible for partial files.
2004-04-07 11:21:18 +00:00
ru
a6980b04fc Fixed a bug in previous revision: compute the payload checksum before
we convert ip_len into a network byte order; in_delayed_cksum() still
expects it in host byte order.

The symtom was the ``in_cksum_skip: out of data by %d'' complaints
from the kernel.

To add to the previous commit log.  These fixes make tcpdump(1) happy
by not complaining about UDP/TCP checksum being bad for looped back
IP multicast when multicast router is deactivated.

Reported by:	Vsevolod Lobko
2004-04-07 10:01:39 +00:00
cperciva
b174697b69 Fix filt_timer* races: Finish initializing a knote before we pass it to
a callout, and use the new callout_drain API to make sure that a callout
has finished before we deallocate memory it is using.

PR:		kern/64121
Discussed with:	gallatin
2004-04-07 05:59:57 +00:00
imp
3a87c31194 The bs driver was replaced with the ct(pc98) driver. takahashi-san
(nyan) says this driver is now obsolete and can be removed.
2004-04-07 05:44:51 +00:00
imp
a51660ff9f Last change was a bogus 2004-04-07 05:30:54 +00:00
imp
ebf059d1df Remove advertising clause from University of California Regent's
license, per letter dated July 22, 1999 and email from Peter Wemm,
Alan Cox and Robert Watson.

Approved by: core, peter, alc, rwatson
2004-04-07 05:00:01 +00:00
imp
9e1925f560 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core
2004-04-07 04:19:52 +00:00
imp
cbeab61b3a Remove advertising clause from University of California Regent's
license, per letter dated July 22, 1999 and irc message from Robert
Watson saying that clause 3 can be removed from those files with an
NAI copyright that also have only a University of California
copyrights.

Approved by: core, rwatson
2004-04-07 03:47:21 +00:00
peter
bc5252478b Update to include both the L1 and L2 TLB stats, as well as the seperate
2M/4M page TLB vs 4K page TLB stats.  This also applies to the i386
platform, as does the cpu features fixes.
2004-04-07 00:44:15 +00:00
peter
b035268c4a MFi386: move rss() from db_interface.c to cpufunc.h 2004-04-07 00:41:05 +00:00
pjd
91d40e47d6 Unbreak FAST_IPSEC build on 64 bit archs with INVARIANTS.
Approved by:	sam
2004-04-07 00:19:02 +00:00
cperciva
e0793884f3 Introduce a callout_drain() function. This acts in the same manner as
callout_stop(), except that if the callout being stopped is currently
in progress, it blocks attempts to reset the callout and waits until the
callout is completed before it returns.

This makes it possible to clean up callout-using code safely, e.g.,
without potentially freeing memory which is still being used by a callout.

Reviewed by:	mux, gallatin, rwatson, jhb
2004-04-06 23:08:49 +00:00
imp
361a4ffcb7 Better checks to make sure that we get good alignment. This code is a
bit of a bandaide until I get better pci bus code committed to head
from my p4 tree.
2004-04-06 22:50:50 +00:00
imp
ad7ac7636e Fix mis-merge from p4 by adding line getting sc.
Attempt to deal with larger memory allocation better.
2004-04-06 22:41:14 +00:00
imp
04c9462c02 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core
2004-04-06 20:15:37 +00:00
imp
d531fd6fd2 MFP4: Power up with OE disabled. Similar patches went into NetBSD a
while ago, and it does seem to help at least one card I have and has
been in my p4 tree for many months.
2004-04-06 20:13:29 +00:00
iedowse
d39c4df474 Use the correct flag for mbuf allocations (M_DONTWAIT, not M_NOWAIT). 2004-04-06 19:32:00 +00:00
jhb
ea51c85889 Fix a paste-o from the buf_prewrite() cleanup commit and check for the
MNTK_SUSPEND flag on the correct vnode pointer in softdep_disk_prewrite().

Reviewed by:	phk
Tested by:	kensmith
2004-04-06 19:20:24 +00:00
jhb
241908535b Associate a simple count of waiters with each condition variable. The
count is protected by the mutex that protects the condition, so the count
does not require any extra locking or atomic operations.  It serves as an
optimization to avoid calling into the sleepqueue code at all if there are
no waiters.

Note that the count can get temporarily out of sync when threads sleeping
on a condition variable time out or are aborted.  However, it doesn't hurt
to call the sleepqueue code for either a signal or a broadcast when there
are no waiters, and the count is never out of sync in the opposite
direction unless we have more than INT_MAX sleeping threads.
2004-04-06 19:17:46 +00:00
jhb
7cf9a1d044 Add a new kernel option MUTEX_WAKE_ALL that changes the mutex unlock code
to awaken all waiters when a contested mutex is released instead of just
the highest priority waiter.  If the various threads are awakened in
sequence then each thread may acquire and release the lock in question
without contention resulting in fewer expensive unlock and lock
operations.  This old behavior of waking just the highest priority is
still used if this option is specified.  Making the algorithm conditional
on a kernel option will allows us to benchmark both cases later and
determine which one should be used by default.

Requested by:	tanimura-san
2004-04-06 19:12:24 +00:00
jhb
24076d2f57 Sort function prototypes. 2004-04-06 19:08:40 +00:00
jhb
8ab84688c3 Rename turnstile_wakeup() to turnstile_broadcast() to make the naming
more consistent with other APIs. sleepq and cv's use signal/broadcast, and
msleep uses wakeup_one/wakeup.  Prior to this turnstiles were using a
signal/wakeup mixture.
2004-04-06 19:07:21 +00:00
ps
a048052df8 Enable the memory arbiter before turning off the PXE restart. This
prevents NMI's from happening when resetting the chip on some
hardware I have seen.

Mis-behaving box made available by:	John Cagle <john.cagle@hp.com>
2004-04-06 18:28:15 +00:00
mlaier
3c891e9b96 Make pf* modules respect NOINET6 from make.conf(5) in order to build them
for INET6-less kernel.

Requested by:	many
Approved by:	bms(mentor)
2004-04-06 15:12:50 +00:00
nyan
2e9bac6578 MFi386: Enable the cy driver. 2004-04-06 14:19:45 +00:00
ru
14f109e99e Actually fix the TX performance with polling(4) enabled
by increasing the TX list size from 64 to 128, which is
adequate for HZ=1000.

Submitted by:	Vsevolod Lobko
2004-04-06 11:04:54 +00:00
bde
014c3b4511 Fixed misspelling of IPPORT_MAX as USHRT_MAX. Don't include <sys/limits.h>
to implement this mistake.

Fixed some nearby style bugs (initialization in declaration, misformatting
of this initialization, missing blank line after the declaration, and
comparision of the non-boolean result of the initialization with 0 using
"!".  In KNF, "!" is not even used to compare booleans with 0).
2004-04-06 10:59:11 +00:00
bde
122259ad35 Removed some less than useful comments:
- don't say what a small subset of the options includes are for.
- don't mark up functions which use all their args with /* ARGSUSED */.
  The markup should have been removed when the unused retval parameter
  was removed.
- don't comment on what routine suser() checks do.  Removed nearby
  excessive vertical whitespace.
2004-04-06 10:05:02 +00:00
bde
689a98fa68 Oops, fixed insertion sort error in the fix for an insertion sort error.
While here, begin fixing dependencies of <sys/mount.h> on normal namespace
pollution (__BSD_VISIBLE) by not using u_int in the prototype for nmount(2),
although it is used in the man page.

While there, begin cleaning up another set of prototypes:
- use u_int in the prototype for the kernel part of nmount().
- consistently don't use parameter names in prototypes in the
  "exported vnode operations" set of prototypes, although style(9) says to
  use names in the kernel.
2004-04-06 09:14:33 +00:00
bde
344e1db35a Fixed unsorting of prototypes in previous commit and 1.134. 2004-04-06 08:30:21 +00:00
ru
98d9fd07bb - Improved the TX performance with polling(4) by only checking the
status registers for error conditions and updating statistics
  when there are cycles left (inspired by the nge(4) driver).

- Removed the TX list counter and the producer/consumer gap; it's
  enough to just ensure we don't reuse the last (free) descriptor,
  as the chip may not have read its next pointer yet.  If we reuse
  it, the TX may stall under a heavy TX load with polling enabled.

- Dropped code to recharge the watchdog timer, it's pointless; the
  watchdog routine will re-init the chip and both RX and TX lists.
2004-04-06 07:58:32 +00:00
alc
728ea9afc2 Eliminate vm_pager_map_page() and vm_pager_unmap_page() and their uses.
Use sf_buf_alloc() and sf_buf_free() instead.
2004-04-06 07:12:32 +00:00
rwatson
3bc22d914f Add imperfect comments identifying the function of various nfs socket
condition flags.  Corrections, if appropriate, welcome.
2004-04-06 01:58:58 +00:00
alc
91e3fa34d0 Remove avail_end. As of yesterday, it is unused. 2004-04-06 01:38:28 +00:00
imp
ceab5f79a3 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999 and email from Peter Wemm.

Approved by: core, peter
2004-04-05 23:55:14 +00:00
imp
cbc58cf8a6 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core
2004-04-05 23:41:29 +00:00
sam
534a1c6c21 Resolve the issue of whether frames have FCS or not. Frame data does not
include FCS; if you want to provide it you can put it in the header.

Submitted by:	David Young
2004-04-05 22:13:21 +00:00
sam
95fbaa6dad eliminate nested include by making MALLOC_DECLARE conditional on the
inclusion of <sys/malloc.h>

Submitted by:	bde
2004-04-05 22:10:26 +00:00
imp
21f7c26600 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core
2004-04-05 21:29:41 +00:00
imp
0f03c03f09 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999 and permission from Alan Cox.

Approved by: core, alc@
2004-04-05 21:15:52 +00:00
imp
74cf37bd00 Remove advertising clause from University of California Regent's license,
per letter dated July 22, 1999.

Approved by: core
2004-04-05 21:03:37 +00:00
imp
a7fa0be19e Remove the advertsing clause, per the Regent's letter dated July 22, 1999.
Approved by: core
2004-04-05 21:00:51 +00:00
bde
cffcc6d901 Uncomment the cy driver since it works again. 2004-04-05 19:31:18 +00:00
sam
4bcffa477a add definitions for WME, WPA (and WPA2), and miscellaneous other stuff
that's coming soon

Obtained from:	madwifi
2004-04-05 17:47:40 +00:00
ru
52fdcf73b0 - Rewritten TX to use only two pointers to track producer/consumer.
- Added polling(4) support!
- Bugfix: don't forget to set IFF_OACTIVE when TX list is full.
- Minor: tidy up vr_encap().
2004-04-05 17:39:57 +00:00
njl
8b7744ab53 Unbreak the bootloader build by excluding ctype.h.
Submitted by:	Stefan Farfeleder <stefan@fafoe.narf.at>
2004-04-05 17:30:15 +00:00
ru
b728623bce Properly detect loops by recording the interface pointer in an mtag.
For now, preserve the gif_called functionality to limit the nesting
level because uncontrolled nesting can easily cause the kernel stack
exhaustion.  Rumors are it should be shot to allow people to easily
shoot themselves in the foot, but I have ran out of cartridges.  ;)
2004-04-05 16:55:15 +00:00
dfr
b750882696 Try not to crash instantly when signalling a libthr program to death. 2004-04-05 15:06:01 +00:00
dfr
674d9507bb Regen. 2004-04-05 10:17:23 +00:00
dfr
c76397ed09 Add lgetfh(2) which is like getfh(2) but doesn't follow symlinks. 2004-04-05 10:15:53 +00:00
dfr
3a50c46d72 Print cpu features for crusoe processors. 2004-04-05 10:12:19 +00:00
wpaul
e8bf917ce6 - The MiniportReset() function can return NDIS_STATUS_PENDING, in which
case we should wait for the resetdone handler to be called before
  returning.

- When providing resources via ndis_query_resources(), uses the
  computed rsclen when using bcopy() to copy out the resource data
  rather than the caller-supplied buffer length.

- Avoid using ndis_reset_nic() in if_ndis.c unless we really need
  to reset the NIC because of a problem.

- Allow interrupts to be fielded during ndis_attach(), at least
  as far as allowing ndis_isr() and ndis_intrhand() to run.

- Use ndis_80211_rates_ex when probing for supported rates. Technically,
  this isn't supposed to work since, although Microsoft added the extended
  rate structure with the NDIS 5.1 update, the spec still says that
  the OID_802_11_SUPPORTED_RATES OID uses ndis_80211_rates. In spite of
  this, it appears some drivers use it anyway.

- When adding in our guessed rates, check to see if they already exist
  so that we avoid any duplicates.

- Add a printf() to ndis_open_file() that alerts the user when a
  driver attempts to open a file under /compat/ndis.

With these changes, I can get the driver for the SMC 2802W 54g PCI
card to load and run. This board uses a Prism54G chip. Note that in
order for this driver to work, you must place the supplied smc2802w.arm
firmware image under /compat/ndis. (The firmware is not resident on
the device.)

Note that this should also allow the 3Com 3CRWE154G72 card to work
as well; as far as I can tell, these cards also use a Prism54G chip.
2004-04-05 08:26:52 +00:00
bde
8ff01ad785 Converted the isa probe and attach to new-bus so that this driver works
without the (defunct) isa compatibility shims.  The new-bus-specific
parts are very similar to the ones for the pci probe and attach.

This was held up too long waiting for a repo copy to src/sys/dev/cy,
so I decided to fix the files in their old place.  This gives easier
to read and merge diffs anyway.

The "count" line in src/sys/conf/files won't be changed until after
the repo copy, so old kernel configs that specify a count need not be
(and must not be) changed until then.  The count is just ignored in
the driver.  One unfinished detail is dynamic allocation of arrays
with <count> and (<count> * 32) entries, and iteration over the arrays.
This is now kludged with a fixed count of 10 (up to 10 cards with up
to 32 ports each).

Prodded by:	imp
Submitted by:	mostly by imp
Approved by:	imp
2004-04-05 08:16:23 +00:00
bde
e061b47c7c Moved initialization of the lock from the (isa) probe function to the
common attach function so that the lock gets initialized in all cases.
This fixes breakage of the initialization of the lock in the pci case
in rev.1.135 (between the releases of 5.1 and 5.2).  The lock is only
used in the SMP case, so this bug was not always fatal.
2004-04-05 07:43:18 +00:00
kan
fee73bd419 Delay permission checks for VCHR vnodes until after vnode is locked in
vm_mmap_vnode function, where we can safely check for a special /dev/zero
case. Rev. 1.180 has reordered checks and introduced a regression.

Submitted by:	alc
Was broken by:	kan
2004-04-05 04:54:22 +00:00
sam
feadf84922 use correct malloc type to allocate struct ieee80211_node's
Noticed by:	phk
2004-04-05 04:42:42 +00:00
sam
0eac2dcc6f export the malloc type M_80211_NODE for drivers that override the node
allocation routines
2004-04-05 04:17:03 +00:00
sam
089385e207 make malloc tag for ieee80211_node more recognizable 2004-04-05 04:15:55 +00:00
alc
c5bba2b0af Remove avail_start on those platforms that no longer use it. (Only amd64
does anything with it beyond simple initialization.)
2004-04-05 04:08:00 +00:00
njl
90325c0beb Add #include for ctype.h to cover strupr() in the !_KERNEL case.
Submitted by:	Stefan Farfeleder <stefan@fafoe.narf.at>
2004-04-05 04:03:09 +00:00
imp
bb0b657d01 Add register definitions for the status and command registers for AGP.
PR: 64846
Submitted by: Samy Al Bahra
2004-04-05 02:32:07 +00:00
marcel
61af60a697 Ever since rev 1.27 of puc.c, the port number that was exposed by puc(4)
and used by uart(4) for the channel conflicted with the port offset for
the Z8530. The Z8530 has the channels reversed (i.e. channel B is at
offset 0 and channel A is at offset 4). Assign the port offsets in the
right order so that uart(4) will properly attach to the channels.

Submitted by: Marius Strobl <marius@alchemy.franken.de>
2004-04-05 01:58:02 +00:00
rwatson
e391576e63 Two missed in previous commit -- compare pointer with NULL rather than
using it as a boolean.
2004-04-05 00:52:05 +00:00
rwatson
bdbf43dbba Prefer NULL to 0 when checking pointer values as integers or booleans. 2004-04-05 00:49:07 +00:00
alc
19e5eda309 Remove unused arguments from pmap_init(). 2004-04-05 00:37:50 +00:00
alc
e9f0dd4665 Eliminate unused arguments from vm_page_startup(). 2004-04-04 23:33:36 +00:00
archie
f9ee16aaa9 Rename internal structure to fix cut & paste error.
Submitted by:	Bjoern A. Zeeb <bzeeb+freebsd@zabbadoz.net>
MFC After:	3 days
2004-04-04 21:33:09 +00:00
pjd
37382454e0 Calculate bio_completed properly or die!
Approved by:	phk
2004-04-04 20:37:28 +00:00
pjd
2e6142d4d9 Fix a panic possibility caused by returning without releasing locks.
It was fixed by moving problemetic checks, as well as checks that
doesn't need locking before locks are acquired.

Submitted by:		Ryan Sommers <ryans@gamersimpact.com>
In co-operation with:	cperciva, maxim, mlaier, sam
Tested by:		submitter (previous patch), me (current patch)
Reviewed by:		cperciva, mlaier (previous patch), sam (current patch)
Approved by:		sam
Dedicated to:		enough!
2004-04-04 20:14:55 +00:00
rwatson
18b25cc43d Spell 2 as SHUT_RDWR when used as an argument to soshutdown(). 2004-04-04 19:24:08 +00:00
rwatson
40e717b764 Detatch incorrect spellings of detach. 2004-04-04 19:15:45 +00:00
rwatson
0bc728d917 Explicitly compare pointers with NULL rather than treating a pointer as
a boolean directly, use NULL instead of 0.
2004-04-04 19:13:35 +00:00
jeff
3f884ddf6b - Use the proper constant in sched_interact_update(). Previously,
SCHED_INTERACT_MAX was used where SCHED_SLP_RUN_MAX was needed.  This was
   causing the interactivity scaler to lose history at a more dramatic rate
   than intended.
2004-04-04 19:12:56 +00:00
markm
6a02d57aea Put a bunch of output that us really only useful in a debug
scenario into #ifdef DEBUG. This makes my cluster with Belkin
KVM switch completely usable, even if the KVM switch and mouse
get a bit confused sometimes.

Without this, when the mouse gets confused, all sorts of crud
gets spammed all over the screen. With this, the mouse may appear
dead for a second or three, but it recovers silently.
2004-04-04 16:36:21 +00:00
tmm
9e272a7b67 - Use an ihandle_t to store the stdout instance handle instead of a
phandle_t. Since both are typedefed to unsigned int, this is more
  or less cosmetic.
- Fix the code that determines whether a creator instance was used
  for firmware output (and should not be blanked on initialization).
  Since r1.2 of dev/fb/creator.c, this consisted comparing a handle of
  an instance of a package with a handle of the package itself.
  Use the test from r1.1, which utilizes OF_instance_to_package().

Submitted by:	Marius Strobl <marius@alchemy.franken.de>
2004-04-04 12:52:22 +00:00
luigi
3de845ed0a whoops, forgot to fix these places where arpresolve() was used
Detected by: tinderbox
2004-04-04 11:52:09 +00:00
luigi
c54de1f76f + arpresolve(): remove an unused argument
+ struct ifnet: remove unused fields, move ipv6-related field close
  to each other, add a pointer to l3<->l2 translation tables (arp,nd6,
  etc.) for future use.

+ struct route: remove an unused field, move close to each
  other some fields that might likely go away in the future
2004-04-04 06:14:55 +00:00
wes
3f81a8edc4 Added BSD license, as requested by author.
Requested-by:	Stuart Walsh <stu@ipng.org.uk>
Message-ID:	<20040331190716.GB32835@deepfreeze.stu>
2004-04-04 06:13:56 +00:00
marcel
e7ecc9ae6f To quote the submitter:
"...If "keyboard" is the selected input-device and "screen" the
output-device (both via /options) but the keyboard is unplugged,
OF automatically switches to ttya for the console, it even prints
a line telling so on "screen". Solaris respects this behaviour and
uses ttya as the console in this case and people probably expect
FreeBSD to do the same (it's also very handy to temporarily switch
consoles)..."
"...I changed the comparison of the console device with "ttya" ||
"ttyb" to "tty" because on AXe boards all 4 onboard UARTs end in
SUB-D connectors (ttya and ttyb being 16550 and ttyc and ttyd a
SAB82532) and there's no Sun keyboard connector (but PS/2). If one
plugs a serial card in a box there also can be more than just ttya
and ttyb available for a console..."

Submitted by: Marius Strobl <marius@alchemy.franken.de>
Has no doubt that the change is correct: marcel
2004-04-04 05:24:13 +00:00
marcel
b64f06a33f To quote submitter:
"... uart_cpu_sparc64.c currently only looks at /options if ttyX is
the selected console. However, there's one case where it should
additionally look at /chosen. If "keyboard" is the selected input-
device and "screen" the output-device (both via /options) but the
keyboard is unplugged, OF automatically switches to ttya for the
console. It even prints a line telling so on "screen". Solaris
respects this behaviour and uses ttya as the console in this case
and people probably expect FreeBSD to do the same (it's also very
handy to temporarily switch consoles)..."

Submitted by: Marius Strobl <marius@alchemy.franken.de>
Has no doubt the change is correct: marcel
2004-04-04 05:06:26 +00:00
nyan
e755b66f61 Backout revision 1.31. The twa entries were moved to i386/conf/NOTES. 2004-04-04 04:41:52 +00:00