dragonfly.git
16 years agoRemove calls to pmap_clear_modify() in the swap_pager, fixing a kernel panic.
Matthew Dillon [Thu, 20 Mar 2008 06:02:50 +0000 (06:02 +0000)]
Remove calls to pmap_clear_modify() in the swap_pager, fixing a kernel panic.
The modify bit is cleared by the pageout code's call to vm_page_protect()
and does not need to be cleared again.

The pmap code cannot safely access non-kernel pmaps from the interrupt
service routine it uses to process the asynchronous I/O completion.  These
non-kernel pmaps are present because the pageout code protects the page
with VM_PROT_READ (which is desireable) rather then VM_PROT_NONE.

16 years agoHAMMER utilities: feature add.
Matthew Dillon [Thu, 20 Mar 2008 04:03:03 +0000 (04:03 +0000)]
HAMMER utilities: feature add.

* Add an option to hammer prune which creates softlinks to available
  snapshots based on the pruning regimen.

16 years agoA threaded process going into SZOMB may still have active threads which are
Matthew Dillon [Thu, 20 Mar 2008 03:59:10 +0000 (03:59 +0000)]
A threaded process going into SZOMB may still have active threads which are
in the midst of exiting.  Wait for those threads to exit before trying to
reap the master thread.

This fixes a crash where kern_wait() improperly reaps threads other then the
master thread.

16 years agoImprove vkernel support.
Matthew Dillon [Thu, 20 Mar 2008 02:14:56 +0000 (02:14 +0000)]
Improve vkernel support.

* Add a new cothread API for vkernel drivers.  This creates real threads
  to act as DMA engines for I/O.  These threads operate OUTSIDE the
  vkernel's cpu abstraction and thus work with UP builds or SMP builds with
  -n 1.

* Asynchronize the virtual disk (vkd).   VKD now queues I/O to a cothread
  which runs it and then generates a signal to the vkernel's cpu 0 to run
  the virtual device's 'interrupt' function.

* The new cothread code works better then the kqueue code because it allows
  I/O's to be ganged together for bulk operation without causing a signal
  for each one.  The kqueue code is still used by VKE but should
  be considered obsolete.

16 years agoUpdate our README for the 1.0.5 import.
Peter Avalos [Thu, 20 Mar 2008 02:12:19 +0000 (02:12 +0000)]
Update our README for the 1.0.5 import.

16 years agoMerge from vendor branch BZIP:
Peter Avalos [Thu, 20 Mar 2008 02:02:11 +0000 (02:02 +0000)]
Merge from vendor branch BZIP:
Import bzip-1.0.5 which fixes CVE-2008-1372.

16 years agoImport bzip-1.0.5 which fixes CVE-2008-1372.
Peter Avalos [Thu, 20 Mar 2008 02:02:11 +0000 (02:02 +0000)]
Import bzip-1.0.5 which fixes CVE-2008-1372.

16 years agoHAMMER 33B/many: Further B-Tree fix.
Matthew Dillon [Wed, 19 Mar 2008 20:49:46 +0000 (20:49 +0000)]
HAMMER 33B/many: Further B-Tree fix.

* The last commit didn't get all the cases.  This one should.

16 years agoHAMMER 33/many: Expand transaction processing, fix bug in B-Tree
Matthew Dillon [Wed, 19 Mar 2008 20:18:17 +0000 (20:18 +0000)]
HAMMER 33/many: Expand transaction processing, fix bug in B-Tree

* Expand transaction processing to cover more of the code space for
  upcoming undo code.

* Fix a bug in the btree_split_leaf(), the separator would sometimes not
  properly be to the left of the split point, resulting in a panic.
  Temporarily add many more assertions to btree_split_leaf().

* Improve the critical path for blockmap lookups, the (newly) passed trans
  already contains a referenced root volume so the blockmap code does not
  have to acquire one.

Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx> (B-Tree bug)
16 years agoTiny step to keep ether header in mbuf on ethernet input path:
Sepherosa Ziehau [Wed, 19 Mar 2008 14:46:03 +0000 (14:46 +0000)]
Tiny step to keep ether header in mbuf on ethernet input path:
- ng_ether_input_p does not need interface to release its serializer.
- Instead of letting ng_ether_input_p glue back ether header, we simply
  pass mbuf with ether header to it.  Change ng_ether_input_p interface
  accordingly.

16 years ago- Factor out ether_restore_header() from ether_ipfw_chk() and
Sepherosa Ziehau [Wed, 19 Mar 2008 13:20:48 +0000 (13:20 +0000)]
- Factor out ether_restore_header() from ether_ipfw_chk() and
  ether_output_frame()
