9 years agoHAMMER - Add additional warnings for v2/v3 upgrades, fix bug in snaprm
Matthew Dillon [Thu, 15 Oct 2009 01:19:15 +0000 (18:19 -0700)]
HAMMER - Add additional warnings for v2/v3 upgrades, fix bug in snaprm

* Add warnings related to backup scripts when upgrading from V2 to V3.
  The synctid directive does not generate a snapshot.  You should generate
  a real snapshot to properly track them.

  Also, removing a snapshot softlink does not remove the meta-data and
  thus the pruning code will continue to prune around that snapshot.
  The snaprm directive should be used when removing snapshot softlinks
  to also remove the meta-data.

* Snaprm now uses the current directory when removing a transaction id
  and no target directory was specified.

* Snaprm now makes it clear that a failure to remove meta-data when
  removing a softlink is just a warning, not a fatal error.

9 years agoHAMMER - Add upgrade instructions to the manual page, fix bug in snaprm
Matthew Dillon [Thu, 15 Oct 2009 01:07:01 +0000 (18:07 -0700)]
HAMMER - Add upgrade instructions to the manual page, fix bug in snaprm

* Added upgrade instructions for V1->V2 and V2->V3

* Fixed a bug when running hammer snaprm on a softlink which references
  a snapshot in a PFS other then the one containing the softlink.

9 years agoHAMMER - Enhance cleanup utility for HAMMER v3
Matthew Dillon [Thu, 15 Oct 2009 00:26:55 +0000 (17:26 -0700)]
HAMMER - Enhance cleanup utility for HAMMER v3

* For each PFS if the snapshots directory has not been overridden in
  the PFS config it will be migrated from <fs>/snapshots to
  /var/hammer/<path_from_root>.  The snapshots directory for the
  root directory itself will be called /var/hammer/root.  The old
  <fs>/snapshots directory will then removed.

  If a PFS has a snapshots directory config set no migration will
  occur.  Users can migrate it manually and then clear the snapshots
  directory in the PFS config if they desire.  We can't do it
  automatically because users might use this mechanic to mix snapshots
  with the live backup and needless to say cpdup()ing a live backup
  into /var is probably a bad idea.

* Fix a bug when generating softlinks in a directory that is not
  under the PFS being snapshotted.

* Add an optional third argument to the 'hammer snapshot' directive
  to allow a meta-data note to be specified.  The meta-data entry
  is created whether you specify a note or not.

9 years agoHAMMER - Correct bug in last commit. hammer cleanup snapshot command.
Matthew Dillon [Wed, 14 Oct 2009 20:46:22 +0000 (13:46 -0700)]
HAMMER - Correct bug in last commit.  hammer cleanup snapshot command.

* hammer cleanup was generating a bad directive when trying to run the
  snapshot command.

9 years agoHAMMER - Add version 3 meta-data features
Matthew Dillon [Wed, 14 Oct 2009 18:44:59 +0000 (11:44 -0700)]
HAMMER - Add version 3 meta-data features

* These features are available for filesystem version 3.  Version 2 may be upgraded
  to version 3 in-place.  These features are not usable until you upgrade.

* Definitively store snapshots in filesystem meta-data.  Softlinks still
  work.  The new snapshot directives (snap, snaplo, snapq, etc) also allow
  you to specify up to a 64-character note for each snapshot you create.
  The snapls directive may be used to list all snapshots stored in meta-data.

  'hammer cleanup' will move all softlink-based snapshots residing in the
  <fs>/snapshots directory to meta-data when it next snapshots the filesystem
  (within a day of upgrading, usually).   The snapshot softlinks are left intact.

  Storing snapshot information in meta-data means that accidental wipes of
  your <fs>/snapshots directory will NOT cause later hammer cleanup runs to
  destroy your snapshots!  The meta-data snapshots are also removed if you
  do a prune-everything, or through normal pruning expirations, and thus
  'hammer snapls' will definitively list your valid snapshots.

  This feature also means that you can obtain a definitive list of snapshots
  available on mirroring slaves.

* Definitively store the hammer cleanup configuration file in filesystem meta-data.
  This meta-data is not mirrored.  'hammer cleanup' will move <fs>/snapshots/config
  to the new meta-data config and deletes <fs>/snapshots/config after you've upgraded
  the filesystem.  You can edit the configuration with the 'viconfig' directive.

* The HAMMER utility has new directives:  snap, snaplo, snapq, snaprm, snapls,
  config, and viconfig.

* WARNING!  Filesystems mounted 'nohistory' and files chflagged similarly do not
  have snapshots, but the hammer utility still allows the directives to be run.
  This is a bug that needs to be fixed.

