]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
20 years agoSince if_xe doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Sat, 14 Aug 2004 00:15:26 +0000 (00:15 +0000)]
Since if_xe doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_vx doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Sat, 14 Aug 2004 00:12:42 +0000 (00:12 +0000)]
Since if_vx doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_txp doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:53:36 +0000 (23:53 +0000)]
Since if_txp doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

Note: mutexes are initialized in the softc for this driver, but the
locking appears inadequate to allow Giant-free operation.

20 years agoSince if_tx doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:52:33 +0000 (23:52 +0000)]
Since if_tx doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_sr doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:49:48 +0000 (23:49 +0000)]
Since if_sr doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_snc doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:47:01 +0000 (23:47 +0000)]
Since if_snc doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_sbni doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:41:00 +0000 (23:41 +0000)]
Since if_sbni doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_ray doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:39:07 +0000 (23:39 +0000)]
Since if_ray doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_plip doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:32:17 +0000 (23:32 +0000)]
Since if_plip doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_nge doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:22:53 +0000 (23:22 +0000)]
Since if_nge doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

Note: this driver does declare and occasionally reference mutexes,
but I believe not nearly enough to provide safety.

20 years agoAvoid using void pointers in additive expressions.
Stefan Farfeleder [Fri, 13 Aug 2004 23:22:38 +0000 (23:22 +0000)]
Avoid using void pointers in additive expressions.

PR: 56653 (libc/rpc bits)
Approved by: alfred

20 years agoSince if_lnc doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:20:50 +0000 (23:20 +0000)]
Since if_lnc doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_lge doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:18:01 +0000 (23:18 +0000)]
Since if_lge doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_ic doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:16:44 +0000 (23:16 +0000)]
Since if_ic doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_ie doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:15:44 +0000 (23:15 +0000)]
Since if_ie doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_hme doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:14:50 +0000 (23:14 +0000)]
Since if_hme doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_gem doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:11:24 +0000 (23:11 +0000)]
Since if_gem doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_fwip doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:09:41 +0000 (23:09 +0000)]
Since if_fwip doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

Approved by: dfr

20 years agoSince if_fe doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:08:08 +0000 (23:08 +0000)]
Since if_fe doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_ex doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:06:55 +0000 (23:06 +0000)]
Since if_ex doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

Note: there are locking macros in if_exreg.h, but they appear to be
unused.

20 years agoSince if_ed doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:04:23 +0000 (23:04 +0000)]
Since if_ed doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoWordsmithing on the GEOM_STRIPE, MSDOSFS_LARGE, and portaudit notes.
Bruce A. Mah [Fri, 13 Aug 2004 23:04:14 +0000 (23:04 +0000)]
Wordsmithing on the GEOM_STRIPE, MSDOSFS_LARGE, and portaudit notes.

20 years agoSince if_cs doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:03:11 +0000 (23:03 +0000)]
Since if_cs doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_cp doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 23:02:17 +0000 (23:02 +0000)]
Since if_cp doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoAdd support for SSDT tables. Dumping or disassembling the DSDT will
Marcel Moolenaar [Fri, 13 Aug 2004 22:59:09 +0000 (22:59 +0000)]
Add support for SSDT tables. Dumping or disassembling the DSDT will
now include the contents if any SSDT table as well. This makes use
of the property that one can concatenate the body of SSDT tables to
the DSDT, updating the DSDT header (length and checksum) and end up
with a larger and valid DSDT table. Hence, this also works with -f.

Reviewed by: njl@

20 years agoSince if_cm doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 22:57:44 +0000 (22:57 +0000)]
Since if_cm doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_awi doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 22:55:25 +0000 (22:55 +0000)]
Since if_awi doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoSince if_arl doesn't contain locking or run with INTR_MPSAFE, mark
Robert Watson [Fri, 13 Aug 2004 22:54:19 +0000 (22:54 +0000)]
Since if_arl doesn't contain locking or run with INTR_MPSAFE, mark
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.

