dragonfly.git
4 years agodsched - change loader tunables
Alex Hornung [Tue, 13 Apr 2010 18:49:24 +0000 (18:49 +0000)]
dsched - change loader tunables

* Change loader tunables to dsched_pol avoiding the '*' character as it
  isn't supported by the loader.

Reported-by: Petr Janda
4 years agodsched_fq - Avoid a rare div by 0
Alex Hornung [Tue, 13 Apr 2010 18:47:51 +0000 (18:47 +0000)]
dsched_fq - Avoid a rare div by 0

* Avoid a rare division by 0 when calculating how busy the disk has
  been. It seems that sometimes the total disk time is 0, so when this
  happens, just assume that at least 1 us has passed.

4 years agodsched_fq - Refactor fqp allocation/destruction
Alex Hornung [Tue, 13 Apr 2010 07:15:10 +0000 (07:15 +0000)]
dsched_fq - Refactor fqp allocation/destruction

* Accept another argument for fqp allocation which is the corresponding
  fqmp. This is internally stored for proper self-removal out of the
  fqmp list on destruction.

* This parameter is also used to link the fqp into the fqmp list
  automatically on creation, avoiding code duplication and deadlocking.

* Changed the destruction refcount to -0x400 instead of -3 to make
  tracking of these cases simpler and not confuse them with bad
  refcounting.

* NOTE: this also fixes the longstanding issue of an eventual panic
  after a number of policy switches to/from fq.

Reported-by: Antonio Huete (tuxillo@)
4 years agodsched_fq - Avoid int64 overflow on total_budget
Alex Hornung [Fri, 9 Apr 2010 21:59:39 +0000 (21:59 +0000)]
dsched_fq - Avoid int64 overflow on total_budget

* Avoid an int64 overflow when calculating the total disk budget by
  losing bits of precision if needed.

* Note that this might not quite fix the issue yet, as there is one
  other place where the int64 overflow can happen, although it is less
  likely.

* While here, make the rebalancing happen every 0.5s instead of every
  1s, effectively reducing the chance of int64 overflows.

Reported-by: Antonio Huete (tuxillo@)
4 years agodsched_fq - Fix some issues, sprinkle some asserts
Alex Hornung [Fri, 9 Apr 2010 17:52:23 +0000 (17:52 +0000)]
dsched_fq - Fix some issues, sprinkle some asserts

* Add some strategic KKASSERT to catch negative values where they aren't
  allowed.

* Avoid certain race conditions by using a local variable instead of
  using the generally accessible one (budget vs dpriv->budgetpb). Only
  set the final value once we are ready.

4 years agodsched_fq - decentralize balancing code
Alex Hornung [Thu, 1 Apr 2010 11:34:36 +0000 (11:34 +0000)]
dsched_fq - decentralize balancing code

* Move the balancing code out of the fq_balance_thread into
  fq_balance_Self, which should be called from dispatchers.

* This essentially offloads the heavy processing onto (mostly) the
  processes/threads that do the I/O themselves.

4 years agodsched_fq - Refactor fq_balance_thread
Alex Hornung [Thu, 1 Apr 2010 08:40:50 +0000 (08:40 +0000)]
dsched_fq - Refactor fq_balance_thread

* Refactor fq_balance_thread to be an LWKT instead of callout.

* Also make sure fqp->transactions, fqp->avg_latency don't change while
  we use them.

4 years agodsched_fq - Finalize switch to new disk-busy calc
Alex Hornung [Thu, 1 Apr 2010 02:09:59 +0000 (02:09 +0000)]
dsched_fq - Finalize switch to new disk-busy calc

* Don't take the time since the last balancing run as a fixed value,
  instead calculate it.

* Remove extraneous craft that suggested a disk is only busy if it also
  has many incomplete requests.

4 years agodsched_fq - Refactor and clean; handle flushes
Alex Hornung [Thu, 1 Apr 2010 01:09:59 +0000 (01:09 +0000)]
dsched_fq - Refactor and clean; handle flushes

* Factor out an fq_drain which will either cancel or dispatch all the
  bios we have currently in all our fqp queues.

* Clean out old comments and code.

* Deal with flushes by not queuing them but rather letting dsched handle
  them. By returning EINVAL, dsched_queue will dispatch the flush
  itself.

