dragonfly.git
16 years agoAdd some more rc vars for Bluetooth to rc.conf and document them.
Sascha Wildner [Wed, 16 Jan 2008 11:33:43 +0000 (11:33 +0000)]
Add some more rc vars for Bluetooth to rc.conf and document them.

16 years agoMention /etc/upgrade
Matthias Schmidt [Wed, 16 Jan 2008 09:28:58 +0000 (09:28 +0000)]
Mention /etc/upgrade

16 years agoHAMMER 20A/many: B-Tree lookup API cleanup, B-Tree changes.
Matthew Dillon [Wed, 16 Jan 2008 01:15:37 +0000 (01:15 +0000)]
HAMMER 20A/many: B-Tree lookup API cleanup, B-Tree changes.

* Abstract the as-of TID in the cursor API to hide the implementation
  details.

* Key off of delete_tid instead of create_tid.

* Deal with a boundary key issue related to as-of lookups.  This issue arises
  when several records which differ only by their create_tid/delete_tid
  reside in different leaf nodes.  For example:

o(10) (delete_tid's listed)
       /    \
      6     16

  If we want to do an as-of lookup of say, (8), the btree scan will dive
  into the left branch and fail to find any elements visible to our as-of
  request.  The element '16' in the right branch, however, is visible
  because it was deleted after the as-of timestamp of 8.

  When this case arises btree_search() now detects that the boundary
  element (10) exactly matches the request except for the delete_tid
  and btree_search() now automatically iterates if an as-of search
  is being executed.

  For non-asof searches, such as insertion searches, the delete_tid is
  treated as an absolute and it is desireable to recurse into the left
  branch and stop there.  If we popped over to the right branch our
  new element (8) would be to the right of our boundary element (10)
  instead of to the left.

* Remove code related to dealing with spike ranges in preparation for
  a major change in the way spikes operate.

16 years agoAdjust for the DragonFly ELF ABI
Simon Schubert [Wed, 16 Jan 2008 01:02:40 +0000 (01:02 +0000)]
Adjust for the DragonFly ELF ABI

16 years agoMention that '_enable' is not needed.
Sascha Wildner [Tue, 15 Jan 2008 21:35:46 +0000 (21:35 +0000)]
Mention that '_enable' is not needed.

16 years ago* Document the valid values for variables of type bool. They is already
Sascha Wildner [Tue, 15 Jan 2008 21:35:09 +0000 (21:35 +0000)]
* Document the valid values for variables of type bool. They is already
  documented in rc.subr(8) but it seems appropriate to add this info
  here, too.

* Mention that '_enable' is not needed.

16 years agoAdd bluetooth files to the 'distribution' target.
Sascha Wildner [Tue, 15 Jan 2008 20:54:02 +0000 (20:54 +0000)]
Add bluetooth files to the 'distribution' target.

16 years agoDefaults for btconfig and sdpd rc.d scripts.
Hasso Tepper [Tue, 15 Jan 2008 19:17:36 +0000 (19:17 +0000)]
Defaults for btconfig and sdpd rc.d scripts.

Reminded-by: swildner@ and matthias@
16 years agoIf make upgrade deletes a file, print its name to stdout.
Matthias Schmidt [Tue, 15 Jan 2008 14:48:47 +0000 (14:48 +0000)]
If make upgrade deletes a file, print its name to stdout.

16 years agoRemove 3rd clause
Matthias Schmidt [Tue, 15 Jan 2008 14:21:00 +0000 (14:21 +0000)]
Remove 3rd clause

16 years agoIncrease size of the umsm(4) buffers and tty(4) input buffer to allow high
Hasso Tepper [Tue, 15 Jan 2008 14:19:11 +0000 (14:19 +0000)]
Increase size of the umsm(4) buffers and tty(4) input buffer to allow high
speed serial devices like HSDPA modems work more reliably.

16 years agoRemove sh.exp.c.patch. The fix is included in version 6.15.00
Matthias Schmidt [Tue, 15 Jan 2008 13:56:18 +0000 (13:56 +0000)]
Remove sh.exp.c.patch.  The fix is included in version 6.15.00

16 years agoSwitch to tcsh 6.15.00
Matthias Schmidt [Tue, 15 Jan 2008 13:54:43 +0000 (13:54 +0000)]
Switch to tcsh 6.15.00

16 years agoAdd checkpoiting support to tcsh
Matthias Schmidt [Tue, 15 Jan 2008 13:50:59 +0000 (13:50 +0000)]
Add checkpoiting support to tcsh

16 years agoAdd our READMEs
Matthias Schmidt [Tue, 15 Jan 2008 13:46:32 +0000 (13:46 +0000)]
Add our READMEs

16 years agoMerge from vendor branch TCSH:
Matthias Schmidt [Tue, 15 Jan 2008 13:41:47 +0000 (13:41 +0000)]
Merge from vendor branch TCSH:
Vendor import of tcsh 6.15.00

16 years agoVendor import of tcsh 6.15.00
Matthias Schmidt [Tue, 15 Jan 2008 13:41:47 +0000 (13:41 +0000)]
Vendor import of tcsh 6.15.00

16 years agoo Prepend output with a <TAB>
Matthias Schmidt [Tue, 15 Jan 2008 12:30:44 +0000 (12:30 +0000)]
o Prepend output with a <TAB>
o Fix typo

16 years agoAdd our register layout changes.
Simon Schubert [Tue, 15 Jan 2008 10:09:29 +0000 (10:09 +0000)]
Add our register layout changes.

16 years agoMore ids.
Sepherosa Ziehau [Tue, 15 Jan 2008 09:45:35 +0000 (09:45 +0000)]
More ids.

Obtained-from: Ralink RT73

16 years ago- Store tx rate control parameters in drivers, so switching between tx rate
Sepherosa Ziehau [Tue, 15 Jan 2008 09:01:13 +0000 (09:01 +0000)]
- Store tx rate control parameters in drivers, so switching between tx rate
  control algorithms will not loose configured values.
- Move tx rate control private structures into its implementation file.

16 years agoHAMMER 19/Many - Cleanup pass, cluster recovery code.
Matthew Dillon [Tue, 15 Jan 2008 06:02:57 +0000 (06:02 +0000)]
HAMMER 19/Many - Cleanup pass, cluster recovery code.

16 years agoSimplify tx rate control for drivers which only support periodic TX
Sepherosa Ziehau [Tue, 15 Jan 2008 03:03:25 +0000 (03:03 +0000)]
Simplify tx rate control for drivers which only support periodic TX
data statistics.

16 years agoUpdate for import
Simon Schubert [Tue, 15 Jan 2008 00:39:15 +0000 (00:39 +0000)]
Update for import

16 years agoMerge from vendor branch GDB:
Simon Schubert [Tue, 15 Jan 2008 00:38:45 +0000 (00:38 +0000)]
Merge from vendor branch GDB:
Import missed files from gdb-6.7.1

16 years agoImport missed files from gdb-6.7.1
Simon Schubert [Tue, 15 Jan 2008 00:38:45 +0000 (00:38 +0000)]
Import missed files from gdb-6.7.1

16 years agoSwitch to gdb-6.7.1
Simon Schubert [Mon, 14 Jan 2008 21:36:39 +0000 (21:36 +0000)]
Switch to gdb-6.7.1

16 years agoAdd our READMEs
Simon Schubert [Mon, 14 Jan 2008 21:27:06 +0000 (21:27 +0000)]
Add our READMEs

16 years agoRemove erroneously imported files
Simon Schubert [Mon, 14 Jan 2008 21:25:33 +0000 (21:25 +0000)]
Remove erroneously imported files

16 years agoCustomize the code to make it compile nicely.
Simon Schubert [Mon, 14 Jan 2008 21:04:52 +0000 (21:04 +0000)]
Customize the code to make it compile nicely.

16 years agoImport a stripped gdb-6.7.1
Simon Schubert [Mon, 14 Jan 2008 21:00:22 +0000 (21:00 +0000)]
Import a stripped gdb-6.7.1

16 years agoMerge from vendor branch GDB:
Simon Schubert [Mon, 14 Jan 2008 21:00:22 +0000 (21:00 +0000)]
Merge from vendor branch GDB:
Import a stripped gdb-6.7.1

16 years agoAdd support for Cisco-Linksys WUSB54GC which has a different vendor ID
Joe Talbott [Mon, 14 Jan 2008 19:27:11 +0000 (19:27 +0000)]
Add support for Cisco-Linksys WUSB54GC which has a different vendor ID
than the Linksys WUSB54GC.

16 years agoAttempt to fix an interrupt recursion which can occur in specific
Matthew Dillon [Mon, 14 Jan 2008 15:27:17 +0000 (15:27 +0000)]
Attempt to fix an interrupt recursion which can occur in specific
situations.  The 'slow' interrupt code schedules an interrupt thread
without holding a critical section in an attempt to allow the thread to
preempt the current thread.  If the thread preempts it can re-arm the
interrupt prior to returning and cause an interrupt recursion to occur
before the interrupt code is able to finish doreti, leading to a stack
overflow.

Since we want to preempt we cannot use a critical section to prevent
the recursion.  Instead, use curthread->td_nest_count to prevent
recursive interrupts while the thread is unprotected by a critical
section.  The same condition will now cause successive interrupts to
be queued and then dispatched synchronously by doreti.

Reported-by: "Simon 'corecode' Schubert" <corecode@fs.ei.tum.de>
16 years agoo Install Makefile_upgrade.inc to /etc/upgrade instead of /var/db.
Matthias Schmidt [Mon, 14 Jan 2008 12:39:27 +0000 (12:39 +0000)]
o Install Makefile_upgrade.inc to /etc/upgrade instead of /var/db.
Requested-by: dillon@
o Install the file really _after_ installworld this time.  Thanks to
  corecode@ for the report.  This unbreaks buildworld
o Add an entry to the mtree file for /etc/upgrade
o Print a short message before deleting files

16 years agoCreate four instead of one devices for vnode disks in /dev. If you use
Matthias Schmidt [Mon, 14 Jan 2008 12:34:44 +0000 (12:34 +0000)]
Create four instead of one devices for vnode disks in /dev.  If you use
vn(4) one entry is not enough in most cases.

16 years agoRemove the entries for the deleted tools.
Matthias Schmidt [Sun, 13 Jan 2008 19:05:27 +0000 (19:05 +0000)]
Remove the entries for the deleted tools.

16 years agoRemove rc/tools/tools/html-mv which is useless.
Matthias Schmidt [Sun, 13 Jan 2008 19:03:08 +0000 (19:03 +0000)]
Remove rc/tools/tools/html-mv which is useless.

16 years agoDelete src/tools/tools/tcl_bmake. We don't have tcl in the source so the
Matthias Schmidt [Sun, 13 Jan 2008 19:01:52 +0000 (19:01 +0000)]
Delete src/tools/tools/tcl_bmake.  We don't have tcl in the source so the
script is useless.

16 years agoNuke src/tools/tools/epfe. The script is useless because we don't have
Matthias Schmidt [Sun, 13 Jan 2008 19:00:33 +0000 (19:00 +0000)]
Nuke src/tools/tools/epfe.  The script is useless because we don't have
a locally installed SGML handbook.  If someone wants to use the tool with
the FreeBSD handbook, the tool remains in the Attic as well as in the
FreeBSD source.

16 years agoAdd a new tool to convert FreeBSD USB device IDs to the format we use
Matthias Schmidt [Sun, 13 Jan 2008 18:21:50 +0000 (18:21 +0000)]
Add a new tool to convert FreeBSD USB device IDs to the format we use
in DragonFly.  This eases the process of getting new IDs from FreeBSD, which
is currently necessary due to the fact that their lists are much longer
than our lists :)