- Add statistics to count number of ether header restoration and number of
  ether header restoration which needs mbuf prepending

16 years agoHAMMER 32B/many: Reblocking work.
Matthew Dillon [Tue, 18 Mar 2008 20:20:26 +0000 (20:20 +0000)]
HAMMER 32B/many: Reblocking work.

* Fix a bug in the record reblocking code.  data_offset's representing
  data embedded in the record itself must be shifted when the record
  is shifted.

16 years agoNuke stack variable which is only used by INVARIANTS
Sepherosa Ziehau [Tue, 18 Mar 2008 14:12:45 +0000 (14:12 +0000)]
Nuke stack variable which is only used by INVARIANTS

Reminded-by: swildner@
16 years agoSync Bluetooth stack with NetBSD.
Hasso Tepper [Tue, 18 Mar 2008 13:41:42 +0000 (13:41 +0000)]
Sync Bluetooth stack with NetBSD.

Obtained-from: NetBSD via OpenBSD

16 years agoRemove unneeded argument.
Sascha Wildner [Tue, 18 Mar 2008 12:28:53 +0000 (12:28 +0000)]
Remove unneeded argument.

16 years agoProtect macros with "do { } while(0)" where needed.
Hasso Tepper [Tue, 18 Mar 2008 08:29:16 +0000 (08:29 +0000)]
Protect macros with "do { } while(0)" where needed.

16 years agoHAMMER utilities: Add the reblock command, adjust newfs_hammer.
Matthew Dillon [Tue, 18 Mar 2008 05:21:55 +0000 (05:21 +0000)]
HAMMER utilities:  Add the reblock command, adjust newfs_hammer.

* Implement 'hammer reblock'.  This calls the reblock ioctl to force
  a HAMMER filesystem to scan its B-Tree and reblock partially empty
  big blocks.

* newfs_hammer must create the undo FIFO blockmap.

16 years agoHAMMER 32/many: Record holes, initial undo API, initial reblocking code
Matthew Dillon [Tue, 18 Mar 2008 05:19:16 +0000 (05:19 +0000)]
HAMMER 32/many: Record holes, initial undo API, initial reblocking code

* Add code to record recent 'holes' created by the blockmap allocator
  due to the requirement that data blocks not cross a 16K hammer buffer
  boundary, in order to try to fill in the gaps with smaller chunks of data
  when possible.

  Currently a hole is not added for blockmap frees.  It is questionable
  whether it is a good idea to do it for frees or not, because it can
  interfere with the reblock code's attempt to completely free a big block.

* Add a reblocking ioctl which scans the B-Tree and reblocks leaf nodes,
  records, and data in partially empty big blocks to try to free up
  the entire big block.  Incomplete (needs to reblock internal B-Tree nodes
  and doesn't yet, needs a low-free-space mode which focuses on freeing
  a single large block).

* Add the API infrastructure required to implement the undo records,
  and implement the initial undo code (sans ordering requirements for
  writes).  Incomplete.

16 years agoMention recent added ioctls in bpf man page.
Matthias Schmidt [Mon, 17 Mar 2008 10:06:22 +0000 (10:06 +0000)]
Mention recent added ioctls in bpf man page.

Reminded-by: swildner@
16 years agoxref nfe(4) <-> vlan(4) (MCP55 supports hw vlan tagging)
Sascha Wildner [Sun, 16 Mar 2008 17:44:24 +0000 (17:44 +0000)]
xref nfe(4) <-> vlan(4) (MCP55 supports hw vlan tagging)

16 years agoAdd a bus_space(9) manual page.
Sascha Wildner [Sun, 16 Mar 2008 17:29:51 +0000 (17:29 +0000)]
Add a bus_space(9) manual page.

Taken-from: FreeBSD (with minor modification)

16 years agoRegenerate miidevs.h.
Hasso Tepper [Sun, 16 Mar 2008 15:54:31 +0000 (15:54 +0000)]
Regenerate miidevs.h.

16 years ago10Base-TX -> 10Base-T and 1000Base-TX -> 1000Base-T. Although 1000Base-TX
Hasso Tepper [Sun, 16 Mar 2008 15:50:22 +0000 (15:50 +0000)]
10Base-TX -> 10Base-T and 1000Base-TX -> 1000Base-T. Although 1000Base-TX
standard itself even exists, there is no commercial products AFAIK.

16 years agoRework vlan configuration processing:
Sepherosa Ziehau [Sun, 16 Mar 2008 15:30:20 +0000 (15:30 +0000)]
Rework vlan configuration processing:
- vlan config, unconfig and multicast filter programming is now serialized
  by netisr0, so that no one could sneak in when a vlan interface's
  serializer is released during configuration.