20 years agoAs the if_ar driver doesn't contain locking or run its interrupt
Robert Watson [Fri, 13 Aug 2004 22:52:11 +0000 (22:52 +0000)]
As the if_ar driver doesn't contain locking or run its interrupt
MPSAFE, mark it as IFF_NEEDSGIANT so that its if_start routine is
run holding Giant.

20 years agoSince the if_de driver doesn't contain locking, mark it as
Robert Watson [Fri, 13 Aug 2004 22:48:05 +0000 (22:48 +0000)]
Since the if_de driver doesn't contain locking, mark it as
IFF_NEEDSGIANT so that ifp->if_start won't be called without Giant
when running debug.mpsafenet=1.

20 years agoAdd a man page for tgmath.h.
Stefan Farfeleder [Fri, 13 Aug 2004 22:43:12 +0000 (22:43 +0000)]
Add a man page for tgmath.h.

Reviewed by: keramida

20 years agoFix the memory scaling bug when basemem was converted to Kbytes from
Doug Ambrisko [Fri, 13 Aug 2004 22:30:55 +0000 (22:30 +0000)]
Fix the memory scaling bug when basemem was converted to Kbytes from
bytes for AMD64.  Otherwise the AP will be started at 640K which
won't work.  Bug found on a Xeon 64bit system.

20 years agoUse IFQ_SET_MAXLEN() to set the maximum queue depth of the routing
Robert Watson [Fri, 13 Aug 2004 22:23:21 +0000 (22:23 +0000)]
Use IFQ_SET_MAXLEN() to set the maximum queue depth of the routing
socket netisr queue.

Pointed out by: winter

20 years agoExtend critical section protection around portions of selection processing
Justin T. Gibbs [Fri, 13 Aug 2004 21:41:23 +0000 (21:41 +0000)]
Extend critical section protection around portions of selection processing
that cannot tolerate changes to the waiting for selection queue by the
host or the host canceling an active selection.

20 years agoFix an off by one in the critical section clearing code. The
Justin T. Gibbs [Fri, 13 Aug 2004 21:39:14 +0000 (21:39 +0000)]
Fix an off by one in the critical section clearing code.  The
code was adjusting twice for the instruction pointer indicating
the *next* instruction to execute.  The aic79xx driver had a similar
bug, but was fixed some time ago.

20 years agoCommit a work-around for a more general bug involving process state:
Robert Watson [Fri, 13 Aug 2004 20:27:56 +0000 (20:27 +0000)]
Commit a work-around for a more general bug involving process state:
check whether p_ucred is NULL or not in pfs_getattr() before
dereferencing the credential, and return ENOENT if there wasn't one.

This is a symptom of a larger problem, wherein pfind() can return
references to incompletely initialized processes, and we instead ought
to not return them, or check the process state before acting on the
process.

Reported by: kris
Discussed with: tjr, others

20 years agoThis commit was generated by cvs2svn to compensate for changes in r133665,
Mark Murray [Fri, 13 Aug 2004 19:37:23 +0000 (19:37 +0000)]
This commit was generated by cvs2svn to compensate for changes in r133665,
which included commits to RCS files with non-trunk default branches.

20 years agoBring in support for VIA C3 Nehemiah Padlock crypto support (AES).
Mark Murray [Fri, 13 Aug 2004 19:37:23 +0000 (19:37 +0000)]
Bring in support for VIA C3 Nehemiah Padlock crypto support (AES).
This is from the upcoming OpenSSL 0.9.8 release.

20 years agoFix building for the ACPI_DEBUG case.
Nate Lawson [Fri, 13 Aug 2004 19:27:21 +0000 (19:27 +0000)]
Fix building for the ACPI_DEBUG case.

20 years agoAdd pmap locking to pmap_remove_all().
Alan Cox [Fri, 13 Aug 2004 18:54:21 +0000 (18:54 +0000)]
Add pmap locking to pmap_remove_all().