9 years agoACPICA: Unbreak ACPI_DEBUG_CACHE support
Sepherosa Ziehau [Wed, 14 Oct 2009 16:07:52 +0000 (00:07 +0800)]

9 years agoACPI C-STATE: Function renaming
Sepherosa Ziehau [Sun, 11 Oct 2009 05:04:07 +0000 (13:04 +0800)]
ACPI C-STATE: Function renaming

9 years agomessage queue manpages: Fix section numbers (3 -> 2).
Sascha Wildner [Tue, 13 Oct 2009 23:22:58 +0000 (01:22 +0200)]
message queue manpages: Fix section numbers (3 -> 2).

9 years agoRemove machdep.msgbuf, machdep.msgbuf_clear.
Alexander Polakov [Tue, 13 Oct 2009 18:34:18 +0000 (22:34 +0400)]
Remove machdep.msgbuf, machdep.msgbuf_clear.

There're no consumers in base and nothing machine-dependent in code.

9 years agoboot - tftp - Fix bzero() with wild length field.
Matthew Dillon [Mon, 12 Oct 2009 23:46:32 +0000 (16:46 -0700)]
boot - tftp - Fix bzero() with wild length field.

Reported-by: swildner
9 years agolibcam: Remove dead assignment.
Sascha Wildner [Mon, 12 Oct 2009 22:31:27 +0000 (00:31 +0200)]
libcam: Remove dead assignment.

9 years agolibutil: Miscellaneous cleanup.
Sascha Wildner [Mon, 12 Oct 2009 21:56:15 +0000 (23:56 +0200)]
libutil: Miscellaneous cleanup.

* In setusercontext(), pwd is not guaranteed to be non-NULL if
  LOGIN_SETPRIORITY is in flags. Therefore, don't use it in the
  syslog() call.

* Remove some dead assignments.

9 years agouuidgen.2: Include <sys/types.h> for <sys/uuid.h>.
Sascha Wildner [Mon, 12 Oct 2009 19:07:54 +0000 (21:07 +0200)]
uuidgen.2: Include <sys/types.h> for <sys/uuid.h>.

9 years agousbhid.3: Use standard types.
Sascha Wildner [Mon, 12 Oct 2009 19:07:26 +0000 (21:07 +0200)]
usbhid.3: Use standard types.

9 years agoSOEKRIS: Adjust indent.
Sascha Wildner [Mon, 12 Oct 2009 12:37:04 +0000 (14:37 +0200)]
SOEKRIS: Adjust indent.

9 years agoLINT: Remove PAS_JOYSTICK_ENABLE option which doesn't exist.
Sascha Wildner [Mon, 12 Oct 2009 12:36:30 +0000 (14:36 +0200)]
LINT: Remove PAS_JOYSTICK_ENABLE option which doesn't exist.

9 years agoFreeBSD-supfile: Add 'projects'.
Sascha Wildner [Sun, 11 Oct 2009 23:30:44 +0000 (01:30 +0200)]
FreeBSD-supfile: Add 'projects'.

9 years agolibc: Do not link libgcc when building with clang.
Sascha Wildner [Sun, 11 Oct 2009 23:21:38 +0000 (01:21 +0200)]
libc: Do not link libgcc when building with clang.

9 years agolibexec/customcc: Ensure the -isysroot argument is not empty.
Sascha Wildner [Sun, 11 Oct 2009 23:20:46 +0000 (01:20 +0200)]
libexec/customcc: Ensure the -isysroot argument is not empty.

9 years agolibrt: Use WARNS in Makefile instead of tweaking CFLAGS.
Stathis Kamperis [Sun, 11 Oct 2009 22:27:34 +0000 (01:27 +0300)]
librt: Use WARNS in Makefile instead of tweaking CFLAGS.

Tested with i386 and amd64.

Noticed-by: swildner@
9 years agolibrt: Remove extraneous \ in Makefile target.
Stathis Kamperis [Sun, 11 Oct 2009 21:43:16 +0000 (00:43 +0300)]
librt: Remove extraneous \ in Makefile target.

Noticed-by: swildner@
9 years agomqueues: Hook into the build system.
Stathis Kamperis [Wed, 7 Oct 2009 19:41:11 +0000 (19:41 +0000)]
mqueues: Hook into the build system.

9 years agomqueues: kdump: Ad-hoc translation for mq_open().
Stathis Kamperis [Wed, 7 Oct 2009 19:41:37 +0000 (19:41 +0000)]
mqueues: kdump: Ad-hoc translation for mq_open().

9 years agomqueues: Add librt (realtime library).
Stathis Kamperis [Wed, 7 Oct 2009 19:40:42 +0000 (19:40 +0000)]
mqueues: Add librt (realtime library).

