Commit Graph

51494 Commits

Author SHA1 Message Date
glebius
e3f4f22c01 This change adds reliability for Ethernet trunks built with ng_one2many:
- Introduce another ng_ether(4) callback ng_ether_link_state_p, which
  is called from if_link_state_change(), every time link is changed.
- In ng_ether_link_state() send netgraph control message notifying
  of link state change to a node connected to "lower" hook.

Reviewed by:	sam
MFC after:	2 weeks
2005-01-08 12:42:03 +00:00
njl
2342a131ea In total violation of at least 4 sections in the ACPI spec, some systems
place device objects in \ (in this case, PCI links.)  Work around this by
starting our probe from \.  To avoid attaching system scope objects,
explicitly skip them.  (I think it's an ACPI-CA bug that \_SB and \_TZ have
device and thermal object types.)  Thanks to pjd@ for testing.

MFC after:	2 weeks
2005-01-08 09:10:20 +00:00
davidxu
6f1e481e4d Break out of loop earlier if it is not timeout. 2005-01-08 06:57:46 +00:00
rwatson
21c2d460fc Annotate that pfs_exit() always acquires and releases two mutexes for
every process exist, even if procfs isn't mounted.  And one of those
mutexes is Giant.  No immediate thoughts on fixing this.
2005-01-08 04:56:38 +00:00
rwatson
afca6a6239 In acct_process(), do a lockless read of acctvp to see if it's NULL
before deciding to do more expensive locking to account for process
exit.  This acceptable minor race avoids two mutex operations in
that highly common case of accounting not being enabled.

MFC after:	2 weeks
2005-01-08 04:45:57 +00:00
darrenr
41cf7f35b4 Elminate 1 LOR (actually a recursive mutex grab) involving ipfilter where
we loop through all the list of NICs (struct ifnet), holding the lock on
it and then do a name lookup with ifunit() whilst holding it.
2005-01-08 04:32:02 +00:00
rwatson
79b283cecc In kern_wait(), let the compiler copy the rusage structure rather than
an explicit bcopy() -- it probably does a better job.
2005-01-08 04:17:48 +00:00
phk
2fb9d314a7 Revert local experiment which leaked into commit. 2005-01-07 23:54:16 +00:00
phk
cd49c1d16c Fix compilation of DEVICE_POLLING code. 2005-01-07 23:52:41 +00:00
keramida
b7717ebc5c Comment typo.
PR:		kern/75923
Submitted by:	Matthew D. Fuller <fullermd@over-yonder.net>
2005-01-07 19:31:43 +00:00
jhb
0e5c952f88 Fix support for machines with default MP Table configurations:
- Fix the MP Table pci bridge drivers to not probe the configuration table
  unless we actually have one.  Machines using a default configuration do
  not have such a table.
- Only allow default configuration types of 5 (ISA + PCI) and 6 (EISA +
  PCI) as the others are not likely to work.  Types 1 through 4 use an
  external APIC (probably with 80486 processors) which we certainly do not
  support, and type 7 uses an MCA bus which has not been tested with the
  new MP Table code.
- Correct the fact that the single I/O APIC in a default configuration has
  an ID of 2, not 0.
- Fix off by one errors in setting the bus types from the default_data[]
  arrays for default configurations.
- Explicitly configure each of the 16 interrupt pins on the sole I/O APIC
  when using a default configuration.  This is especially helpful for type
  6 (EISA + PCI) since the EISA interrupts need to have their polarity
  programmed based on the values in the ELCR.

Much thanks to the submitter and tester who endured several rounds of
testing to get this fixed.

MFC after:	1 week
Tested by:	Georg Schwarz georg dot schwarz at freenet dot de
2005-01-07 18:42:59 +00:00
scottl
d7842c4d70 Introduce bus_dmamap_load_mbuf_sg(). Instead of taking a callback arg, this
cuts to the chase and fills in a provided s/g list.  This is meant to optimize
out the cost of the callback since the callback doesn't serve much purpose for
mbufs since mbuf loads will never be deferred.  This is just for amd64 and
i386 at the moment, other arches will be coming shortly.
2005-01-07 07:57:18 +00:00
scottl
17380348cf Fix typo from previous commit. 2005-01-07 07:08:33 +00:00
scottl
061dd4dce8 Add a default driver to attach to the "hidden" scsi channels of the Dell
PERC 3 controllers.  This is needed to keep the PM code from powering them
down.
2005-01-07 05:59:45 +00:00
alc
403229a01e Transfer responsibility for freeing the page taken from the cache
queue and (possibly) unlocking the containing object from
vm_page_alloc() to vm_page_select_cache().  Recent optimizations to
vm_map_pmap_enter() (see vm_map.c revisions 1.362 and 1.363) and
pmap_enter_quick() have resulted in panic()s because vm_page_alloc()
mistakenly unlocked objects that had not been locked by
vm_page_select_cache().