20 years agoWhen printing out an unknown sense code we should print it in hex, not
Matt Jacob [Fri, 13 Aug 2004 18:45:04 +0000 (18:45 +0000)]
When printing out an unknown sense code we should print it in hex, not
decimal.

Reviewed by: gibbs, nate, kdm

20 years agoRecord the new status after checking if it has changed, not before. This
Nate Lawson [Fri, 13 Aug 2004 17:47:40 +0000 (17:47 +0000)]
Record the new status after checking if it has changed, not before.  This
fixes lost AC line transition events.

Bug report: Kevin Oberman

20 years agoclean up whitespace...
John-Mark Gurney [Fri, 13 Aug 2004 17:43:53 +0000 (17:43 +0000)]
clean up whitespace...

20 years agoMiscellaneous edits. Mostly style, grammar, and punctuation fixes in
Bruce A. Mah [Fri, 13 Aug 2004 15:09:20 +0000 (15:09 +0000)]
Miscellaneous edits.  Mostly style, grammar, and punctuation fixes in
the vein of my previous, recent commits.

Updated release notes: Augmented sha(1)/rmd160(1) note, updated pf(4)
pseudo-users, retweaked doscmd note to reinstate a missing word I
deleted by accident [1] and add some more info.

MFCs noted:  ppp(8) LQM, ppp(8) set rad_alive.

Pointed out by: "Eagle Eyes" ru [1]

20 years agoDocument the MNT_SNAPSHOT mount flag with a cross-reference
Peter Pentchev [Fri, 13 Aug 2004 14:33:03 +0000 (14:33 +0000)]
Document the MNT_SNAPSHOT mount flag with a cross-reference
to mksnap_ffs(8).

PR: 70402
Submitted by: James Raftery <james@now.ie>

20 years agoRemoved COPTS support from kmod.mk and kern.pre.mk.
Ruslan Ermilov [Fri, 13 Aug 2004 14:30:26 +0000 (14:30 +0000)]
Removed COPTS support from kmod.mk and kern.pre.mk.
COPTS support in bsd.prog.mk is preserved but discouraged.

20 years agoReplaced COPTS by equivalent CFLAGS.
Ruslan Ermilov [Fri, 13 Aug 2004 14:21:49 +0000 (14:21 +0000)]
Replaced COPTS by equivalent CFLAGS.

20 years agoRemoved COPTS with equivalent CFLAGS.
Ruslan Ermilov [Fri, 13 Aug 2004 14:19:12 +0000 (14:19 +0000)]
Removed COPTS with equivalent CFLAGS.
While here, fixed setting of BINDIR.

20 years agoRemoved commented out bitrot.
Ruslan Ermilov [Fri, 13 Aug 2004 14:18:24 +0000 (14:18 +0000)]
Removed commented out bitrot.

20 years agoProofreading the 4.x -> 5.x upgrade procedure.
Ruslan Ermilov [Fri, 13 Aug 2004 13:14:05 +0000 (13:14 +0000)]
Proofreading the 4.x -> 5.x upgrade procedure.

20 years agoReplaced a way outdated and unsafe sequence of upgrading the system
Ruslan Ermilov [Fri, 13 Aug 2004 12:59:46 +0000 (12:59 +0000)]
Replaced a way outdated and unsafe sequence of upgrading the system
from sources with the link to the relevant section in src/UPDATING.

20 years agoFix resource check while autodetection.
Roman Kurakin [Fri, 13 Aug 2004 12:35:52 +0000 (12:35 +0000)]
Fix resource check while autodetection.

20 years agoWhite space cleanup.
Roman Kurakin [Fri, 13 Aug 2004 12:27:24 +0000 (12:27 +0000)]
White space cleanup.

20 years agoWhite space cleanup.
Roman Kurakin [Fri, 13 Aug 2004 12:22:01 +0000 (12:22 +0000)]
White space cleanup.

20 years agoWhite space cleanup.
Roman Kurakin [Fri, 13 Aug 2004 12:14:39 +0000 (12:14 +0000)]
White space cleanup.