9 years agomqueues: kern_descrip.c: Make badfo*() functions non-static.
Stathis Kamperis [Wed, 7 Oct 2009 19:42:08 +0000 (19:42 +0000)]
mqueues: kern_descrip.c: Make badfo*() functions non-static.

9 years agomqueues: vfs_subr: Add vaccess() method consumed by POSIX mqueues.
Stathis Kamperis [Wed, 7 Oct 2009 19:33:36 +0000 (19:33 +0000)]
mqueues: vfs_subr: Add vaccess() method consumed by POSIX mqueues.

There is already vop_access_helper() but operates on vnodes.

We may eventually move vaccess() to vfs_helper.c.

9 years agomqueues: Add system calls.
Stathis Kamperis [Wed, 7 Oct 2009 19:37:36 +0000 (19:37 +0000)]
mqueues: Add system calls.

9 years agomqueues: Port POSIX message queues from NetBSD.
Stathis Kamperis [Wed, 7 Oct 2009 20:03:34 +0000 (20:03 +0000)]
mqueues: Port POSIX message queues from NetBSD.

9 years agoFix paren usage in <sys/mutex.h>.
Peter Avalos [Sun, 11 Oct 2009 00:21:35 +0000 (00:21 +0000)]
Fix paren usage in <sys/mutex.h>.

9 years agokernel - Improve code documentation for vnode->v_token
Matthew Dillon [Sat, 10 Oct 2009 19:16:35 +0000 (12:16 -0700)]
kernel - Improve code documentation for vnode->v_token

9 years agoNFS - Fix numerous issues with NFS root mounts, primarily for vkernels
Matthew Dillon [Sat, 10 Oct 2009 00:56:34 +0000 (17:56 -0700)]
NFS - Fix numerous issues with NFS root mounts, primarily for vkernels

vkernels do not inherit BOOTP data from PXE and because of this a number
of code paths are run which are not run in non-vkernel NFS mounts.

* Fix a kernel memory check that was failing for vkernels and causing a

* Change the default BOOTP socket type from UDP to TCP.

* Adjust the default vfs.nfs.maxasyncbio value based on available mbuf
  clusters.  The value will be adjusted down for systems with small
  memory footprints.

  Otherwise NFS can trivially run the system out of mbufs.

* Fix bugs in the NFS BIO queueing code related to values of
  vfs.nfs.maxasyncbio lower then the maximum.

* Remove the BOOTP_NFSV3 option when probing for the type of NFS mount
  (V2 or V3).  The BOOTP_NFSV3 kernel option is no longer required for
  root mounts to default to NFSv3.

  This also works around a bug related to large write()s with NFSv2 which
  has not yet been found.

Reported-by: Rumko <rumcic@gmail.com>
9 years agoNFS - Change NFS root mount default from udp to tcp
Matthew Dillon [Sat, 10 Oct 2009 00:54:06 +0000 (17:54 -0700)]
NFS - Change NFS root mount default from udp to tcp

We previously changed the default NFS mount type to tcp.  Adjust
the default NFS root mount type to tcp as well.  UDP mounts just
do not perform well when large numbers of RPCs are allowed to run
in parallel.

9 years agoAdd a watchdog(4) manual page (from OpenBSD).
Sascha Wildner [Fri, 9 Oct 2009 19:09:01 +0000 (21:09 +0200)]
Add a watchdog(4) manual page (from OpenBSD).

9 years agorogue(6): Fix broken aliasing for -O2 or higher.
Sascha Wildner [Fri, 9 Oct 2009 18:55:05 +0000 (20:55 +0200)]
rogue(6): Fix broken aliasing for -O2 or higher.

Fix taken from OpenBSD.

Submitted-by: Ulrich Spoerlein <uqs@spoerlein.net>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue1551>

9 years agoUnbreak building vkernel by not linking against -lthread_xu.
YONETANI Tomokazu [Fri, 9 Oct 2009 15:51:12 +0000 (00:51 +0900)]
Unbreak building vkernel by not linking against -lthread_xu.

9 years agoscsi_sg - cmd is now ap->a_cmd
Alex Hornung [Fri, 9 Oct 2009 15:53:15 +0000 (16:53 +0100)]
scsi_sg - cmd is now ap->a_cmd

* the cmd parameter for an ioctl routine is in the ap ioctl_args
  structure since some time ago, so don't use the inexistant cmd
  variable for the debug kprintf.
* This solves a compilation issue when building with scsi debug.

Reported-By: Jan Lentfer
9 years agokernel - Fix TCP MSS calculation
Matthew Dillon [Thu, 8 Oct 2009 22:30:02 +0000 (15:30 -0700)]
kernel - Fix TCP MSS calculation