4 years agoprint_backtrace - Take parameter count
Alex Hornung [Wed, 31 Mar 2010 10:44:25 +0000 (10:44 +0000)]
print_backtrace - Take parameter count

* Modify print_backtrace to take a parameter 'count' that specifies the
  maximum number of frames to print for the backtrace.

* Change all current consumers to use the new print_backtrace with count
  -1, resulting in the same behaviour as before this change.

* Remove cruft in dsched_fq that simulated this behaviour previously.

4 years agodsched_fq - properly drain all queues on teardown
Alex Hornung [Wed, 31 Mar 2010 10:19:38 +0000 (10:19 +0000)]
dsched_fq - properly drain all queues on teardown

* Properly drain all fqp queues on teardown to ensure that no bios and
  especially fqps are left dangling around.

* This should fix the occasional panic during policy switches.

4 years agodsched_fq - minor cleanup and fix
Alex Hornung [Wed, 31 Mar 2010 09:58:07 +0000 (09:58 +0000)]
dsched_fq - minor cleanup and fix

* Previously, wakes didn't correctly set the local idle bit in
  fq_dispatcher. Fix this by moving it into the right place.

* Remove old code, replace comments, remove level of indentation.

4 years agodsched_fq - Improve performance, reduce idle time
Alex Hornung [Wed, 31 Mar 2010 01:11:29 +0000 (01:11 +0000)]
dsched_fq - Improve performance, reduce idle time

* Boost performance by dynamically adapting the rate limit on throttled
  threads if the disk becomes idle. This will ensure that the disk is
  always > 90% used if there are requests queued.

4 years agodsched_fq - Improve disk busy-% calculation
Alex Hornung [Tue, 30 Mar 2010 13:46:01 +0000 (13:46 +0000)]
dsched_fq - Improve disk busy-% calculation

* Use the disk idle time to account for disk business instead of the
  number of in-flight requests.

Suggested-by: Simon "corecode" Schubert
4 years agodsched - Implement priorities and other improvements
Alex Hornung [Tue, 30 Mar 2010 02:18:32 +0000 (02:18 +0000)]
dsched - Implement priorities and other improvements

* Implemented fq priority support. This also includes the userland tool
  ionice.

* Implement an exit_buffer hook to be able to clean up bufs before they
  are reused.

* Some minor performance improvements in fq.

4 years agodsched - Add the FQ policy
Alex Hornung [Thu, 25 Feb 2010 08:55:55 +0000 (08:55 +0000)]
dsched - Add the FQ policy

* Add the FQ (fair queueing) policy for the dsched I/O scheduler
  framework.

* Right now, this is at best experimental; it only starts rate limiting
  when the disk is busy. Each process is allocated an equal fair amount
  of disk time, based on the average request latency and tps.
  If the disk is busy and one process exceeeds its fair share, its bios
  are queued for later dispatch.
  To avoid starvation of heavy write processes, heavy writes are
  interleaved once every 3 scheduler rebalances. The scheduler rebalance
  time is currently set to 1s, so that exceeding processes will be
  limited after this period.

* While I've done some limited testing on switching policies at runtime
  and even under heavy I/O going on, it is not recommended to do this,
  as some problems will crop up.

* Future work to do:
- stabilization pass
- adding bucket support (i.e. having different priority buckets
  for groups of processes, so that for example processes A,B and
  C get a total aggregate of 80% disk time, while processes D
  and E get a total aggregate of 20%, instead of each process
  getting 20%)
- adding an "ionice" userland tool to allow to change the
  bucket/priority of a process

4 years agodsched - Tie the dsched framework into the system
Alex Hornung [Thu, 25 Feb 2010 08:54:32 +0000 (08:54 +0000)]
dsched - Tie the dsched framework into the system

* tie the dsched framework into the system by binding it into the build,
  adding all the necessary hooks and other calls.

4 years agodsched - import the I/O scheduler framework dsched
Alex Hornung [Thu, 25 Feb 2010 08:53:01 +0000 (08:53 +0000)]
dsched - import the I/O scheduler framework dsched

* Import my branch of the I/O scheduler framework. This commit only
  introduces the core dsched framework, without binding it into the
  system and without any policy except for the default one.