20 years agoRegen.
Max Khon [Fri, 13 Aug 2004 09:56:22 +0000 (09:56 +0000)]
Regen.

20 years agoI was born in USSR.
Max Khon [Fri, 13 Aug 2004 09:54:29 +0000 (09:54 +0000)]
I was born in USSR.

20 years agoRegression test for geom_uzip.
Max Khon [Fri, 13 Aug 2004 09:53:52 +0000 (09:53 +0000)]
Regression test for geom_uzip.

20 years agoAdd geom_uzip -- geom class that implements read-only compressed disks.
Max Khon [Fri, 13 Aug 2004 09:40:58 +0000 (09:40 +0000)]
Add geom_uzip -- geom class that implements read-only compressed disks.
Currently supports cloop V2.0 disk compression format.
May support more formats in future.

20 years agoAdd a regression test for the ATM call control stuff.
Hartmut Brandt [Fri, 13 Aug 2004 09:27:21 +0000 (09:27 +0000)]
Add a regression test for the ATM call control stuff.

20 years agontptimeset is not build anymore by default so remove it for the time being.
Ollivier Robert [Fri, 13 Aug 2004 09:10:38 +0000 (09:10 +0000)]
ntptimeset is not build anymore by default so remove it for the time being.

Prodded by: imp

20 years agoAllow the use of a supplied function to set the PRD table. This is
Søren Schmidt [Fri, 13 Aug 2004 08:14:27 +0000 (08:14 +0000)]
Allow the use of a supplied function to set the PRD table. This is
needed for new chips that supports 64bit addressing.

20 years agoReplace the linear search in vm_map_findspace() with an O(log n)
Alan Cox [Fri, 13 Aug 2004 08:06:34 +0000 (08:06 +0000)]
Replace the linear search in vm_map_findspace() with an O(log n)
algorithm built into the map entry splay tree.  This replaces the
first_free hint in struct vm_map with two fields in vm_map_entry:
adj_free, the amount of free space following a map entry, and
max_free, the maximum amount of free space in the entry's subtree.
These fields make it possible to find a first-fit free region of a
given size in one pass down the tree, so O(log n) amortized using
splay trees.

This significantly reduces the overhead in vm_map_findspace() for
applications that mmap() many hundreds or thousands of regions, and
has a negligible slowdown (0.1%) on buildworld.  See, for example, the
discussion of a micro-benchmark titled "Some mmap observations
compared to Linux 2.6/OpenBSD" on -hackers in late October 2003.

OpenBSD adopted this approach in March 2002, and NetBSD added it in
November 2003, both with Red-Black trees.

Submitted by: Mark W. Krentel

20 years agolooks like rwatson forgot tabs... :)
John-Mark Gurney [Fri, 13 Aug 2004 07:38:58 +0000 (07:38 +0000)]
looks like rwatson forgot tabs... :)

20 years agoMake -I and --files-from be synonyms for -T
Tim Kientzle [Fri, 13 Aug 2004 07:23:02 +0000 (07:23 +0000)]
Make -I and --files-from be synonyms for -T

20 years agoMove PNP IDs back into oldcard files
Warner Losh [Fri, 13 Aug 2004 06:57:31 +0000 (06:57 +0000)]
Move PNP IDs back into oldcard files

20 years ago1. Add missing functions: libthr_dbresume,libthr_dbsuspend.
David Xu [Fri, 13 Aug 2004 06:47:33 +0000 (06:47 +0000)]
1. Add missing functions: libthr_dbresume,libthr_dbsuspend.
2. Implement functions: libthr_db_thr_setfpregs, libthr_db_thr_setregs,
   libthr_db_ta_map_id2thr.
3. simplify libthr_db_thr_getfpregs, libthr_db_thr_getgregs.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:35 +0000 (06:22 +0000)]
MPSAFE locking