* When the default MSS was returned to 512 in commit bf18b4 it revealed
  a bug in the tcp_mss() function which caused DragonFly senders to
  always use a mss of 500 when sending data to non-local targets.

  Fix the negotiation to use the offered MSS for non-local targets.

9 years agokernel - Major performance changes to VM page management.
Matthew Dillon [Thu, 8 Oct 2009 21:20:13 +0000 (14:20 -0700)]
kernel - Major performance changes to VM page management.

    This commit significantly changes the way the kernel caches VM pages.
    Essentially what happens now is that vnodes and VM pages which are
    accessed often wind up in the VM active queue and last on the list
    for recyclement while vnodes and VM pages which are only accessed once
    or twice wind up on the VM inactive queue and are inserted in the middle
    of the list for recyclement.

    Previously vnodes were essentially recycled in a LRU fashion and due
    to algorithmic design issues VM pages associated with files scanned
    via open()/read() were also winding up getting recycled in a LRU
    fashion.  This caused relatively often-used data to get recycled way
    too early in the face of large filesystem scans (tar, rdist, cvs, etc).

    In the new scheme vnodes and VM pages are essentially split into two
    camps:  Those which are used often and those which are only used once
    or twice.  The ones used often wind up in the VM active queue (and
    their vnodes are last on the list of vnodes which can be recycled),
    and the ones used only once or twice wind up in the VM inactive queue.
    The cycling of a large number of files from single-use scans (tar, rdist,
    cvs, etc on large data sets) now only recycles within the inactive set
    and does not touch the active set AT ALL.  So, for example, files
    often-accessed by a shell or other programs tend to remain cached

    Permanance here is a relative term.  Given enough memory pressure
    such files WILL be recycled.  But single-use scans even of huge
    data sets will not create this sort of memory pressure.  Examples
    of how active VM pages and vnodes will get recycled include:

    (1) Too many pages or vnodes wind up being marked as active.
    (2) Memory pressure created by anonymous memory from running processes.

    Technical Description of changes:

    * The buffer cache is limited.  For example, on a 3G system the buffer
      cache only manages around 200MB.  The VM page cache, on the otherhand
      can cover all available memory.

      This means that data can cycle in and out of buffer cache at a much
      higher rate then it would from the VM page cache.

    * VM pages were losing their activity history (m->act_count) when
      wired to back buffer cache pages.  Because the buffer cache only
      manages around 200MB the VM pages were being cycled in and out
      of the buffer cache on a shorter time period verses how long they
      would be able to survive in the VM page queues.

      This caused VM pages to get recycled in more of a LRU fashion instead
      of based on usage, particularly the VM pages for files accessed with

      VM pages now retain their activity history and it also gets updated
      even while the VM pages are owned by the buffer cache.

    * Files accessed just once, for example in a large 'tar', 'find', or 'ls',
      could cause vnodes for files accessed numerous times to get kicked out
      of the vnode free list.  This could occur due to an edge case when
      many tiny files are iterated (such as in a cvs update), on machines
      with 2G or more of memory.  In these cases the vnode cache would reach
      its maximum number of vnodes without the VM page cache ever coming
      under pressure, forcing the VM system to throw away vnodes.  The VM
      system invariably chose vnodes with small numbers of cached VM pages
      (which is what we desire), but wound up chosing them in strict LRU
      order regardless of whether the vnode was for a file accessed just
      once or for a file accessed many times.

    More technical Description of changes:

    * The buffer cache now inherits the highest m->act_count from the VM
      pages backing it, and updates its tracking b_act_count whenever the
      buffer is getblk()'d (and HAMMER does it manually for buffers
      it attaches to internal structures).

    * VAGE in the vnode->v_flag field has been changed to VAGE0 and
      VAGE1 (a 2 bit counter).  Vnodes start out marked as being fully
      aged (count of 3) and the count is decremented every time the
      vnode is opened.

    * When a vnode is placed in the vnode free list aged vnodes are
      now inserted into the middle of the list while non-aged vnodes
      are inserted at the end.  So aged vnodes get recycled first.

    * VM pages returned from the buffer cache are now placed in the
      inactive queue or the active queue based on m->act_count.  This
      works properly now that we do not lose the activity state when
      wiring and unwiring the VM page for buffer cache backings.

    * The VM system now sets a much larger inactive page target, 1/4
      of available memory.  This combined with the vnode reclamation
      algorithm which reclaims 1/10 of the active vnodes in the system
      is now responsible for regulating the distribution of 'active'
      pages verses 'inactive' pages.

      It is important to note that the inactive page target and the
      vnode reclamation algorithm sets a minimum size for pages and
      vnodes intended to be on the inactive side of the ledger.  Memory
      pressure from having too many active pages or vnodes will cause
      VM pages to move to the inactive side.  But, as already mentioned,
      the simple one-time cycling of files such as in a tar, rdist, or
      other file scan will NOT cause this sort of memory pressure.

    Negative aspects of the patch.

    * Very large data sets which might have previously fit in memory
      but do not fit in e.g. 1/2 of available memory will no longer
      be fully cached.

      This is an either-or type of deal.  We can't prevent active pages
      from getting recycled unless we reduce the amount of data we allow
      to get cached from 'one time' uses before starting to recycle that