To use the tool you need the usbdevs file from FreeBSD:
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/usb/usbdevs

usage: ./convert_usb_ids.sh [-d] < FREEBSD-IDs > DFLY-IDs

The tool operates in two modi.  The first one is for umass entries and
converts entries like this

  { USB_VENDOR_ADDONICS2, USB_PRODUCT_ADDONICS2_CABLE_205, RID_WILDCARD,
  UMASS_PROTO_SCSI | UMASS_PROTO_BBB,
  NO_QUIRKS
  },

to

  /* Addonics Cable 205  */
  { .vendor = 0x0bf6, .product = 0xa001, release = WILDCARD_ID,
    .proto  = UMASS_PROTO_SCSI | UMASS_PROTO_BBB,
    .quirks = NO_QUIRKS
  },

Pass -d option to use umass modi.  The second one converts easier
entries:

  {{ USB_VENDOR_ACEECA, USB_PRODUCT_ACEECA_MEZ1000 }, PALM4 },

to

  {{ USB_DEVICE(0x4766, 0x0001) }, PALM4 }, /* Aceeca MEZ1000 RDA  */

NOTE:  Due to some peculiarities of the usbdevs file, it is possible that you
can get duplicate entries or wrong comments.  So make sure that your converted
entry is correct.

16 years agoGC ifdef magic for old gcc version.
Simon Schubert [Sun, 13 Jan 2008 18:02:20 +0000 (18:02 +0000)]
GC ifdef magic for old gcc version.