- vlan's serializer is released before reprogramming parent interface's
  multicast filter to avoid possible dead lock.
- Factor out vlan_clrmulti() from vlan_unconfig() and vlan_setmulti().
- Register vlan module for the ifnet_detach_event
- Create per-cpu vlan trunk on parent interface.  Creating and destroying
  of these trunks is serialized by netisr0.  Add a "staw man" vlan trunk
  implementation using linked list. (*)
- Turn on vlan's IFF_RUNNING only if we are asked to do so.
- White space and minor style changes.

# (*) is not used on input path yet

16 years agoAdd ASSERT_NOT_SERIALIZED
Sepherosa Ziehau [Sun, 16 Mar 2008 15:22:45 +0000 (15:22 +0000)]
Add ASSERT_NOT_SERIALIZED

16 years agoAdd some lines on how to MFC to specific branches.
Sascha Wildner [Sun, 16 Mar 2008 11:10:48 +0000 (11:10 +0000)]
Add some lines on how to MFC to specific branches.

Suggested-by: aggelos
16 years agoThe i386/amd64 abi specifies that the direction flag must be clear
Aggelos Economopoulos [Sat, 15 Mar 2008 16:21:30 +0000 (16:21 +0000)]
The i386/amd64 abi specifies that the direction flag must be clear
on function entry. Newer versions of gcc (>=4.3) depend on this
behavior (and reportedly so does icc), so make sure the flag is
clear when running a signal handler.

16 years agoMake sure lo0 is brought up before any other interfaces to avoid problems
Hasso Tepper [Sat, 15 Mar 2008 10:13:37 +0000 (10:13 +0000)]
Make sure lo0 is brought up before any other interfaces to avoid problems
if network startup script is interrupted by user.

16 years agoIntroduce two new ioctl(2) commands, BIOCLOCK and BIOCSETWF. These commands
Matthias Schmidt [Fri, 14 Mar 2008 09:52:10 +0000 (09:52 +0000)]
Introduce two new ioctl(2) commands, BIOCLOCK and BIOCSETWF. These commands
enhance the security of bpf(4) by further relinquishing the privilege of
the bpf(4) consumer (assuming the ioctl commands are being implemented).

This change is needed to properly support some programs from OpenBSD, such
as pflogd and dhclient.

Reviewed-by: sephe@
Obtained-from: OpenBSD via FreeBSD

16 years agoNuke unneded include.
Sascha Wildner [Thu, 13 Mar 2008 22:10:20 +0000 (22:10 +0000)]
Nuke unneded include.

Submitted-by: Robert Gauthier <321.robert@gmail.com>
16 years agoMerge from vendor branch BSDINSTALLER:
Dave Hayes [Wed, 12 Mar 2008 22:15:56 +0000 (22:15 +0000)]
Merge from vendor branch BSDINSTALLER:
Installer import into contrib (real import this time)

16 years agoInstaller import into contrib (real import this time) vendor/BSDINSTALLER
Dave Hayes [Wed, 12 Mar 2008 22:15:56 +0000 (22:15 +0000)]
Installer import into contrib (real import this time)

16 years agoAdd some substitutions to groff/Makefile.inc and fix pdfroff's Makefile
Sascha Wildner [Wed, 12 Mar 2008 18:25:12 +0000 (18:25 +0000)]
Add some substitutions to groff/Makefile.inc and fix pdfroff's Makefile
so that it's actually run through sed.

This makes pdfroff work as advertised.

16 years agoInstaller import
Dave Hayes [Wed, 12 Mar 2008 01:34:49 +0000 (01:34 +0000)]
Installer import

16 years agoFix buffer overflow in ppp command prompt parsing (OpenBSD errata 2008-009).
Hasso Tepper [Tue, 11 Mar 2008 10:53:07 +0000 (10:53 +0000)]
Fix buffer overflow in ppp command prompt parsing (OpenBSD errata 2008-009).

Obtained-from: OpenBSD

16 years agoAdd ETHER_BPF_MTAP() which will call vlan_ether_ptap() for packets whose vlan
Sepherosa Ziehau [Mon, 10 Mar 2008 12:59:52 +0000 (12:59 +0000)]
Add ETHER_BPF_MTAP() which will call vlan_ether_ptap() for packets whose vlan
tagging is offloaded to NIC.

Obtained-from: FreeBSD

16 years agoRemove #ifndef __cplusplus around wchar related stuff in include/wchar.h
Hasso Tepper [Mon, 10 Mar 2008 12:01:50 +0000 (12:01 +0000)]
Remove #ifndef __cplusplus around wchar related stuff in include/wchar.h
and sys/sys/stdint.h headers. It allows to build libstdc++ with std::w*
(wstring, wint_t etc) support.