9 years agothread libs: also remove the static libraries from /usr/lib
Simon Schubert [Wed, 7 Oct 2009 18:37:07 +0000 (20:37 +0200)]
thread libs: also remove the static libraries from /usr/lib

This is necessary, otherwise some software might want to link to the
static libc_r.a instead of leaving it alone alltogether.

9 years agothread libs: migrate the libpthread.* symlinks on upgrade
Simon Schubert [Wed, 7 Oct 2009 18:26:05 +0000 (20:26 +0200)]
thread libs: migrate the libpthread.* symlinks on upgrade

9 years agogetopt.1: getopt is deprecated, add a reference to getopts
Simon Schubert [Wed, 7 Oct 2009 12:15:15 +0000 (14:15 +0200)]
getopt.1: getopt is deprecated, add a reference to getopts

9 years agothread libs: move libc_r and libthread_xu to /usr/lib/thread
Simon Schubert [Wed, 7 Oct 2009 00:27:42 +0000 (02:27 +0200)]
thread libs: move libc_r and libthread_xu to /usr/lib/thread

This is so that badly written programs don't mistakenly pick up either
libc_r or libthread_xu.  The only correct way to get threading support
is to link to libpthread.

By moving the underlaying thread libs to a directory that is not
searched by the linker, we can enforce this policy.

Requested-by: hasso@
9 years agoMakefile.inc1: make sure that mtree is run for quickworld
Simon Schubert [Wed, 7 Oct 2009 00:26:12 +0000 (02:26 +0200)]
Makefile.inc1: make sure that mtree is run for quickworld

We need to run mtree in case new directories are added to the hierarchy
in case these directories are also used during the build.

9 years agowatchdogd.8: Minor cleanup.
Sascha Wildner [Wed, 7 Oct 2009 12:55:54 +0000 (14:55 +0200)]
watchdogd.8: Minor cleanup.

9 years agomove struct timespec into its own header
Simon Schubert [Tue, 6 Oct 2009 23:05:56 +0000 (01:05 +0200)]
move struct timespec into its own header

sys/stat.h needs to define struct timespec without polluting the
namespace with all <time.h> content, so factor out struct timespec into
its own header and use it at the appropriate places.

9 years agorc.d/{initrandom,random}: Remove unneeded output
Thomas Nikolajsen [Sat, 18 Jul 2009 14:25:31 +0000 (16:25 +0200)]
rc.d/{initrandom,random}: Remove unneeded output

9 years agolibexec/customcc: Set up the include paths a bit better.
Sascha Wildner [Tue, 6 Oct 2009 20:38:40 +0000 (22:38 +0200)]
libexec/customcc: Set up the include paths a bit better.

Only use /usr/include and /usr/libdata/gcc41 prefixed by
${USRDATA_PREFIX}. This requires r83302 of LLVM/clang or
higher for the -nostdclanginc option.

While here, remove an 'else' I put in for debugging purposes
which is now useless.

9 years agoMake padlock(4) compileable into the kernel and add it to LINT.
Sascha Wildner [Tue, 6 Oct 2009 09:28:39 +0000 (11:28 +0200)]
Make padlock(4) compileable into the kernel and add it to LINT.

9 years agoAdd a glxsb(4) manual page.
Sascha Wildner [Tue, 6 Oct 2009 06:58:49 +0000 (08:58 +0200)]
Add a glxsb(4) manual page.

Taken-from: FreeBSD

9 years agoAdd final newline.
Sascha Wildner [Mon, 5 Oct 2009 08:45:34 +0000 (10:45 +0200)]
Add final newline.

9 years agoamd64 - mpt(4) should use {,u}int32_t for S32/U32
YONETANI Tomokazu [Mon, 5 Oct 2009 01:04:20 +0000 (10:04 +0900)]
amd64 - mpt(4) should use {,u}int32_t for S32/U32
or else it uses {,un}signed long type which is of 64bits on 64-bit platforms.

9 years agomd.4: Remove an unnecessary .Pp
Sascha Wildner [Sun, 4 Oct 2009 19:44:27 +0000 (21:44 +0200)]
md.4: Remove an unnecessary .Pp