16 years agohandbook.txt has been removed
Sascha Wildner [Sun, 13 Jan 2008 17:56:03 +0000 (17:56 +0000)]
handbook.txt has been removed

16 years agoNuke remains of recently removed stuff.
Sascha Wildner [Sun, 13 Jan 2008 17:51:36 +0000 (17:51 +0000)]
Nuke remains of recently removed stuff.

16 years agoHuawei UMTS/HSDPA adapetrs are already handled by umsm(4).
Hasso Tepper [Sun, 13 Jan 2008 16:04:02 +0000 (16:04 +0000)]
Huawei UMTS/HSDPA adapetrs are already handled by umsm(4).

16 years agoAdd Makefile_upgrade.inc to the tree. This file contains all files
Matthias Schmidt [Sun, 13 Jan 2008 10:59:31 +0000 (10:59 +0000)]
Add Makefile_upgrade.inc to the tree.  This file contains all files
which are obsolete as of now and can be removed by a 'make upgrade'
run.  This should prevent further polluting of etc/Makefile with
rm -rf $foo statements.

The file is installed by 'make installworld' to ${DESTDIR}/var/db
and gets parsed by 'make upgrade'.  If a user exchanges the two commands
by accident, 'make upgrade' prints a warning and doesn't remove any
files.  The upgrade file itself is removed after a successful run.