Amongst others fixes building boost libraries with g++41.

Approved-by: corecode@
16 years agoFactor out vlan_ether_ptap() from vlan_input_tag()
Sepherosa Ziehau [Mon, 10 Mar 2008 11:44:57 +0000 (11:44 +0000)]
Factor out vlan_ether_ptap() from vlan_input_tag()

16 years ago- Embed ether vlan tag in mbuf packet header. Add an mbuf flag to mark that
Sepherosa Ziehau [Mon, 10 Mar 2008 10:47:57 +0000 (10:47 +0000)]
- Embed ether vlan tag in mbuf packet header.  Add an mbuf flag to mark that
  this field is valid.
- Hide ifvlan after the above change; drivers support hardware vlan tagging
  only need to check ether_vlantag in mbuf packet header.
- Convert all drivers that support hardware vlan tagging to use vlan tag field
  in mbug packet header.

Obtained-from: FreeBSD

Change the vlan/parent serializer releasing/holding sequences into mbuf
dispatching.  There are several reasons to do so:
- Avoid excessive vlan interface serializer releasing/holding
- Touching parent interface if_snd without holding parent's serializer is
  unsafe
- vlan's parent may disappear or be changed after vlan's serializer is released

# This dispatching could be further optimized by packing all mbufs into one
# netmsg using m_nextpkt to:
# - Amortize netmsg sending cost
# - Reduce the time that parent interface spends on serializer releasing/holding

16 years agoAdd 'volatile' qualifier
Sepherosa Ziehau [Mon, 10 Mar 2008 08:39:53 +0000 (08:39 +0000)]
Add 'volatile' qualifier

16 years agoSet framelen to 0; it might be used without being initialized
Sepherosa Ziehau [Mon, 10 Mar 2008 08:36:30 +0000 (08:36 +0000)]
Set framelen to 0; it might be used without being initialized

16 years agoBetter handle restarting a previously aborted build by adding a protective
Sascha Wildner [Sun, 9 Mar 2008 21:09:25 +0000 (21:09 +0000)]
Better handle restarting a previously aborted build by adding a protective
umount (ignoring the exit code).

This goes into the clean target because otherwise clean would choke on
${ISOROOT}/tmp/packages being read only.

Requested-by: dillon
16 years agoMove new sentence on a new line.
Sascha Wildner [Sun, 9 Mar 2008 16:06:08 +0000 (16:06 +0000)]
Move new sentence on a new line.

16 years agoForgot one.
Sascha Wildner [Sun, 9 Mar 2008 16:05:39 +0000 (16:05 +0000)]
Forgot one.

16 years agoAdd an initial iwl(4) manual page.
Sascha Wildner [Sun, 9 Mar 2008 11:04:35 +0000 (11:04 +0000)]
Add an initial iwl(4) manual page.

16 years agoAdd iwl
Sascha Wildner [Sun, 9 Mar 2008 10:55:14 +0000 (10:55 +0000)]
Add iwl

16 years ago- Nuke no longer needed .PATH
Sepherosa Ziehau [Sun, 9 Mar 2008 10:46:49 +0000 (10:46 +0000)]
- Nuke no longer needed .PATH
- Rearrange SRCS a bit

16 years ago- Add an entry for iwl(4)
Sepherosa Ziehau [Sun, 9 Mar 2008 09:56:02 +0000 (09:56 +0000)]
- Add an entry for iwl(4)
- Add iwl(4) in LINT

16 years agoSlight rewording using existing ioctl names.
Sascha Wildner [Sun, 9 Mar 2008 08:09:01 +0000 (08:09 +0000)]
Slight rewording using existing ioctl names.

16 years agoClean up prototypes and staticize.
Sascha Wildner [Sat, 8 Mar 2008 23:22:12 +0000 (23:22 +0000)]
Clean up prototypes and staticize.

16 years agoAdd an example on how to create a live CD with xorg.
Sascha Wildner [Sat, 8 Mar 2008 22:00:03 +0000 (22:00 +0000)]
Add an example on how to create a live CD with xorg.

To build one, you can use the following commands:

% cd /usr/src/nrelease
% make PKGSRC_PKG_PATH=/pkgsrc/dir/All release gui

See release(7) for more information.

Note that you will need pkgsrc binary packages locally. In the example above,
replace /pkgsrc/dir with the path where they are kept.

The resulting ISO will be /usr/release/dfly-gui.iso.

16 years agoRegenerate the pciconf(8) database from the following files:
Sascha Wildner [Sat, 8 Mar 2008 20:24:22 +0000 (20:24 +0000)]
Regenerate the pciconf(8) database from the following files:

Hart:    Jan 22, 2008 (version 671)
Boemler: Mar  8, 2008
Mares:   Mar  8, 2008

16 years agoAdd code to merge the pci.ids list from http://pciids.sourceforge.net/
Sascha Wildner [Sat, 8 Mar 2008 20:17:38 +0000 (20:17 +0000)]
Add code to merge the pci.ids list from pciids.sourceforge.net/
which is maintained by Martin Mares. Entries from this list are used
if they are not in the Hart and Boemler lists.

The new -x option can be used to specify the pathname to the Mares list.

16 years agoMove README to share/zoneinfo.
Sascha Wildner [Sat, 8 Mar 2008 11:55:59 +0000 (11:55 +0000)]
Move README to share/zoneinfo.

16 years agoShut up gcc warning (if ifac is not NULL, ifa must be initialized in this case)
Sepherosa Ziehau [Sat, 8 Mar 2008 11:16:31 +0000 (11:16 +0000)]
Shut up gcc warning (if ifac is not NULL, ifa must be initialized in this case)

Noticed-by: swildner@
16 years agoSync zoneinfo database with tzdata2008a from elsie.
Sascha Wildner [Sat, 8 Mar 2008 11:16:10 +0000 (11:16 +0000)]
Sync zoneinfo database with tzdata2008a from elsie.

leapseconds:    8.4  -> 8.5
southamerica:   8.15 -> 8.18

From Arthur David Olson's comments:

* Document no leap second at the end of December 2007

* Drought-induced DST extension in Chile.

16 years agoDon't duplicate code of ether_ioctl()
Sepherosa Ziehau [Sat, 8 Mar 2008 07:59:19 +0000 (07:59 +0000)]
Don't duplicate code of ether_ioctl()

16 years agoCleanp leftover of the ifnet.if_addrhead parallelizing.
Sepherosa Ziehau [Sat, 8 Mar 2008 07:50:49 +0000 (07:50 +0000)]
Cleanp leftover of the ifnet.if_addrhead parallelizing.

Reported-by: daily ISO building
16 years ago- In command RX intr, if the command number returned is 0, then hardware
Sepherosa Ziehau [Sat, 8 Mar 2008 06:43:52 +0000 (06:43 +0000)]
- In command RX intr, if the command number returned is 0, then hardware
  will not work properly afterwards.  This usually happens after the whole
  box is power off and on.  Reinitializing the hardware in a tight loop
  several times does not work in this case.  If this happens, set a callout
  to reinitialize the hardware 1 seconds later.
- Stop various callouts in iwl2100_{init,stop}() before dispatching the
  real work out to device thread.
- Always stop all callouts, if IFF_UP is turned off in ifnet.if_flags.
- Add a flag to mark that the device is detaching, mainly to avoid possible
  stop/(re)init/restart ordering problem in device thread during detaching.

16 years agoInstead of copying packages into the ISO root, use mount_null.
Sascha Wildner [Fri, 7 Mar 2008 20:29:24 +0000 (20:29 +0000)]
Instead of copying packages into the ISO root, use mount_null.

16 years agoParallelize ifnet.if_addrhead accessing by duplicating the list itself
Sepherosa Ziehau [Fri, 7 Mar 2008 11:34:21 +0000 (11:34 +0000)]
Parallelize ifnet.if_addrhead accessing by duplicating the list itself
on each CPU, each list element points to ifaddr:
- Add SI_SUB_PRE_DRIVERS before SI_SUB_DRIVERS, so action could be taken
  before drivers' initialization (mainly before NIC driver's if_attach())
- Move netisr_init() to the FIRST of SI_SUB_PRE_DRIVERS, so that
  netmsg_service_port_init() could be called in earlier stage of system
  initialization.
- Create one thread on each CPU to propagate changes to ifnet.if_addrhead.
  Their thread ports are registered with netmsg_service_port_init() for
  port syncing operation.
- Change to ifnet.if_addrhead begins in netisr0, i.e. serial of changes
  to ifnet.if_addrhead are serialized by netisr0
- ifaddr's refcnt is moved to its list elements, i.e. per-CPU refcnt.
  They are initialized to 1 instead of 0.
- A magic field is added to ifaddr list element to make sure that IFAREF
  and IFAFREE are called on valid ifaddr list element.  This field is
  initialized to a magic value and is wiped out once the list element's
  refcnt drops to 0
- To close the gap between testing and freeing, once the ifaddr list
  element's refcnt drops to 0, ifa_portfn(0) (a thread's port on CPU0) is
  poked to check whether ifaddr is referenced on other CPUs, if not, then
  ifaddr is freed on ifa_portfn(0)