9 years agosyscalls.master: Fix typo in comment.
Stathis Kamperis [Sun, 4 Oct 2009 19:27:56 +0000 (19:27 +0000)]
syscalls.master: Fix typo in comment.

9 years agobsd-family-tree: Update for DragonFly 2.4.
Sascha Wildner [Sun, 4 Oct 2009 15:07:53 +0000 (17:07 +0200)]
bsd-family-tree: Update for DragonFly 2.4.

Taken-from: FreeBSD

9 years agoinclude/Makefile: Revert part of the previous commit. This doesn't work.
Sascha Wildner [Sun, 4 Oct 2009 14:07:43 +0000 (16:07 +0200)]
include/Makefile: Revert part of the previous commit. This doesn't work.

9 years agoetc: no need to upgrade dma configs
Simon Schubert [Sun, 4 Oct 2009 13:36:23 +0000 (15:36 +0200)]
etc: no need to upgrade dma configs

9 years ago<crypto/rijndael.h> is now taken from sys/crypto/rijndael/.
Sascha Wildner [Sun, 4 Oct 2009 11:34:30 +0000 (13:34 +0200)]
<crypto/rijndael.h> is now taken from sys/crypto/rijndael/.

9 years agoipsec/esp: Move #include to silence 2 warnings.
Sascha Wildner [Sun, 4 Oct 2009 10:57:33 +0000 (12:57 +0200)]
ipsec/esp: Move #include to silence 2 warnings.

9 years agoubsec(4): Silence some 'unused variable' warnings.
Sascha Wildner [Sun, 4 Oct 2009 10:19:55 +0000 (12:19 +0200)]
ubsec(4): Silence some 'unused variable' warnings.

9 years agoconfig - Add new SOEKRIS config, add options to LINT
Alex Hornung [Fri, 2 Oct 2009 21:12:57 +0000 (22:12 +0100)]
config - Add new SOEKRIS config, add options to LINT

* Add a new SOEKRIS config, mostly specific to soekris net5501 but good
  as an example for an embedded system.
* Also add all the new options to LINT config

9 years agowatchdogd - Adapt to our needs
Alex Hornung [Sun, 4 Oct 2009 10:53:15 +0000 (11:53 +0100)]
watchdogd - Adapt to our needs

9 years agowatchdogd - Import from OpenBSD
Alex Hornung [Sun, 4 Oct 2009 10:27:36 +0000 (11:27 +0100)]
watchdogd - Import from OpenBSD

* Because the wdog kernel part was designed to be mostly compatible with
  OpenBSD's API, we can import watchdogd from OpenBSD and just change a
  bunch of things.

Obtained-from: OpenBSD

9 years agopc32 files/options - Update glxsb, geode
Alex Hornung [Fri, 2 Oct 2009 21:09:10 +0000 (22:09 +0100)]
pc32 files/options - Update glxsb, geode

* Add glxsb and cpu_geode options support.

9 years agoglxsb/nsclpcsio - cleanup
Alex Hornung [Sat, 3 Oct 2009 15:35:00 +0000 (16:35 +0100)]
glxsb/nsclpcsio - cleanup

* Cleanup unused variables and incorrect includes.
* Add glxsb to sys/dev/crypto/Makefile.

9 years agoglxsb - Make it work for us
Alex Hornung [Fri, 2 Oct 2009 21:12:30 +0000 (22:12 +0100)]
glxsb - Make it work for us

9 years agoglxsb - Initial import from FreeBSD
Alex Hornung [Sat, 26 Sep 2009 19:48:20 +0000 (20:48 +0100)]
glxsb - Initial import from FreeBSD

Obtained-from: FreeBSD

9 years agokern_shutdown - Add led and wdog magic
Alex Hornung [Fri, 2 Oct 2009 21:14:01 +0000 (22:14 +0100)]
kern_shutdown - Add led and wdog magic

* If the relevant options are set, try to enable the 'error' led and
 disable the watchdog(s).

9 years agogeode/cs5536 - Add support for wdog/gpio/timers/identfication
Alex Hornung [Sun, 4 Oct 2009 12:09:57 +0000 (13:09 +0100)]
geode/cs5536 - Add support for wdog/gpio/timers/identfication

* Add drivers for geode lx and cs5536 chips to register watchdogs,
  timers and gpio these chips have.
* Add missing defines for the geode and cs5536 timers and pci device

Partially-Obtained-from: OpenBSD
Partially-Obtained-from: FreeBSD

9 years agopc32 identcpu - Detect Geode LX
Alex Hornung [Fri, 2 Oct 2009 21:03:28 +0000 (22:03 +0100)]
pc32 identcpu - Detect Geode LX

* Add identification of Geode LX CPUs.