Reported by: Peter Holm and Kris Kennaway
2005-01-07 05:02:19 +00:00
scottl
f38236bd88 Fix typos from previous commit. 2005-01-07 05:01:24 +00:00
cperciva
30e2899111 Adjust two of my comments to the new world order: Indent protection in
the first column is performed using /**, not /*-.
2005-01-07 03:25:45 +00:00
imp
2ecef44547 /* -> /*- for license, minor formatting changes, insert COPYRIGHT into files 2005-01-07 02:35:34 +00:00
imp
2b54eeafae /* -> /*- for license, minor formatting changes, separate for KAME 2005-01-07 02:30:35 +00:00
imp
f0bf889d0d /* -> /*- for license, minor formatting changes 2005-01-07 02:29:27 +00:00
imp
4ddf4b47c4 Add FreeBSD tag 2005-01-07 02:28:28 +00:00
imp
a50ffc2912 /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
grehan
99dba32767 Return correct value in the lock routine. 2005-01-07 01:08:39 +00:00
imp
2062b2d532 These are no longer relevant. They are scripts for extracting hints
from 4.x kernel config files.  User's wishing to upgrade from 4.x to 6
will need to go through 5.x, or grab this script from there.  These
scripts will remain in RELENG_5...
2005-01-07 00:54:35 +00:00
imp
ef34e368a7 This is no longer supported, so remove it from the tree. 2005-01-07 00:51:18 +00:00
imp
4da5e292ad /* -> /*- for copyright notices, minor format tweaks as necessary 2005-01-07 00:24:33 +00:00
phk
de4fc049c9 We no longer recurse the mutex. 2005-01-07 00:02:11 +00:00
phk
edf2752b82 If we get an interrupt and the interface is down, return before we
grab the lock.  This should help a tiny bit on machines where unused
if_sis interfaces share IRQ.
2005-01-07 00:01:43 +00:00
phk
2d73390de2 Don't tweak DSP on the ..16 chips. 2005-01-06 23:56:13 +00:00
phk
2467640118 Fix for an issue with excessive collisions in half duplex mode. 2005-01-06 23:54:55 +00:00
phk
9f1fe19e57 Nail the short cable problem the exact way National says it should be. 2005-01-06 23:49:26 +00:00
phk
538dbb8988 Simplify and fix bugs in rx/tx ring cleanup. 2005-01-06 23:36:43 +00:00
imp
20280f1431 /* -> /*- for copyright notices, minor format tweaks as necessary 2005-01-06 23:35:40 +00:00
imp
10be4244ac Expand COPYRIGHT inline, per Matthew Dillon's earlier approval. 2005-01-06 23:34:38 +00:00
phk
44b8eade28 Rewrite the rx/tx ring initialization to use pointers instead of arrays. 2005-01-06 23:31:41 +00:00
phk
ebc98c6300 Eliminate a bunch of unnecessary prototypes. 2005-01-06 23:26:13 +00:00
phk
23d430c9fe Move the module related stuff to the bottom of the file. This will
allow us to save prototypes.
2005-01-06 23:22:38 +00:00
imp
afe5e5fb7a /* -> /*- for license, add FreeBSD tag 2005-01-06 23:22:04 +00:00
phk
4f119dfb62 Make sure to clear any pending interrupts when we stop the interface. 2005-01-06 23:18:44 +00:00
phk
962238ddac Close a theoretical race: By the time the watchdog comes around
the interface may have been stopped, so we should not restart it.
2005-01-06 23:13:50 +00:00
imp
8d58b9df12 /* -> /*- for copyright notices, minor format tweaks as necessary 2005-01-06 22:18:23 +00:00
imp
3a5dc12cb2 Remove left over include file from stallion driver. 2005-01-06 22:07:20 +00:00
imp
0bfe4ce99e Expand indirect reference to BSD license with the current one. 2005-01-06 22:05:28 +00:00
imp
1df02b4d34 This doesn't seem to have been used since 386BSD days 2005-01-06 22:00:50 +00:00
jhb
7cfed3921b Bit 0 of td_flags is now used by the priority borrowing flag, so remove
the unused placeholder constant.
2005-01-06 21:11:05 +00:00
alc
437d364a03 Revise the part of vm_pageout_scan() that moves pages from the cache
queue to the free queue.  With this change, if a page from the cache
queue belongs to a locked object, it is simply skipped over rather
than moved to the inactive queue.
2005-01-06 20:22:36 +00:00
imp
872b48591b /* -> /*- for copyright notices, minor format tweaks as necessary 2005-01-06 18:27:30 +00:00
imp
625b09281c Add dol FreeBSD dol and /*+ize license 2005-01-06 18:27:09 +00:00
imp
fb0a393e99 /* -> /*- for copyright notices, minor format tweaks as necessary 2005-01-06 18:10:42 +00:00
emax
a74e29628a Introduce new startup level SI_SUB_NETGRAPH that is after
SI_SUB_INIT_IF but before SI_SUB_DRIVERS. Make Netgraph(4)
framework initialize at SI_SUB_NETGRAPH level.

This does not address the bigger problem: MODULE_DEPEND
does not seem to work when modules are compiled in the
kernel, but it fixes the problem with Netgraph Bluetooth
device drivers reported by a few folks.

PR:		i386/69876
Reviewed by:	julian, rik, scottl
MFC after:	3 days
2005-01-06 17:45:03 +00:00