16 years agoo Correct quirks entry for a MP3 player
Matthias Schmidt [Sun, 13 Jan 2008 10:05:21 +0000 (10:05 +0000)]
o Correct quirks entry for a MP3 player
o Add new quirk for Netak OnlyDisk drive

Obtained-from: FreeBSD

16 years agoRearrange a bit to avoid duplicate code.
Sascha Wildner [Sun, 13 Jan 2008 08:41:15 +0000 (08:41 +0000)]
Rearrange a bit to avoid duplicate code.

16 years agoSync page with FreeBSD to get mode pages for removable devices.
Matthias Schmidt [Sat, 12 Jan 2008 20:11:53 +0000 (20:11 +0000)]
Sync page with FreeBSD to get mode pages for removable devices.

16 years agoSync the file with FreeBSD to get the latest USB HID usage tables for
Matthias Schmidt [Sat, 12 Jan 2008 20:08:49 +0000 (20:08 +0000)]
Sync the file with FreeBSD to get the latest USB HID usage tables for
usbhid(3).

16 years agoRemove src/share/examples/BSD_daemon containing images/sources for the
Matthias Schmidt [Sat, 12 Jan 2008 19:47:05 +0000 (19:47 +0000)]
Remove src/share/examples/BSD_daemon containing images/sources for the
BSD daemon and FreeBSD CD covers.

16 years agoRemove src/share/examples/worm used to build FreeBSD CDROMs. Its it
Matthias Schmidt [Sat, 12 Jan 2008 19:43:50 +0000 (19:43 +0000)]
Remove src/share/examples/worm used to build FreeBSD CDROMs.  Its it
useless on DragonFly.  Users who want to build their own CDROM can use our
nrelease stuff.

16 years agoRemove src/share/examples/FreeBSD_version which is not really useful on
Matthias Schmidt [Sat, 12 Jan 2008 19:41:00 +0000 (19:41 +0000)]
Remove src/share/examples/FreeBSD_version which is not really useful on
DragonFly.