Reviewed-by: dillon@ (earlier version)
16 years agoAdd SCSI READ CAPACITY support to camcontrol.
Peter Avalos [Fri, 7 Mar 2008 08:44:24 +0000 (08:44 +0000)]
Add SCSI READ CAPACITY support to camcontrol.

Obtained-from: FreeBSD

16 years agoTesting a commit per man page
Dave Hayes [Fri, 7 Mar 2008 07:49:47 +0000 (07:49 +0000)]
Testing a commit per man page

16 years agoAdvertise to CAM the ability of 790X controllers to negotiate information
Peter Avalos [Thu, 6 Mar 2008 20:07:51 +0000 (20:07 +0000)]
Advertise to CAM the ability of 790X controllers to negotiate information
unit transfers (packetized/U320 protocol) and QAS.

Obtained-from: FreeBSD

16 years agoRemove superfluous setting of the transport_version field of our
Peter Avalos [Thu, 6 Mar 2008 20:04:46 +0000 (20:04 +0000)]
Remove superfluous setting of the transport_version field of our
path inquiry response.

Obtained-from: FreeBSD

16 years agoOnly print sense data diagnostics if debugging is enabled with the
Peter Avalos [Thu, 6 Mar 2008 20:01:29 +0000 (20:01 +0000)]
Only print sense data diagnostics if debugging is enabled with the
AHD_SHOW_SENSE flag.

Obtained-from: FreeBSD

16 years agoMake sure stack variable is cleared.
Sepherosa Ziehau [Thu, 6 Mar 2008 11:51:23 +0000 (11:51 +0000)]
Make sure stack variable is cleared.

Noticed-by: swildner@
16 years ago* Add MLINK for serialize_sleep()
Sascha Wildner [Wed, 5 Mar 2008 17:20:23 +0000 (17:20 +0000)]
* Add MLINK for serialize_sleep()

* Add reference to serialize_sleep(9) to serializer(9)

* Add <sys/serialize.h> to serialize_sleep(9) for lwkt_serialize

16 years agoRewrite driver for Intel 2100BG:
Sepherosa Ziehau [Wed, 5 Mar 2008 14:10:39 +0000 (14:10 +0000)]
Rewrite driver for Intel 2100BG:
- Add WPA/WPA2 support (host encryption/descryption)
- More stable in STA mode, e.g. 24hours netperf TCP_STREAM with CCMP pairwise
  cipher suite and TKIP group cipher suite, rekey every 10 minutes.
- Starting IBSS now works
- Better 802.11 generic layer integration
- More comment about various caveats during firmware operation

Various registers' position and values are written according to Intel's Linux
driver ipw2100-1.2.2

16 years agoAdd an entry for serialize_sleep
Sepherosa Ziehau [Wed, 5 Mar 2008 13:19:23 +0000 (13:19 +0000)]
Add an entry for serialize_sleep

Reminded-by: swildner@
16 years agoAdd serializer port backend. Implementation is mainly based on spin
Sepherosa Ziehau [Wed, 5 Mar 2008 13:03:29 +0000 (13:03 +0000)]
Add serializer port backend.  Implementation is mainly based on spin
port backend, but unlike spin port backend: users of this port backend
are assumed to have the port's serializer held.

Proper function name is suggested by corecode@, aggelos@, tgen@ and
dillon@

Reviewed-by: tgen@, dillon@
16 years agoAdd serialize_sleep(), which will atomically release the serializer
Sepherosa Ziehau [Wed, 5 Mar 2008 12:44:43 +0000 (12:44 +0000)]
Add serialize_sleep(), which will atomically release the serializer
currently being held and tsleep on the ident, then reacquire the
serializer upon function returning.

Proper function name is suggeested by corecode@, aggelos@, tgen@ and
dillon@

Reviewed-by: tgen@, dillon@
16 years agoResurrect code mistakenly #ifdef'd out before.
Simon Schubert [Wed, 5 Mar 2008 10:37:24 +0000 (10:37 +0000)]
Resurrect code mistakenly #ifdef'd out before.

Reminded-by: FreeBSD's cvs-src
16 years agoPatch additional use-after-free cases.
Matthew Dillon [Tue, 4 Mar 2008 19:23:05 +0000 (19:23 +0000)]
Patch additional use-after-free cases.

Submitted-by: Claus Assmann
16 years agoUse uintmax_t for ino_t.
Sascha Wildner [Tue, 4 Mar 2008 18:10:44 +0000 (18:10 +0000)]
Use uintmax_t for ino_t.