Obtained-from: FreeBSD

9 years agopc32 bios - Add bios_oem_strings from FreeBSD
Alex Hornung [Fri, 2 Oct 2009 21:02:19 +0000 (22:02 +0100)]
pc32 bios - Add bios_oem_strings from FreeBSD

* Import bios_oem_strings to search for specific strings in the BIOS to
  identify vendors.

Obtained-from: FreeBSD

9 years agooptions/files - Add support for wdog, gpio, nsclpcsio
Alex Hornung [Fri, 2 Oct 2009 21:10:14 +0000 (22:10 +0100)]
options/files - Add support for wdog, gpio, nsclpcsio

* Add options and files support for wdog, gpio and nsclpcsio

9 years agonsclpcsio - make it work for us
Alex Hornung [Fri, 2 Oct 2009 21:11:08 +0000 (22:11 +0100)]
nsclpcsio - make it work for us

9 years agonsclpcsio - Initial import from OpenBSD
Alex Hornung [Sat, 26 Sep 2009 16:21:23 +0000 (17:21 +0100)]
nsclpcsio - Initial import from OpenBSD

Obtained-from: OpenBSD

9 years agogpio - gpio framework, initial commit
Alex Hornung [Sun, 4 Oct 2009 12:09:33 +0000 (13:09 +0100)]
gpio - gpio framework, initial commit

* Initial commit of the new gpio framework,including a sample gpio
  consumer driver, gpio_led.
  While the framework is not directly based on OpenBSD's, some
  structures and other similarities have been taken over to ease porting
  of gpio drivers from OpenBSD.

Partially-Obtained-from: OpenBSD

9 years agowdog - Watchdog framework, initial commit
Alex Hornung [Fri, 2 Oct 2009 20:59:22 +0000 (21:59 +0100)]
wdog - Watchdog framework, initial commit

* Initial commit of the new watchdog (wdog) framework.

9 years agodma: move config files to source directory
Simon Schubert [Sun, 4 Oct 2009 00:55:32 +0000 (02:55 +0200)]
dma: move config files to source directory

9 years agorelease engineering: DragonFly 2.5.1 v2.5.1
Simon Schubert [Sat, 3 Oct 2009 22:06:49 +0000 (00:06 +0200)]
release engineering: DragonFly 2.5.1

9 years agolarn(6): Remove some dead SYSV code.
Sascha Wildner [Sat, 3 Oct 2009 21:21:28 +0000 (23:21 +0200)]
larn(6): Remove some dead SYSV code.

Submitted-by: Ulrich Spoerlein <uqs@spoerlein.net>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue1550>

9 years agodma: add a plain Makefile for other systems
Simon Schubert [Sat, 3 Oct 2009 19:38:06 +0000 (21:38 +0200)]
dma: add a plain Makefile for other systems

Submitted-by: Michel Salim <salimma@fedoraproject.org>
9 years agodma: add DragonFly compat files
Simon Schubert [Sat, 3 Oct 2009 19:37:22 +0000 (21:37 +0200)]
dma: add DragonFly compat files

These are not used in DragonFly, but for compilation on other systems.

9 years agodma: don't use sockaddr_storage.ss_len
Simon Schubert [Sat, 3 Oct 2009 19:35:29 +0000 (21:35 +0200)]
dma: don't use sockaddr_storage.ss_len

sockaddr_storage.ss_len is not mandated by POSIX, so we shouldn't use
it.  Instead, use addrinfo.ai_addrlen.

9 years agodma: don't use __unused
Simon Schubert [Sat, 3 Oct 2009 19:32:07 +0000 (21:32 +0200)]
dma: don't use __unused

__unused avoids a gcc warning that the parameter is not being used, but
this does not exist in other systems or is overloaded with a different

Instead simply use a cast to (void) to silence gcc.

9 years agodma: sort includes
Simon Schubert [Sat, 3 Oct 2009 19:31:26 +0000 (21:31 +0200)]
dma: sort includes

9 years agodma: use st_mtim to make source more POSIXy
Simon Schubert [Sat, 3 Oct 2009 19:18:45 +0000 (21:18 +0200)]
dma: use st_mtim to make source more POSIXy

9 years agosys/stat.h: implement st_atim et al
Simon Schubert [Sat, 3 Oct 2009 19:41:51 +0000 (21:41 +0200)]
sys/stat.h: implement st_atim et al

SUS Issue 7 requires st_atim and friends, which were called st_atimespec
in BSD.  Rename the fields to match SUS and provide compat defines for
both st_atimespec etc (for BSD) and st_atime (for old SUS/POSIX).

Discussed-with:  beket@