16 years agoRemove some ancient HTML files and an obsolete copy of 'Theory' (there
Sascha Wildner [Sat, 12 Jan 2008 17:53:16 +0000 (17:53 +0000)]
Remove some ancient HTML files and an obsolete copy of 'Theory' (there
is a newer version in share/zoneinfo).

16 years agoRemove handbook during next make upgrade run.
Matthias Schmidt [Sat, 12 Jan 2008 16:30:47 +0000 (16:30 +0000)]
Remove handbook during next make upgrade run.

16 years agoRemove the SUBDIR line. The last entry was the handbook.
Matthias Schmidt [Sat, 12 Jan 2008 16:25:57 +0000 (16:25 +0000)]
Remove the SUBDIR line.  The last entry was the handbook.

16 years agoRemove the ascii version of the handbook from the base system. This version
Matthias Schmidt [Sat, 12 Jan 2008 16:16:38 +0000 (16:16 +0000)]
Remove the ascii version of the handbook from the base system.  This version
is badly out of date and barely helpful.

OK-by: swildner@
16 years agoClean up etc/mtree a bit:
Sascha Wildner [Sat, 12 Jan 2008 15:47:43 +0000 (15:47 +0000)]
Clean up etc/mtree a bit:

* Remove BSD.release.dist, BSD.x11.dist and BSD.x11-4.dist which are
  unused.

* Untabify the remaining files as per etc/mtree/README.

16 years agoMake sure we really do only the software part if we're dying. Fixes panic
Hasso Tepper [Sat, 12 Jan 2008 12:30:22 +0000 (12:30 +0000)]
Make sure we really do only the software part if we're dying. Fixes panic
while detaching ohci device.

16 years agoMinor fix.
Nicolas Thery [Sat, 12 Jan 2008 08:17:44 +0000 (08:17 +0000)]
Minor fix.

16 years agoUse .Fx and .Dx.
Sascha Wildner [Sat, 12 Jan 2008 07:09:41 +0000 (07:09 +0000)]
Use .Fx and .Dx.

16 years agopoll.h header should define the nfds_t type as required by the SUSv3.
Nuno Antunes [Sat, 12 Jan 2008 06:01:27 +0000 (06:01 +0000)]
poll.h header should define the nfds_t type as required by the SUSv3.

Include the definition in the header and adjust poll(2) prototype.
Update the manpage accordingly.

Obtained from: FreeBSD
Ok by: swildner@

16 years agoAdd support for EVDO/UMTS card found in X61s Thinkpads.
Hasso Tepper [Fri, 11 Jan 2008 19:45:27 +0000 (19:45 +0000)]
Add support for EVDO/UMTS card found in X61s Thinkpads.

16 years agoAdd SparkLan RT2573
Sepherosa Ziehau [Fri, 11 Jan 2008 14:28:59 +0000 (14:28 +0000)]
Add SparkLan RT2573

Obtained-from: OpenBSD via FreeBSD

16 years ago- Fix compiling umsm(4) with UMSM_DEBUG
Hasso Tepper [Fri, 11 Jan 2008 12:25:30 +0000 (12:25 +0000)]
- Fix compiling umsm(4) with UMSM_DEBUG
- Make it attach to individual interfaces, not to the device. All supported
  devices I have seen have more than one ucom(4) device.
- Add support for Huawei Mobile Connect (various models use same id's).

16 years ago- Split if_clone.c out of if.c, license in if.c is attached to if_clone.c
Sepherosa Ziehau [Fri, 11 Jan 2008 11:59:41 +0000 (11:59 +0000)]
- Split if_clone.c out of if.c, license in if.c is attached to if_clone.c
- Split if_clone.h out of if.h and if_var.h, license of if_var.h is attached
  to if_clone.h
- Staticize some variables and function in if_clone.c
- if_clonereq is the only userland visible structure related to this commit;
  it is kept in if.h for now, so userland application won't be aware of this
  commit.  It will be moved to net/if_clone.h

No functional changes.

# if_clone.c is subjected to change to support clone creation with
# additional parameters.

16 years agoDon't supress attach messages from devices other than first one while
Hasso Tepper [Fri, 11 Jan 2008 11:41:50 +0000 (11:41 +0000)]
Don't supress attach messages from devices other than first one while
attaching per interface.

16 years agoAdd few more usb devices. 0-5 are used in any modern machine and user might
Hasso Tepper [Fri, 11 Jan 2008 11:23:51 +0000 (11:23 +0000)]
Add few more usb devices. 0-5 are used in any modern machine and user might
want to use some more (via cardbus or smth). Also add some ucom devices,
USB modems (HSDPA/UMTS) are quite common nowadays and most of these cards
have 2-3 ucom(4) devices in use.

16 years agoPut benign warning message under bootverbose
Sepherosa Ziehau [Fri, 11 Jan 2008 10:53:46 +0000 (10:53 +0000)]
Put benign warning message under bootverbose

Suggested-by: hasso@
16 years ago- Properly initialize flash bank size for ich9 based chips
Sepherosa Ziehau [Fri, 11 Jan 2008 10:34:15 +0000 (10:34 +0000)]
- Properly initialize flash bank size for ich9 based chips
- Bail out if hw flash status BERASE bits is b10, but chip itself is not ich9

Obtained-from: Intel em(4)

16 years agoHAMMER 18B/many: Stabilization pass
Matthew Dillon [Fri, 11 Jan 2008 05:45:19 +0000 (05:45 +0000)]
HAMMER 18B/many: Stabilization pass

* Fix B_LOCKED buffer leakages by clearing B_LOCKED when a bp is
  disassociated from its related HAMMER structure.

* The sync code can be called with a buffer still referenced from
  other sources, so hammer_flush_buffer_nodes() can't be called.  The
  refactored hammer_node abstraction no longer holds active refs on
  the underlying buffer anyway (unless actively referenced itself), so
  there is no need to flush it to guarentee that the buffer itself gets
  flushed.

16 years agoHAMMER 18/many: Stabilization pass
Matthew Dillon [Fri, 11 Jan 2008 01:41:34 +0000 (01:41 +0000)]
HAMMER 18/many: Stabilization pass

* Properly flag the inode when dirty buffer cache buffers are present so
  fsync syncs them.  Fixes a umount panic.

* Fix A-list bugs introduced when I added the '10' bit code to record
  an all-allocated/initialized state vs '00' (all-allocated uninitialized).

* Fix an A-list bug in *alloc_rev.  A comparison was off and could result
  in a near full A-list from incorrectly believing it was completely full.

* When generating a spike also allocate a spike record for the recovery code
  to find.

* Generate the initial free blocks for a hammer buffer via its cluster A-list
  instead of directly so the cluster A-list's meta-data is properly
  synchronized.

16 years agoAdd pselect syscall.
Nicolas Thery [Thu, 10 Jan 2008 22:30:28 +0000 (22:30 +0000)]
Add pselect syscall.

Add pselect man page (obtained from FreeBSD).

Add pselect wrapper in libthread_xu that calls pselect syscall.

Add pselect wrapper in libc_r that calls poll syscall (see XXX in code
and BUGS in pselect man page).

Changed libbind to use pselect syscall instead of locally defined wrapper.

16 years agoWarn the user if he uses -e and procfs(5) is not mounted.
Matthias Schmidt [Thu, 10 Jan 2008 14:18:39 +0000 (14:18 +0000)]
Warn the user if he uses -e and procfs(5) is not mounted.

Obtained-from: FreeBSD

16 years agoDon't enable ATTACH/INIT/TXPOWER debug prints by default.
Sepherosa Ziehau [Thu, 10 Jan 2008 13:01:40 +0000 (13:01 +0000)]
Don't enable ATTACH/INIT/TXPOWER debug prints by default.

Requested-by: hasso@
16 years ago- Add additional parameter to firmware_image_load(), since some devices do
Sepherosa Ziehau [Thu, 10 Jan 2008 12:45:10 +0000 (12:45 +0000)]
- Add additional parameter to firmware_image_load(), since some devices do
  not require firmware image to be in contiguous memory.
- Adjust bwi(4) according to above change.
- In firmware_image_load_file(), fix memory leakage by freeing temporary
  firmware path.

16 years agoAdd support for network devices found on Intel ICH9 hardware. I have one
Matthias Schmidt [Thu, 10 Jan 2008 10:44:28 +0000 (10:44 +0000)]
Add support for network devices found on Intel ICH9 hardware.  I have one
of these devices in a 3GHz Core 2 Duo.  More information can be found
here: http://download.intel.com/design/chipsets/datashts/31697202.pdf

The diff is rather trivial, but let me know if I broke something :)

em0@pci0:25:0:  class=0x020000 card=0x00018086 chip=0x10bd8086 rev=0x02 hdr=0x00
    vendor   = 'Intel Corporation'
    device   = '82566DM-2 Gigabit Network Connection'
    class    = network
    subclass = ethernet

em0: <Intel(R) PRO/1000 Network Connection, Version - 6.2.9> port 0x30e0-0x30ff
mem 0x93224000-0x93224fff,0x93200000-0x9321ffff irq 11 at device 25.0 on pci0

Reviewed-by: sephe@
Taken-in-pieces-from:  FreeBSD

16 years agoReplace home-grown list iteration with methods from sys/queue.h
Matthias Schmidt [Thu, 10 Jan 2008 10:31:48 +0000 (10:31 +0000)]
Replace home-grown list iteration with methods from sys/queue.h

Reviewed-by: corecode@, hasso@
16 years agoHAMMER 17/many: Refactor IO backend, clean up buffer cache deadlocks.
Matthew Dillon [Thu, 10 Jan 2008 07:41:03 +0000 (07:41 +0000)]
HAMMER 17/many: Refactor IO backend, clean up buffer cache deadlocks.

Rewrite HAMMER's IO backend, sans locking which will occur in another patch.
The new backend is far less confusing though I wouldn't exactly call it
simple.

The new backend keeps track of dependancies with a structure->structure
dependancy list, plus implements the special case of opening and closing
a cluster header.  Buffers are synchronized first, then cluster headers,
then volume headers.  The new backend also removes a number of potential
deadlocks.

16 years agoFix buffer cache deadlocks by splitting dirty buffers into two categories:
Matthew Dillon [Thu, 10 Jan 2008 07:34:04 +0000 (07:34 +0000)]
Fix buffer cache deadlocks by splitting dirty buffers into two categories:
Light weight dirty buffers and heavy weight dirty buffers.  Add a second
buffer cache flushing daemon to deal with the heavy weight dirty buffers.

Currently only HAMMER uses the new feature, but it can also easily be used
by UFS in the future.

Buffer cache deadlocks can occur in low memory situations where the buffer
cache tries to flush out dirty buffers and deadlocks when the act of
flushing a dirty buffer requires additional buffers to be acquired.  Because
there was only one buffer flushing daemon, a deadlock on a heavy weight buffer
prevented any further buffer flushes, whether light or heavy weight, and
wound up deadlocking the entire system.

Giving the heavy weight buffers their own daemon solves the problem by
allowing light weight buffers to continue to be flushed even if a stall
occurs on a heavy weight buffer.  The numbers of dirty heavy weight buffers
is limited to ensure that enough light weight buffers are available.

This is primarily implemented by changing getblk()'s mostly unused slpflag
parameter to a new blkflags parameter and adding a new buffer cache queue
called BQUEUE_DIRTY_HW.

16 years ago* Add a missing kernel option and a VGA spec reference.
Sascha Wildner [Wed, 9 Jan 2008 22:08:29 +0000 (22:08 +0000)]
* Add a missing kernel option and a VGA spec reference.

* Fix some mdoc issues & typos.

16 years agoRemove a lot of old, mummified code whose sole purpose was probing and
Sascha Wildner [Wed, 9 Jan 2008 21:29:11 +0000 (21:29 +0000)]
Remove a lot of old, mummified code whose sole purpose was probing and
initialization of ye olde mono adapter/color adapter combination.

Instead of this, generally assume that we are dealing with one VGA
card.

After this commit, the VGA code is still a mess, but a slightly
smaller one. :)