16 years agoAdd capability flag to inform 802.11 generic layer that device will do auto
Sepherosa Ziehau [Tue, 4 Mar 2008 13:48:40 +0000 (13:48 +0000)]
Add capability flag to inform 802.11 generic layer that device will do auto
channel switching during scanning, so if beacon/prrob-resp's DS parameter
indicates different channel than ic_curchan, 802.11 could adjust ic_curchan
according, instead of letting driver do the tedious and error prone beacon/
probe-resp parsing.

16 years agoRework some bits of the networking code.
Matthias Schmidt [Tue, 4 Mar 2008 11:36:09 +0000 (11:36 +0000)]
Rework some bits of the networking code.

 o Rename TLSINIT to NOSSL
 o Rename read_remote_command to read_remote.  Replace the remote read method
   with code from femail.c written by Henning Brauer of OpenBSD and licensed
   under a BSD license.  Return the first figure of the return code and check
   the appropriate values.
 o Read the server greeting at first and send EHLO afterwards.
 o Remove check_for_smtp_error().  It is included in read_remote().

This commit fixes some of the issues in issue953.  More code to come.

Dragonfly-bug: http://bugs.dragonflybsd.org/issue953

16 years agoRemove some lines warning about 'make upgrade' before 'make installworld'.
Sascha Wildner [Mon, 3 Mar 2008 20:24:51 +0000 (20:24 +0000)]
Remove some lines warning about 'make upgrade' before 'make installworld'.

The upgrade mechanism now ensures that installworld has run.

16 years agoRemove old files in /usr/share/groff_font/devlj4.
Sascha Wildner [Mon, 3 Mar 2008 19:55:29 +0000 (19:55 +0000)]
Remove old files in /usr/share/groff_font/devlj4.

16 years agoBring in some changes from FreeBSD:
Sascha Wildner [Sun, 2 Mar 2008 23:02:01 +0000 (23:02 +0000)]
Bring in some changes from FreeBSD:

* Add missing @PDFDOCDIR@ substitution.

* Make 'groff -Thtml ...' work by adding an image_generator keyword to
  the HTML DESC file.

* Update lj4 resolution and add some font files.

* Install lj4_font(5) manual page.

And while I'm doing this, install the grohtml(1) manual page as well.

16 years agoFix some errors and reduce differences with FreeBSD.
Sascha Wildner [Sun, 2 Mar 2008 19:56:53 +0000 (19:56 +0000)]
Fix some errors and reduce differences with FreeBSD.

16 years agoRetire our /usr/share/misc/iso3166 file in favor of the version provided
Sascha Wildner [Sun, 2 Mar 2008 14:28:37 +0000 (14:28 +0000)]
Retire our /usr/share/misc/iso3166 file in favor of the version provided
in the tzdata distribution and adjust tzsetup(8) accordingly.

The old format had to be updated by tracking ISO3166 Maintenance Agency
Newsletters which was rather painful, and the extra fields (three letter
and three digit country codes) were skipped by tzsetup(8) anyway.

16 years agoAdd MLINKS for SDP_{GET,PUT}_UUID128.3
Sascha Wildner [Sat, 1 Mar 2008 23:58:00 +0000 (23:58 +0000)]
Add MLINKS for SDP_{GET,PUT}_UUID128.3

16 years agoAnsify some remaining function definitions in the kernel.
Sascha Wildner [Sat, 1 Mar 2008 22:03:13 +0000 (22:03 +0000)]
Ansify some remaining function definitions in the kernel.