9 years agoBring in a padlock(4) manual page and also sync crypto.4.
Sascha Wildner [Sat, 3 Oct 2009 20:22:30 +0000 (22:22 +0200)]
Bring in a padlock(4) manual page and also sync crypto.4.

Taken-from: FreeBSD

9 years agogcc44 warnings: Shift in order to fit in 8 bits.
Sascha Wildner [Sat, 3 Oct 2009 18:53:32 +0000 (20:53 +0200)]
gcc44 warnings: Shift in order to fit in 8 bits.

9 years agoamd64 - Add missing AMD64_CPU_FAMILY/MODEL
Alex Hornung [Sat, 3 Oct 2009 18:42:02 +0000 (19:42 +0100)]
amd64 - Add missing AMD64_CPU_FAMILY/MODEL

* Add missing AMD64_CPU_FAMILY and AMD64_CPU_MODEL and related stuff,
  requred by the recent identcpu magic for VIA processors.

Reported-by: YONETANI Tomokazu
Obtained-from: FreeBSD

9 years agotools/tools/crypto - Update from FreeBSD
Alex Hornung [Sat, 3 Oct 2009 15:56:41 +0000 (16:56 +0100)]
tools/tools/crypto - Update from FreeBSD

Obtained-from: FreeBSD

9 years agoamd64 - add kvtop and add back ed(4) to AMD64_GENERIC
YONETANI Tomokazu [Sat, 3 Oct 2009 10:19:08 +0000 (19:19 +0900)]
amd64 - add kvtop and add back ed(4) to AMD64_GENERIC

9 years agoamd64 - Add via variable decls to md_var.h
Alex Hornung [Sat, 3 Oct 2009 15:12:58 +0000 (16:12 +0100)]
amd64 - Add via variable decls to md_var.h

* Add extern decls of via_feature_rng and via_feature_xcrypt to pc64
  This should solve an issue when building crypto/via/padlock on amd64.

Dragonfly-bug: http://bugs.dragonflybsd.org/issue1553
Reported-By: Simon "corecode" Schubert
9 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Sat, 3 Oct 2009 00:16:52 +0000 (17:16 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

9 years agoNFS - Fix BIO size panics
Matthew Dillon [Sat, 3 Oct 2009 00:09:13 +0000 (17:09 -0700)]
NFS - Fix BIO size panics

* NFS calculates the BIO block size and stores it in mnt_stat.f_iosize.
  This field was getting overwritten with default values by STATFS
  being passing &mp->mnt_stat from the kernel.

  Conditionalize the field so it no longer gets overwritten, and also
  correct nm_rsize/nm_wsize tests to use the smaller of the two
  specifications for the BIO block size.

* Fixes diskless NFS root mounts, and NFS mounts which use smaller

Reported-by: Rumko <rumcic@gmail.com>, and others
9 years agohammer.sh: Adjust for devfs.
Sascha Wildner [Fri, 2 Oct 2009 23:23:12 +0000 (01:23 +0200)]
hammer.sh: Adjust for devfs.

9 years agovkernel - Fix build after recent crypto import when IPSEC is defined.
Matthew Dillon [Fri, 2 Oct 2009 22:59:51 +0000 (15:59 -0700)]
vkernel - Fix build after recent crypto import when IPSEC is defined.

9 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Fri, 2 Oct 2009 22:58:47 +0000 (15:58 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

9 years agovkernel - Fix FP corruption from preemptive thread switch
Matthew Dillon [Fri, 2 Oct 2009 22:53:17 +0000 (15:53 -0700)]
vkernel - Fix FP corruption from preemptive thread switch

* Recent work on the vkernel enabled preemptive interrupt thread switching.
  This introduced a race where the floating point state could change
  out from under the vkernel's go_user() function, causing the FP state
  in the virtual user process to become corrupt.

* Fixed by introducing a critical section which essentially defers any
  preemptive thread switches inside go_user().

Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
Test-cases-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
9 years agocrypto.9: Sync with FreeBSD's crypto(9) manual page.
Sascha Wildner [Fri, 2 Oct 2009 22:38:29 +0000 (00:38 +0200)]
crypto.9: Sync with FreeBSD's crypto(9) manual page.

Also fix prototypes and MLINKS.

Various parts of the page are still outdated, though.

9 years agotaskqueue - Beautify thread names
Alex Hornung [Fri, 2 Oct 2009 18:36:30 +0000 (19:36 +0100)]
taskqueue - Beautify thread names

* Beautify thread names by not printing _0 if only one thread for that
  taskqueue is being started/created.

9 years agotaskqueue - Mark taskq threads MPSAFE again
Alex Hornung [Fri, 2 Oct 2009 17:56:28 +0000 (18:56 +0100)]
taskqueue - Mark taskq threads MPSAFE again