16 years agoFix conditional so that the linux module is loaded.
Joe Talbott [Wed, 9 Jan 2008 18:51:08 +0000 (18:51 +0000)]
Fix conditional so that the linux module is loaded.

16 years agoRemove references to kldxref(8) which we don't have.
Sascha Wildner [Wed, 9 Jan 2008 11:30:09 +0000 (11:30 +0000)]
Remove references to kldxref(8) which we don't have.

16 years agoFix lockuninit.
Simon Schubert [Wed, 9 Jan 2008 10:59:12 +0000 (10:59 +0000)]
Fix lockuninit.

lockuninit was acquiring the spinlock embedded in struct lock, thus
incrementing the per-thread spinlock count. However, spin_uninit does
not decrement the count, resulting in a panic when trying to sleep
("lwkt_switch: still holding %d exclusive spinlocks!"). From now on,
require that the caller already holds the struct lock in question so
that lockuninit can rely on it being the sole owner of the lock.

Lots of help from: corecode@, aggelos

Comment from Aggelos: "That's what you get when commiting code without
any in-tree users."

Submitted-by: nant@
16 years agoUse .Pa for URLs.
Sascha Wildner [Wed, 9 Jan 2008 09:03:34 +0000 (09:03 +0000)]
Use .Pa for URLs.