Found-by: -Wold-style-definition
16 years agoMake the -O option (show *only* kernel threads) imply the -T option (show
Nuno Antunes [Sat, 1 Mar 2008 18:49:00 +0000 (18:49 +0000)]
Make the -O option (show *only* kernel threads) imply the -T option (show
kernel threads), as it does not make much sense otherwise.

Reviewed-by: aggelos@
16 years agoUse .Va for sysctls.
Sascha Wildner [Sat, 1 Mar 2008 17:54:16 +0000 (17:54 +0000)]
Use .Va for sysctls.

16 years agoClean up the token code and implement lwkt_token_is_stale(). Users of
Matthew Dillon [Sat, 1 Mar 2008 06:21:28 +0000 (06:21 +0000)]
Clean up the token code and implement lwkt_token_is_stale().  Users of
the token code are now able to detect if the token was acquired and released
by someone else while they were blocked.

Submitted-by: Michael Neumann <mneumann@ntecs.de>
16 years agoAdd an experimental driver for NICs using Silan Microelectronics' SC92301
Sascha Wildner [Thu, 28 Feb 2008 18:39:20 +0000 (18:39 +0000)]
Add an experimental driver for NICs using Silan Microelectronics' SC92301
chip, some of which seem to be known as Rsltek [sic] 8139D. This is a port
of Silan's own FreeBSD 4.7 driver which was written by one 'gaoyonghong'.

It's up to the point where it works with the "Noganet KN-8139D" product,
but it still gives occasional errors/warnings on the console. Also, some
areas need to be brought more up to date.

Therefore, the if_sln.ko module is built, but the driver is not yet in
GENERIC.

Tested-by: Damian Vicino <dvicino@dc.uba.ar>
16 years agoRegenerate
Sascha Wildner [Thu, 28 Feb 2008 18:15:31 +0000 (18:15 +0000)]
Regenerate

16 years agoAdd some PCI IDs for the upcoming sln(4) driver.
Sascha Wildner [Thu, 28 Feb 2008 18:12:51 +0000 (18:12 +0000)]
Add some PCI IDs for the upcoming sln(4) driver.

16 years agoRemove unmatched crit_exit() from dsp_ioctl(). A critical section was never
Thomas E. Spanjaard [Thu, 28 Feb 2008 17:19:11 +0000 (17:19 +0000)]
Remove unmatched crit_exit() from dsp_ioctl(). A critical section was never
entered before, and it doesn't seem necessary to have one either. This
prevents a panic from happening when you operate mixer ioctls on /dev/dsp.

16 years agoSync with FreeBSD.
Sascha Wildner [Thu, 28 Feb 2008 10:51:38 +0000 (10:51 +0000)]
Sync with FreeBSD.

16 years agoFix the fact that I thought about adding a comment too when adding the v_intr
Thomas E. Spanjaard [Wed, 27 Feb 2008 15:20:17 +0000 (15:20 +0000)]
Fix the fact that I thought about adding a comment too when adding the v_intr
increment. I actually wrote one half of the TD_NEST_COUNT stuff instead of
putting that in the comment. D'oh!

16 years agoMake sure we tally an interrupt when calling sched_ithd() from
Thomas E. Spanjaard [Mon, 25 Feb 2008 12:56:32 +0000 (12:56 +0000)]
Make sure we tally an interrupt when calling sched_ithd() from
ithread_fast_handler().

16 years agoHAMMER 31C/many: Fix livelock in deadlock handling code
Matthew Dillon [Sun, 24 Feb 2008 23:40:24 +0000 (23:40 +0000)]
HAMMER 31C/many: Fix livelock in deadlock handling code

* The wrong B-Tree node was being recorded in cursor->deadlk_node in
  one of the B-Tree subroutines.  Deadlocks are handled by acquiring
  and releasing the recorded conflicting node after releasing all other
  locks, and then retrying.  Recording the wrong node caused the
  handling routine to not block waiting for the deadlock to resolve
  and resulted in a livelock.

Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
16 years agoHAMMER 31B/many: Fix busy block dev on HAMMER umount
Matthew Dillon [Sun, 24 Feb 2008 20:08:50 +0000 (20:08 +0000)]
HAMMER 31B/many: Fix busy block dev on HAMMER umount

* Properly clear si_mountpoint in the block device when unmounting a
  HAMMER filesystem.  This fixes a busy block device problem.

16 years agoHAMMER 31A/many: File data size optimization
Matthew Dillon [Sun, 24 Feb 2008 19:48:45 +0000 (19:48 +0000)]
HAMMER 31A/many: File data size optimization

I've been meaning to do this for a while.  When writing a data record for
the last block in a file, for example for small files, there is no need
to write out the entire 16K buffer.  Just write out the actual number of
bytes of data to file EOF.

This results in *EXTREME* data compaction and very high performance when
manipulating small files.  The smallest possible file requires two 96 byte
records (inode record and data record), two 64 byte B-Tree elements,
a 64 byte data element (the file data), and a 128 byte data element
(the inode structure), for a grand total of 512 bytes.

16 years agoImprove wording.
Sascha Wildner [Sun, 24 Feb 2008 19:46:47 +0000 (19:46 +0000)]
Improve wording.

16 years agoconstify channel parameter
Sepherosa Ziehau [Sun, 24 Feb 2008 03:36:19 +0000 (03:36 +0000)]
constify channel parameter

16 years agoHAMMER 30C/many: Fix more TID synchronization issues
Matthew Dillon [Sat, 23 Feb 2008 21:55:50 +0000 (21:55 +0000)]
HAMMER 30C/many: Fix more TID synchronization issues

* Properly zero-out b_tid in getnewbuf so a buffer does not get an old
  stale (and possibly duplicate) b_tid.

* A b_tid assignment was missing in the truncation case, causing an assertion.

* Panic instead of warn when we find a duplicate record in the B-Tree.