* Serialize access to the sysctl routines and the notify handler
* Assert that the sx lock is held in any functions they call.
* Note that recursively calling to re-enable the hotkeys is sub-optimal.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:31 +0000 (06:22 +0000)]
MPSAFE locking

* Serialize access to the sysctl routines and the notify handler
* Assert that the sx lock is held in any functions they call.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:29 +0000 (06:22 +0000)]
MPSAFE locking

* Serialize access to the sysctl routines and the notify handler.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:26 +0000 (06:22 +0000)]
MPSAFE locking

* Simplify taskqueue locking.
* Don't acquire Giant around calls to the taskqueue function.
* Remove 4.x compatibility routines.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:24 +0000 (06:22 +0000)]
MPSAFE locking

* Remove the interrupt wrapper that locked Giant and call the handler
  directly.  Mark the handler as MPSAFE.
* Don't attempt to detect if a handler is installed.  Leave that to the
  bus_alloc_resource() function.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:20 +0000 (06:22 +0000)]
MPSAFE locking

* Serialize operations in acpi_video_bind_outputs(), acpi_video_detach(),
  acpi_video_notify_handler(), acpi_video_power_profile(), and the sysctls.
  The main goal is to protect the shared device list and prevent conflicting
  settings.
* Add assertions that the sx lock is held in the leaf functions.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:17 +0000 (06:22 +0000)]
MPSAFE locking

* Restructure the event handling path.  acpi_tz_thread() now calls
  acpi_tz_timeout() any time an event occurs.  acpi_tz_timeout() checks
  the flags and calls acpi_tz_power_profile(), acpi_tz_establish(), and
  acpi_tz_monitor() as appropriate.  Notifies only do a wakeup and let
  acpi_tz_thread() do the actual work.  This path is cleaner and allows
  locking since the call path is now always a D.A.G.
* Add the acpi_tz_signal() function to set flags and wake the thread.
* Remove the tz_tmp_updating flag since calls are serialized by
  acpi_tz_thread().
* Remove Giant locking.

20 years agoMPSAFE locking: Add a comment that we need resource list and device_t
Nate Lawson [Fri, 13 Aug 2004 06:22:13 +0000 (06:22 +0000)]
MPSAFE locking:  Add a comment that we need resource list and device_t
refcounting/locking.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:10 +0000 (06:22 +0000)]
MPSAFE locking

* Serialize acpi_pwr_switch_consumer() and acpi_pwr_wake_enable().
* Make acpi_pwr_switch_consumer() have a single exit point.
* Add assertions to the leaf functions they call.
* Fix a memory leak in acpi_pwr_deregister_consumer().  However, it is
  currently ifdefed out so this code was unused.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:07 +0000 (06:22 +0000)]
MPSAFE locking

* Serialize calls to acpi_pcib_route_interrupt().
* Note that acpi_pcib_attach() should not be called concurrently.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:22:03 +0000 (06:22 +0000)]
MPSAFE locking

* Serialize access to acpi_pci_link_config(), acpi_pci_find_prt(),
  acpi_pci_link_route(), and acpi_pci_link_resume().
* Add lock assertions to all functions called by them.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:58 +0000 (06:21 +0000)]
MPSAFE locking

* Serialize access to acpi_pci_set_powerstate_method().

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:55 +0000 (06:21 +0000)]
MPSAFE locking

* Serialize notifying the user in acpi_lid_notify_status_changed().  This
  way multiple lid events occur in order.
* Add an initialization pass to get the lid status at boot-time.  This
  pass does not notify any apps but gets the initial status.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:53 +0000 (06:21 +0000)]
MPSAFE locking

* Use the common serialization macros instead of rolling our own.
* Increase the coverage of the lock in EcSpaceHandler() to cover the entire
  loop to avoid dropping the lock when reading more than one byte.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:47 +0000 (06:21 +0000)]
MPSAFE locking

* Hold the ACPI lock over table register writes.
* Serialize calls to acpi_cpu_throttle_set() and the sysctls.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:44 +0000 (06:21 +0000)]
MPSAFE locking