16 years agoHAMMER 16B/many: Fix data overwrite case.
Matthew Dillon [Wed, 9 Jan 2008 04:05:37 +0000 (04:05 +0000)]
HAMMER 16B/many: Fix data overwrite case.

HAMMER will often write out data records for an inode before writing out
the newly created inode itself.  This is desireable because it allows
HAMMER to avoid replacing the on-disk inode record every time the file
size changes.

Fix a bug related to this issue where HAMMER was not checking for on-disk
data records in the data overwrite case prior to the inode being written
out.

16 years agoHAMMER 16/many - Recovery infrastructure, misc bug fixes
Matthew Dillon [Wed, 9 Jan 2008 00:46:22 +0000 (00:46 +0000)]
HAMMER 16/many - Recovery infrastructure, misc bug fixes

* Add A-list recovery and iteration support.  This code fixes up an A-list
  which might have been partially modified or gotten out of sync.

* Add substantial cluster recovery infrastructure (not yet enabled).  The
  code still needs to go through a few test/debug cycles and does not
  yet handle cluster pushes.

* Fix a critical section and a bug in the A-list empty-check code (the
  latter not yet used by HAMMER but will be soon).  The wrong base free
  block count was being supplied.

* Add a synchronizing transaction id field to the cluster header.  This
  field will be used by the recovery code.