4 years agosystem boot - Fix savecore when swapdev != dumpdev
Matthew Dillon [Thu, 15 Apr 2010 17:36:40 +0000 (10:36 -0700)]
system boot - Fix savecore when swapdev != dumpdev

* Specify the dumpdev on the savecore line.  Fixed issues when the swapdev
  is not the same as the dumpdev.

Reported-by: Alexander Polakov <polachok@gmail.com>
4 years ago<sys/buf2.h>: Add bioq_takefirst() from FreeBSD for easier driver porting.
Sascha Wildner [Thu, 15 Apr 2010 15:44:22 +0000 (17:44 +0200)]
<sys/buf2.h>: Add bioq_takefirst() from FreeBSD for easier driver porting.

4 years agoRemove the inclusion of <machine/bus_at386.h> from some WLAN drivers.
Sascha Wildner [Thu, 15 Apr 2010 15:37:49 +0000 (17:37 +0200)]
Remove the inclusion of <machine/bus_at386.h> from some WLAN drivers.

This file exists only on i386. Including it is not needed at all since
<sys/bus.h> on i386 already brings it in (via <machine/bus_dma.h>) and
also does the right thing in x86_64.

This fixes module building on x86_64.

4 years agoMerge remote branch 'rpaulo/net80211-update'
Matthew Dillon [Wed, 14 Apr 2010 15:30:28 +0000 (08:30 -0700)]
Merge remote branch 'rpaulo/net80211-update'