* Serialize ops in acpi_cmbat_notify_handler(), acpi_cmbat_ioctl(),
  acpi_cmbat_init_battery(), and acpi_cmbat_get_battinfo().
* Get the softc directly in acpi_cmbat_get_total_battinfo() rather than
  build an array of them.
* Don't queue a _BIF query after receiving a notify.  Since we clear the
  timespec, a _BIF query will be done in the context of the next caller.
* Add asserts to leaf functions that operate on shared data.
* Remove the bst/bif updating flags now that we hold the lock over the
  full query.
* Explain various comments in more detail.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:41 +0000 (06:21 +0000)]
MPSAFE locking

* Serialize acpi_battery_get_battdesc(), acpi_battery_register(), and
  acpi_battery_remove().
* Assert that the sx lock is held in acpi_batteries_init().
* Remove check for device_get_softc() returning NULL.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:36 +0000 (06:21 +0000)]
MPSAFE locking

* Serialize notification of acline changes in acpi_acad_get_status().
* Remove the initializing flag.  With the locking, we don't need to
  push off requests for the acline before initialization is done.
* Don't check device_get_softc(), it can't return NULL.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:32 +0000 (06:21 +0000)]
MPSAFE locking

* Serialize calls to acpi_alloc_resource(), acpi_release_resource(),
  acpi_Enable(), acpi_Disable(), and acpi_debug_sysctl().
* Acquire the ACPI mutex in acpi_register_ioctl(), acpi_deregister_ioctl(),
  and acpiioctl().
* Acquire the mutex while disabling subsequent requests to enter a
  sleep state in acpi_SetSleepState().
* Be sure to re-enable sleep requests and don't run resume methods when
  the current request fails.
* Don't check if sleep requests are disabled in the ACPIIO_SETSLPSTATE
  ioctl.  acpi_SetSleepState() does this for us.
* Remove the acquisition of Giant from the struct cdevsw.
* Remove the ACPI_USE_THREADS option.

20 years agoMPSAFE locking
Nate Lawson [Fri, 13 Aug 2004 06:21:19 +0000 (06:21 +0000)]
MPSAFE locking

* Add and comment our locking primitives.  The mutex primitives use a
  a static mutex and the serialization ones use a static sx lock.  A global
  acpi_mutex is used for access to global resources (i.e., writes to the
  SMI_CMD register.)
* Remove 4.x compat defines.

20 years agoBring in fix from gzip 1.3.3 to avoid crashes when processing certain corrupt
Tim J. Robbins [Fri, 13 Aug 2004 05:38:44 +0000 (05:38 +0000)]
Bring in fix from gzip 1.3.3 to avoid crashes when processing certain corrupt
input files:

1999-06-25  Paul Eggert  <eggert@twinsun.com>

        * inflate.c (huft_build):
        Set n to length of v, to detect improper tables.
        Don't accidentally grow j past z.

MFC after: 3 days

20 years agoMore wording, grammar, and punctuation tweaks. No major content
Bruce A. Mah [Fri, 13 Aug 2004 04:54:52 +0000 (04:54 +0000)]
More wording, grammar, and punctuation tweaks.  No major content
changes, although one release note, about udav(4) promiscuous mode,
was deleted as it was redundant (the driver itself is new and this
fact has its own note).

20 years agoRe-write some poorly written paragraphs. Document the 2130.
Scott Long [Fri, 13 Aug 2004 03:55:35 +0000 (03:55 +0000)]
Re-write some poorly written paragraphs.  Document the 2130.

20 years agoRemove trailing whitespace and change "prisoniD" to "prisonID".
Christian S.J. Peron [Fri, 13 Aug 2004 02:50:59 +0000 (02:50 +0000)]
Remove trailing whitespace and change "prisoniD" to "prisonID".

Pointed out by: simon
Approved by: bmilekic (mentor)