* For the moment add a bitmap of buffers allocated to record arrays.  The
  bitmap is in the cluster header.  This may or may not be temporary.  For
  now it will allow the recovery code to wipe the cluster's A-list's and
  then iterate records to regenerate them.

16 years agoRemove old file.
Simon Schubert [Wed, 9 Jan 2008 00:09:10 +0000 (00:09 +0000)]
Remove old file.

16 years agoCompile the kernel and modules with C99 warnings, not C90 (-ansi).
Simon Schubert [Wed, 9 Jan 2008 00:07:57 +0000 (00:07 +0000)]
Compile the kernel and modules with C99 warnings, not C90 (-ansi).

This does not remove or add warnings, but will allow for new features,
especially // C++ commends, which are used by some 3rd party sources.

16 years agoRemove trailing whitespace.
Sascha Wildner [Tue, 8 Jan 2008 20:30:57 +0000 (20:30 +0000)]
Remove trailing whitespace.

16 years agoBrush up the example a bit.
Sascha Wildner [Tue, 8 Jan 2008 17:45:43 +0000 (17:45 +0000)]
Brush up the example a bit.

16 years agoUse the new kldstat -q/-m options instead of "| grep"
Matthias Schmidt [Tue, 8 Jan 2008 15:30:34 +0000 (15:30 +0000)]
Use the new kldstat -q/-m options instead of "| grep"

16 years agoSync with FreeBSD. This bings us the -m option to look for a specific
Matthias Schmidt [Tue, 8 Jan 2008 15:27:57 +0000 (15:27 +0000)]
Sync with FreeBSD.  This bings us the -m option to look for a specific
module and -q which checks if a module is loaded and set the return
value accordingly.

16 years agoRemove reference to the FreeBSD developers handbook. We have a chapter
Matthias Schmidt [Tue, 8 Jan 2008 14:20:46 +0000 (14:20 +0000)]
Remove reference to the FreeBSD developers handbook.  We have a chapter
about kernel debugging in our own handbook now.  The reference to the FreeBSD
chapter is kept as link in the mentioned chapter.

16 years agoFix id of the 945GME chip.
Hasso Tepper [Tue, 8 Jan 2008 04:25:07 +0000 (04:25 +0000)]
Fix id of the 945GME chip.

16 years agoThis one is a very accessible intro to err.. nearly everything. And I had some
Nuno Antunes [Tue, 8 Jan 2008 00:43:23 +0000 (00:43 +0000)]
This one is a very accessible intro to err.. nearly everything. And I had some
loud laughs while reading it too.

16 years agoAdd _rtld_functrace support.
Simon Schubert [Tue, 8 Jan 2008 00:02:04 +0000 (00:02 +0000)]
Add _rtld_functrace support.

Joint-work-with:  aggelos@

16 years agofill_kinfo_proc() may be asked to load information on a zombied process,
Matthew Dillon [Mon, 7 Jan 2008 23:41:55 +0000 (23:41 +0000)]
fill_kinfo_proc() may be asked to load information on a zombied process,
deal with NULL pointers in the proc structure.

Reported-by: Peter Avalos <pavalos@theshell.com>
16 years agoSync the passive fingerprinting database with OpenBSD to get support for
Matthias Schmidt [Mon, 7 Jan 2008 14:46:46 +0000 (14:46 +0000)]
Sync the passive fingerprinting database with OpenBSD to get support for
the latest OS.