4 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Wed, 14 Apr 2010 15:30:15 +0000 (08:30 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

4 years agoFix build with DIAGNOSTIC.
Rui Paulo [Wed, 14 Apr 2010 11:40:21 +0000 (12:40 +0100)]
Fix build with DIAGNOSTIC.

4 years agoUpdate to new if_clone API.
Rui Paulo [Wed, 14 Apr 2010 11:38:03 +0000 (12:38 +0100)]
Update to new if_clone API.

4 years agoFix kernel build.
Rui Paulo [Wed, 14 Apr 2010 11:37:48 +0000 (12:37 +0100)]
Fix kernel build.

4 years agoFix build.
Rui Paulo [Wed, 14 Apr 2010 11:37:27 +0000 (12:37 +0100)]
Fix build.

4 years agoDisable not yet ported drivers.
Rui Paulo [Wed, 14 Apr 2010 11:37:04 +0000 (12:37 +0100)]
Disable not yet ported drivers.

4 years agoFix wlan_acl and replace kern_firmware with subr_firmware.
Rui Paulo [Wed, 14 Apr 2010 11:36:39 +0000 (12:36 +0100)]
Fix wlan_acl and replace kern_firmware with subr_firmware.

4 years agoRemove references to ether_snprintf.
Rui Paulo [Wed, 14 Apr 2010 11:35:49 +0000 (12:35 +0100)]
Remove references to ether_snprintf.

4 years agolibc - Return ENOSYS in both mlockall() / munlockall()
Antonio Huete Jimenez [Tue, 13 Apr 2010 09:57:51 +0000 (11:57 +0200)]
libc - Return ENOSYS in both mlockall() / munlockall()

Submitted-by: Venkatesh Srinivas <me@endeavour.zapto.org>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue1712>

4 years agoHAMMER VFS - Fix hammer lock assertion panic when REDO recovery fails
Matthew Dillon [Wed, 14 Apr 2010 04:27:49 +0000 (21:27 -0700)]
HAMMER VFS - Fix hammer lock assertion panic when REDO recovery fails

* REDO recovery failed to release a buffer in its error path, resulting
  in a panic later on.  This patch adds the proper release.

Reported-by: Venkatesh Srinivas <me@acm.jhu.edu>
4 years agoClean up some remains from the gcc2 days.
Sascha Wildner [Wed, 14 Apr 2010 00:07:41 +0000 (02:07 +0200)]
Clean up some remains from the gcc2 days.

In gcc2, we kept __FreeBSD__ as a compiler built-in. Starting with gcc3,
we only define __DragonFly__.

* Remove the general definition of __FreeBSD_version from <sys/param.h>
  and <osreldate.h>. However, ipftest(1) and ipsend(1) still need it, so
  define it from their Makefiles.

* Remove the definition of __FreeBSD__ from the Makefiles of ipmon(8)
  and openssl(1), both of which don't need this anymore.

4 years agoMerge remote branch 'rpaulo/net80211-update'
Matthew Dillon [Tue, 13 Apr 2010 19:59:50 +0000 (12:59 -0700)]
Merge remote branch 'rpaulo/net80211-update'

4 years agoAdd AH_SUPPORT_AR5416 always.
Rui Paulo [Tue, 13 Apr 2010 19:49:57 +0000 (20:49 +0100)]
Add AH_SUPPORT_AR5416 always.

4 years agoDisable ndis for now.
Rui Paulo [Tue, 13 Apr 2010 19:49:32 +0000 (20:49 +0100)]
Disable ndis for now.

4 years agoFix for new net80211 options
Rui Paulo [Tue, 13 Apr 2010 19:49:08 +0000 (20:49 +0100)]
Fix for new net80211 options

4 years agoMerge remote branch 'crater/master' into net80211-update
Matthew Dillon [Tue, 13 Apr 2010 19:11:08 +0000 (12:11 -0700)]
Merge remote branch 'crater/master' into net80211-update

4 years agoUpdate for new ratectl.
Rui Paulo [Tue, 13 Apr 2010 18:38:09 +0000 (19:38 +0100)]
Update for new ratectl.

4 years agoMerge branch 'master' into net80211-update
Rui Paulo [Tue, 13 Apr 2010 18:34:34 +0000 (19:34 +0100)]
Merge branch 'master' into net80211-update

4 years agonata - Drop pending requests on dump
Alex Hornung [Tue, 13 Apr 2010 16:32:08 +0000 (16:32 +0000)]
nata - Drop pending requests on dump

* Drop all pending requests in the ata queue when we are about to dump.

* This should solve issues that have been appearing lately causing a
  TAILQ_NEXT panic on dumps with nata under heavy I/O.

Reported-by: Jan Lentfer (lentferj@), Antonio Huete (tuxillo@)
Obtained-from: FreeBSD

4 years agoata - Fix dumping of old ata driver
Alex Hornung [Tue, 13 Apr 2010 16:29:47 +0000 (16:29 +0000)]
ata - Fix dumping of old ata driver

* While we still have ata(4) around, make addump work properly again
  with the new dumping infrastructure.

4 years agoFix i386 buildworld.
Sascha Wildner [Tue, 13 Apr 2010 06:38:19 +0000 (08:38 +0200)]
Fix i386 buildworld.

4 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Mon, 12 Apr 2010 17:15:51 +0000 (10:15 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

4 years agoMerge branch 'net80211-update' of git://leaf.dragonflybsd.org/~rpaulo/dragonfly into...
Matthew Dillon [Mon, 12 Apr 2010 16:45:53 +0000 (09:45 -0700)]
Merge branch 'net80211-update' of git://leaf.dragonflybsd.org/~rpaulo/dragonfly into net80211-update

4 years agosleep.9: Document mtxsleep() and tsleep_interlock().
Sascha Wildner [Mon, 12 Apr 2010 00:35:32 +0000 (02:35 +0200)]
sleep.9: Document mtxsleep() and tsleep_interlock().

Also, update HISTORY a bit.

Submitted-by: Venkatesh Srinivas <me@endeavour.zapto.org>
4 years agoFix LINT build.
Sascha Wildner [Sat, 10 Apr 2010 22:17:32 +0000 (00:17 +0200)]
Fix LINT build.

4 years agoAdd -Wold-style-definition to WARNS >= 3 and fix the resulting fallout.
Sascha Wildner [Sat, 10 Apr 2010 20:41:24 +0000 (22:41 +0200)]
Add -Wold-style-definition to WARNS >= 3 and fix the resulting fallout.

* Ansify a function in mount_smbfs(8).

* Lower the WARNS of some contrib/ stuff from 3 to 2.

4 years agoIn man9 manual pages, add some references to where the code is.
Sascha Wildner [Sat, 10 Apr 2010 17:24:49 +0000 (19:24 +0200)]
In man9 manual pages, add some references to where the code is.

Submitted-by: Venkatesh Srinivas <me@endeavour.zapto.org>
4 years agoACPI: Don't unlock in lock's error path
Stathis Kamperis [Sat, 10 Apr 2010 15:56:28 +0000 (18:56 +0300)]
ACPI: Don't unlock in lock's error path

Dragonfly-bug: <http://bugs.dragonflybsd.org/issue1647>

Submitted-by: Edward O'Callaghan
4 years agoACPI - disable ACPIIO_ACKSLPSTATE
YONETANI Tomokazu [Sat, 10 Apr 2010 07:24:28 +0000 (16:24 +0900)]
ACPI - disable ACPIIO_ACKSLPSTATE

It's incomplete and an undocumented option in acpiconf can trigger
a kernel panic (only as root, though).

4 years agomount_portal(8): Raise WARNS to 6.
Sascha Wildner [Sat, 10 Apr 2010 08:10:49 +0000 (10:10 +0200)]
mount_portal(8): Raise WARNS to 6.

4 years agomount_nwfs(8): Raise WARNS to 6.
Sascha Wildner [Sat, 10 Apr 2010 07:06:08 +0000 (09:06 +0200)]
mount_nwfs(8): Raise WARNS to 6.

4 years agoConstify ncp_error()'s fmt argument.
Sascha Wildner [Sat, 10 Apr 2010 07:05:33 +0000 (09:05 +0200)]
Constify ncp_error()'s fmt argument.

4 years agosysctl(8): Raise WARNS to 6.
Sascha Wildner [Sat, 10 Apr 2010 06:38:14 +0000 (08:38 +0200)]
sysctl(8): Raise WARNS to 6.

4 years agoInstall the boot(8) manual page too during 64 bit install.
Sascha Wildner [Sat, 10 Apr 2010 06:09:06 +0000 (08:09 +0200)]
Install the boot(8) manual page too during 64 bit install.

4 years agomalloc.3: Remove some phkmalloc specific info in the HISTORY section.
Sascha Wildner [Sat, 10 Apr 2010 05:18:04 +0000 (07:18 +0200)]
malloc.3: Remove some phkmalloc specific info in the HISTORY section.

Reported-by: Venkatesh Srinivas <me@endeavour.zapto.org>
4 years agowindow(1): Perform NULL check before strcmp() rather than after.
YONETANI Tomokazu [Sat, 10 Apr 2010 01:47:16 +0000 (10:47 +0900)]
window(1): Perform NULL check before strcmp() rather than after.

Fixes segfault upon TERM=cons25.

4 years agosili.4: Mention support for both versions of 3124 chips.
Jan Lentfer [Fri, 9 Apr 2010 18:39:48 +0000 (20:39 +0200)]
sili.4: Mention support for both versions of 3124 chips.

4 years agolinux emu - Refactor open code
Alex Hornung [Fri, 9 Apr 2010 07:24:53 +0000 (07:24 +0000)]
linux emu - Refactor open code

* Factor out a linux_open_common that both open() and openat() use.

* While here, also use CACHE_*MPLOCK*, as is done in vfs_syscalls.c.

4 years agolinux emu - support O_DIRECTORY for open syscall
Alex Hornung [Fri, 9 Apr 2010 06:49:06 +0000 (06:49 +0000)]
linux emu - support O_DIRECTORY for open syscall

* Linux opendir seems to rely on O_DIRECTORY to avoid certain race
  conditions, so introduce O_DIRECTORY support which just returns
  ENOTDIR even if the open is successful, if the opened path is not a
  directory.

* This fixes Ant's directory scanner.

Submitted-by: Johannes Hofmann
4 years agowindow(1): Remove __RCSID & friends.
Sascha Wildner [Fri, 9 Apr 2010 05:38:27 +0000 (07:38 +0200)]
window(1): Remove __RCSID & friends.

4 years agorcorder(8): Remove __RCSID & friends.
Sascha Wildner [Fri, 9 Apr 2010 04:36:05 +0000 (06:36 +0200)]
rcorder(8): Remove __RCSID & friends.

4 years agohotplugd(8): We have __dead2 for __attribute__((__noreturn__)).
Sascha Wildner [Thu, 8 Apr 2010 21:34:12 +0000 (23:34 +0200)]
hotplugd(8): We have __dead2 for __attribute__((__noreturn__)).

Why? Don't ask me.

4 years agohotplugd(8): Raise WARNS to 6.
Sascha Wildner [Thu, 8 Apr 2010 21:25:52 +0000 (23:25 +0200)]
hotplugd(8): Raise WARNS to 6.

4 years agolook(1): Fix my previous commit.
Sascha Wildner [Thu, 8 Apr 2010 14:17:05 +0000 (16:17 +0200)]
look(1): Fix my previous commit.

I broke i386 behavior. Instead, take a nicer fix from NetBSD.

4 years agonrelease: Remove LiveDVD specific kernel configs and loader menu.
Sascha Wildner [Thu, 8 Apr 2010 13:36:51 +0000 (15:36 +0200)]
nrelease: Remove LiveDVD specific kernel configs and loader menu.

These were introduced in order to also offer SMP kernels (with and
without APIC_IO) from the LiveDVD. But we don't want to maintain 4
extra kernel configs just for that purpose, especially since we
have x86_64 support now which would require introducing even more
configs. The whole concept has to be re-thought.

So until we come up with a better solution, get rid of it and go
with the usual GENERIC/VKERNEL (X86_64_GENERIC/VKERNEL64 on
x86_64) combination just like we do for the LiveCD.

4 years agoFix look(1) on x86_64.
Sascha Wildner [Thu, 8 Apr 2010 13:09:21 +0000 (15:09 +0200)]
Fix look(1) on x86_64.

SIZE_T_MAX, being ULONG_MAX, was -1 when cast to off_t (int64_t).

Reported-by: Urmas Reinsalu <urki@klaasikoda.ee>
4 years agos/firmware.h/fbsd_firmware.h/
Rui Paulo [Thu, 8 Apr 2010 12:50:44 +0000 (13:50 +0100)]
s/firmware.h/fbsd_firmware.h/

4 years agofirmware - Import FreeBSD's firmware API.
Joe Talbott [Wed, 31 Mar 2010 23:39:44 +0000 (19:39 -0400)]
firmware - Import FreeBSD's firmware API.

This should be considered experimental.  When porting code from
FreeBSD instances of #include <sys/firmware.h> should be converted
to #include <sys/fbsd_firmware.h>.  I have also taken out some of
the firmware file locking code.

4 years agoupdate
Rui Paulo [Thu, 8 Apr 2010 12:46:40 +0000 (13:46 +0100)]
update

4 years agoSync with FreeBSD.
Rui Paulo [Thu, 8 Apr 2010 12:46:25 +0000 (13:46 +0100)]
Sync with FreeBSD.

4 years agoSync with FreeBSD.
Rui Paulo [Thu, 8 Apr 2010 12:44:40 +0000 (13:44 +0100)]
Sync with FreeBSD.

4 years agoSync with latest net80211 changes from FreeBSD, therby removing DFly's
Rui Paulo [Thu, 8 Apr 2010 12:25:32 +0000 (13:25 +0100)]
Sync with latest net80211 changes from FreeBSD, therby removing DFly's
ratectl code.

4 years agohammer.5: Add a reference to mneumann's KIT presentation slides.
Sascha Wildner [Thu, 8 Apr 2010 12:22:07 +0000 (14:22 +0200)]
hammer.5: Add a reference to mneumann's KIT presentation slides.

4 years agoDo proper locking in the callout functions.
Rui Paulo [Thu, 8 Apr 2010 12:16:23 +0000 (13:16 +0100)]
Do proper locking in the callout functions.

4 years agopthread.3: Update the IMPLEMENTATION NOTES to the current state of affairs.
Sascha Wildner [Thu, 8 Apr 2010 11:58:10 +0000 (13:58 +0200)]
pthread.3: Update the IMPLEMENTATION NOTES to the current state of affairs.

Move information from the README to the manual page since all this
information is also interesting to people who don't have source.

4 years agoDisable non-ported drivers.
Rui Paulo [Thu, 8 Apr 2010 10:45:04 +0000 (11:45 +0100)]
Disable non-ported drivers.

4 years agoAdd an rc script for starting vkernels upon boot.
Sascha Wildner [Thu, 8 Apr 2010 10:04:44 +0000 (12:04 +0200)]
Add an rc script for starting vkernels upon boot.

I'm committing this for now since it works OK here and seems to be a
good thing.

Should anyone come up with better ideas for connecting to the vkernels'
consoles (as suggested by Matt and Nuno), that can go in later.

Dragonfly-bug: <http://bugs.dragonflybsd.org/issue697>

4 years agoMerge branch 'master' into net80211-update
Rui Paulo [Wed, 7 Apr 2010 18:29:39 +0000 (19:29 +0100)]
Merge branch 'master' into net80211-update

4 years agotmpfs - Add additional mount options
Matthew Dillon [Wed, 7 Apr 2010 16:34:43 +0000 (09:34 -0700)]
tmpfs - Add additional mount options

* Add named mount options for guid, uid, mode (root inode)
* Add named mount options ofr inodes, size, and maxfilesize.

Submitted-by: Naoya Sugioka <naoya.sugioka@gmail.com>
4 years agomqueues: selwakeup() needs the MP lock to be held
Stathis Kamperis [Tue, 6 Apr 2010 19:17:35 +0000 (22:17 +0300)]
mqueues: selwakeup() needs the MP lock to be held

Briefly-discussed-with: sjg@

4 years agohammer volume-add / volume-del: Keep bigblock stats correct
Michael Neumann [Tue, 6 Apr 2010 18:18:47 +0000 (20:18 +0200)]
hammer volume-add / volume-del: Keep bigblock stats correct

4 years agoRemove an unused target from src/Makefile.
Sascha Wildner [Mon, 5 Apr 2010 17:13:47 +0000 (19:13 +0200)]
Remove an unused target from src/Makefile.

4 years agoRemove the 'update' target which was used for updating source via CVS.
Sascha Wildner [Mon, 5 Apr 2010 15:38:35 +0000 (17:38 +0200)]
Remove the 'update' target which was used for updating source via CVS.

Users can use the targets provided in /usr/Makefile or just 'git pull'.
See development(7).

Submitted-by: Edward O'Callaghan <eocallaghan@auroraux.org>
4 years agoSync zoneinfo database with tzdata2010h from elsie.nci.nih.gov
Sascha Wildner [Mon, 5 Apr 2010 15:29:00 +0000 (17:29 +0200)]
Sync zoneinfo database with tzdata2010h from elsie.nci.nih.gov

africa:         8.23 -> 8.24
asia:           8.58 -> 8.59

Both Tunisia and Pakistan have decided to abandon DST.

4 years agonrelease: Remove unused variable.
Sascha Wildner [Sun, 4 Apr 2010 17:29:04 +0000 (19:29 +0200)]
nrelease: Remove unused variable.

4 years agoHAMMER Utility - Change default split size from 100MB to 4G
Matthew Dillon [Sun, 4 Apr 2010 16:23:19 +0000 (09:23 -0700)]
HAMMER Utility - Change default split size from 100MB to 4G

* Change the default split size for mirroring from 100MB to 4G.  For very
  large filesystems a small split size can result in very high meta-data
  overheads with very little actual incremental data.

* Adjust the manual page for the split changes.

* Adjust the manual page to clarify limitations of the bandwidth option.

4 years agonrelease: Add back the creation of the /usr/local hierarchy on the LiveCD.
Sascha Wildner [Sun, 4 Apr 2010 16:06:42 +0000 (18:06 +0200)]
nrelease: Add back the creation of the /usr/local hierarchy on the LiveCD.

Even though nothing in base uses it, it's more convenient to have the
hierarchy already in place in case the user wants to install some stuff
the traditional way.

While doing this, remove the documentation of the 'fetch' target from
release.7 since this target no longer exists now that cvsup has been
removed from the LiveCD.

In-discussion-with: dillon

4 years agoinstaller: Fix the LiveCD's /etc/fstab regarding /usr/local.
Sascha Wildner [Sun, 4 Apr 2010 15:21:57 +0000 (17:21 +0200)]
installer: Fix the LiveCD's /etc/fstab regarding /usr/local.

/usr/local/etc was mounted read/write (a remnant from the FreeBSD ports
era). Instead, mount /usr/pkg/etc in order to give the user a chance to
tweak the settings of the packages which come on the LiveCD.

4 years agosystat - Fix a deja vu in a header file.
Antonio Huete Jimenez [Sun, 4 Apr 2010 00:20:12 +0000 (02:20 +0200)]
systat - Fix a deja vu in a header file.

4 years agoinclude/Makefile: Add vers.txt to CLEANFILES.
Sascha Wildner [Sat, 3 Apr 2010 13:37:20 +0000 (15:37 +0200)]
include/Makefile: Add vers.txt to CLEANFILES.

4 years agokernel - Address excessive stall in pageout during deadlock avoidance
Matthew Dillon [Thu, 1 Apr 2010 18:06:07 +0000 (11:06 -0700)]
kernel - Address excessive stall in pageout during deadlock avoidance

* The pageout daemon uses LK_TIMELOCK to avoid deadlocking on a vnode
  that might be held locked during a pfault, which waits up to 1/10 of
  a second.

  If the vnode has a large number of pageable pages each page may go
  through the timeout.  This can result in the pageout daemon stalling
  for an excessive amount of time.

  Reduce instances of the problem by remembering the last vnode which
  failed its timelock and using LK_NOWAIT for later pages.  A single
  vnode is remembered for now.

Reported-by: Francois Tigeot <ftigeot@wolfpond.org>
4 years agodevfs - Fix incorrect st_size reporting
Matthew Dillon [Thu, 1 Apr 2010 16:16:23 +0000 (09:16 -0700)]
devfs - Fix incorrect st_size reporting

* The default reported st_size should be 0 and not sizeof(devfs_node).

* Fixes incorrect reporting for /dev/null and other devices.

Reported-by: marino2, numerous others (it slipped through the cracks)
4 years agoHAMMER VFS - Fix insufficient cursor change test
Matthew Dillon [Thu, 1 Apr 2010 16:15:17 +0000 (09:15 -0700)]
HAMMER VFS - Fix insufficient cursor change test

* The reblocking code tests whether a cursor has changed after being
  unlocked.  This test was insufficient and resulted in an assertion
  panic.  Beef up the test.

Reported-by: Jan Lentfer <Jan.Lentfer@web.de>
4 years agovinum - change drive parsing
Alex Hornung [Wed, 31 Mar 2010 21:18:40 +0000 (21:18 +0000)]
vinum - change drive parsing

* When calling init_drive() from read_drive_label() change the static 0
  with the verbose var that is passed to read_drive_label().

* Changed the way the drives are parsed in vinum_scandisk() and removed
  the second iteration of detecting vinum partitions

Submitted-by: Rumko
Dragonfly-bug: http//bugs.dragonflybsd.org/issue1565

4 years agoman - Add .Dx entries for 2.6 and 2.7
Matthew Dillon [Wed, 31 Mar 2010 20:39:36 +0000 (13:39 -0700)]
man - Add .Dx entries for 2.6 and 2.7

* Add .Dx entries for 2.6 and 2.7 so nroff -mandoc doesn't complain.

4 years agoHAMMER - Adjust documentation and change default fsync_mode to 3
Matthew Dillon [Wed, 31 Mar 2010 20:36:34 +0000 (13:36 -0700)]
HAMMER - Adjust documentation and change default fsync_mode to 3

* The default fsync_mode is 3 (REDO heuristic with no disk flush).
  This mode is contemporary with what a UFS fsync() does.

4 years agodevfs - remove obsolete KKASSERT
Alex Hornung [Wed, 31 Mar 2010 19:12:08 +0000 (19:12 +0000)]
devfs - remove obsolete KKASSERT

* remove an obsolete KKASSERT checking namlen in allocp, as one was able
  to trigger it from userland by adding a sufficiently large link rule.

Reported-by: Sascha Wildner
4 years agovkernel - remove stale lwbuf fields in globaldata
Matthew Dillon [Wed, 31 Mar 2010 17:44:42 +0000 (10:44 -0700)]
vkernel - remove stale lwbuf fields in globaldata

* Remove stale lwbuf fields that are no longer used from the
  vkernel's globaldata.

* Remove a now-unnecessary #include line from globaldata.h