20 years agoAdd support for the Adaptec RAID-On-Chip architecture. This in turn
Scott Long [Fri, 13 Aug 2004 01:44:09 +0000 (01:44 +0000)]
Add support for the Adaptec RAID-On-Chip architecture.  This in turn
provides support for the Adaptec 2130S adapter.  Thanks to Adaptec for
providing hardware for this.

20 years agoDon't keep evaluating our own cpu mask..
Julian Elischer [Fri, 13 Aug 2004 00:57:43 +0000 (00:57 +0000)]
Don't keep evaluating our own cpu mask..
it's not likely to have changed....

20 years agoAdd a macro to define the size of a subsection of a structure.
Julian Elischer [Fri, 13 Aug 2004 00:53:40 +0000 (00:53 +0000)]
Add a macro to define the size of a subsection of a structure.
Used in fork1() and thr_create()

20 years agoAdded two new media types for 10GBASE-SR and 10GBASE-LR
Tony Ackerman [Thu, 12 Aug 2004 23:48:26 +0000 (23:48 +0000)]
Added two new media types for 10GBASE-SR and 10GBASE-LR

20 years agoadd support for SanDisk Cruzer Mini 256MB USB 2.0 Flash Drive
MIHIRA Sanpei Yoshiro [Thu, 12 Aug 2004 23:29:22 +0000 (23:29 +0000)]
add support for SanDisk Cruzer Mini 256MB USB 2.0 Flash Drive

PR: kern/65438
Submitted by: Peter D. Quilty <pdquilty@adelphia.net>
MFC after: 1 week

20 years agoadd support Frontier Labs NEX IA+ Digital Audio Player with USB CF card reader/writer
MIHIRA Sanpei Yoshiro [Thu, 12 Aug 2004 23:17:09 +0000 (23:17 +0000)]
add support Frontier Labs NEX IA+ Digital Audio Player with USB CF card reader/writer

PR: kern/70158
Submitted by: Bernd Strau. <no_bs@web.de>
MFC after: 1 week

20 years agoAdd the ability to associate ipfw rules with a specific prison ID.
Christian S.J. Peron [Thu, 12 Aug 2004 22:06:55 +0000 (22:06 +0000)]
Add the ability to associate ipfw rules with a specific prison ID.
Since the only thing truly unique about a prison is it's ID, I figured
this would be the most granular way of handling this.

This commit makes the following changes:

- Adds tokenizing and parsing for the ``jail'' command line option
  to the ipfw(8) userspace utility.
- Append the ipfw opcode list with O_JAIL.
- While Iam here, add a comment informing others that if they
  want to add additional opcodes, they should append them to the end
  of the list to avoid ABI breakage.
- Add ``fw_prid'' to the ipfw ucred cache structure.
- When initializing ucred cache, if the process is jailed,
  set fw_prid to the prison ID, otherwise set it to -1.
- Update man page to reflect these changes.

This change was a strong motivator behind the ucred caching
mechanism in ipfw.

A sample usage of this new functionality could be:

    ipfw add count ip from any to any jail 2

It should be noted that because ucred based constraints
are only implemented for TCP and UDP packets, the same
applies for jail associations.

Conceptual head nod by: pjd
Reviewed by: rwatson
Approved by: bmilekic (mentor)

20 years ago- Use bus_space_subregion() rather than arithmetic on bus_space_handle_t. [1]
Marius Strobl [Thu, 12 Aug 2004 20:37:02 +0000 (20:37 +0000)]
- Use bus_space_subregion() rather than arithmetic on bus_space_handle_t. [1]
- Properly use the error variable and return it on failure in the attach-
  routines.

Reviewed by: tmm
Inspired by: NetBSD [1]

20 years agoThe vm map lock is needed in vm_fault() after the page has been found,
Tor Egge [Thu, 12 Aug 2004 20:14:49 +0000 (20:14 +0000)]
The vm map lock is needed in vm_fault() after the page has been found,
to avoid later changes before pmap_enter() and vm_fault_prefault()
has completed.

Simplify deadlock avoidance by not blocking on vm map relookup.

In collaboration with: alc