dragonfly.git
14 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Tue, 15 Dec 2009 18:41:50 +0000 (10:41 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

14 years agoAdd -Werror to the kernel build.
Sascha Wildner [Tue, 15 Dec 2009 14:52:07 +0000 (15:52 +0100)]
Add -Werror to the kernel build.

* Add a new 'nowerror' keyword to config(8) for parsing the 'files' files.
  When specified, it will prevent the file from being compiled with
  -Werror.

  Note that files that have their own compile-with rules need "${WERROR}"
  added to get -Werror.

* Adjust all 'files' files accordingly: Set nowerror where we still warn
  (i386 or x86_64) and add "${WERROR}" to compile-with rules where it
  applies.

* Remove explicit -Werror-implicit-function-declaration setting as it is
  now useless (-Wimplicit-function-declaration is already part of -Wall).

You will need an updated config(8) (i.e., one that understands 'nowerror')
for this to work so don't forget to quick/buildworld before recompiling
the kernel. nativekernel users will have to update their host config(8).

NO_WERROR in /etc/make.conf applies here as well and turns off the setting
of -Werror for the kernel, too.

In-discussion-with: corecode, aggelos, and others

14 years agomp_machdep.c: Fix some warnings of the SMP without APIC_IO build.
Sascha Wildner [Tue, 15 Dec 2009 14:10:40 +0000 (15:10 +0100)]
mp_machdep.c: Fix some warnings of the SMP without APIC_IO build.

14 years agoLINT - clear a bunch of warnings
Alex Hornung [Tue, 15 Dec 2009 12:42:14 +0000 (12:42 +0000)]
LINT - clear a bunch of warnings

* Clear a bunch of warnings that appear when building LINT kernel.

14 years agoFix warning in the UP build.
Sascha Wildner [Tue, 15 Dec 2009 11:14:30 +0000 (12:14 +0100)]
Fix warning in the UP build.

14 years agokernel - Third time's the charm - move lwp_ucred to td_ucred
Matthew Dillon [Tue, 15 Dec 2009 08:24:00 +0000 (00:24 -0800)]
kernel - Third time's the charm - move lwp_ucred to td_ucred

* Easier access to the cached ucred via the thread structure instead of
  the lwp.

14 years agosavecore(8) - Update manpage
Alex Hornung [Tue, 15 Dec 2009 08:00:53 +0000 (08:00 +0000)]
savecore(8) - Update manpage

* Update savecore man page to reflect changes to the savecore utility itself.

Obtained-from: FreeBSD

14 years agokernel - Make adjustments to the per-lwp ucred
Matthew Dillon [Tue, 15 Dec 2009 04:40:54 +0000 (20:40 -0800)]
kernel - Make adjustments to the per-lwp ucred

* Rename lwp_syscall_ucred to lwp_ucred and move ucred synchronization
  from syscall2() to userenter().  It now runs on any user entry into
  the kernel, not just for system calls.

  NOTE: A VM fault from the kernel itself does not call userenter() and
        does not trigger another synchronization.  This is the behavior
we desire, to ensure that lwp_ucred is stable.

  There are numerous non-syscall cases (e.g. signal, fault, etc) where
  we may need to access a safe ucred.

* Remove the SMP conditional.  lwp_ucred is now tracked for both UP and SMP.
  There is no point optimizing this for UP since there is basically no cost
  for tracking lwp_ucred.

14 years agokernel - move proc->p_lock, add lwp ucred caching
Matthew Dillon [Tue, 15 Dec 2009 03:29:43 +0000 (19:29 -0800)]
kernel - move proc->p_lock, add lwp ucred caching

* Move p_lock out from the struct proc copy area, change it from a
  char to an int, and make PHOLD/PRELE MPSAFE.

* System calls now cache a read-only copy of p->p_ucred in
  lp->lwp_syscall_ucred.  This will be used by system call code
  to access the ucred in a MPSAFE manner.

14 years agovga(4): Simplify conditions for mode rejection somewhat.
Sascha Wildner [Mon, 14 Dec 2009 20:16:50 +0000 (21:16 +0100)]
vga(4): Simplify conditions for mode rejection somewhat.

When mapping the video parameter table to our mode_map, only reject modes
which are neither 40x25, 80x25 nor 80x30, instead of rejecting or accepting
the whole table based on comparing the initial mode's BIOS and power-up
register settings.

Add a VGA_KEEP_POWERON_MODE option which (when set) preserves the register
settings which were found for the initial mode upon power-on for switching
back to it (or some mode derived from it) from another mode. The power-on
settings are also taken for the initial mode in case the video parameter
table has no valid settings for it.

This is kinda similar to what's proposed in FreeBSD's kern/64114.

14 years agoperiodic - Don't include timestamps in e-mail output by default.
Joe Talbott [Mon, 14 Dec 2009 17:25:39 +0000 (12:25 -0500)]
periodic - Don't include timestamps in e-mail output by default.

14 years agoHAMMER Utility - fix unfreeable pointer in 'hammer info'
Matthew Dillon [Mon, 14 Dec 2009 16:30:08 +0000 (08:30 -0800)]
HAMMER Utility - fix unfreeable pointer in 'hammer info'

* Fix the construction of the mountedon variable to ensure the
  variable can be free()'d.

Reported-by: "Steve O'Hara-Smith" <steve@sohara.org>
Also-suggested-by: Antonio Huete Jimenez <ahuete.devel@gmail.com>
14 years agoHAMMER Utility - Fix seg-fault in hammer cleanup if blank lines in config
Matthew Dillon [Mon, 14 Dec 2009 16:01:57 +0000 (08:01 -0800)]
HAMMER Utility - Fix seg-fault in hammer cleanup if blank lines in config

* If the HAMMER config contained blank lines the hammer cleanup
  directive would seg-fault trying to parse it.

* Ignore blank lines.  Also ignore lines beginning with a '#' when
  parsing the config.

Reported-by: elekktretterr@exemail.com.au
14 years agosetlocale.3: Correct function name.
Sascha Wildner [Mon, 14 Dec 2009 04:37:36 +0000 (05:37 +0100)]
setlocale.3: Correct function name.

14 years agopnp.4: Comment out some docs (code either gone or #if 0'd).
Sascha Wildner [Mon, 14 Dec 2009 04:24:37 +0000 (05:24 +0100)]
pnp.4: Comment out some docs (code either gone or #if 0'd).

14 years agorman.9: Comment out documentation for rman_await_resource().
Sascha Wildner [Mon, 14 Dec 2009 03:38:51 +0000 (04:38 +0100)]
rman.9: Comment out documentation for rman_await_resource().

The code is #if 0'd too.

14 years agovcount.9: count_udev() no longer exists.
Sascha Wildner [Mon, 14 Dec 2009 03:27:35 +0000 (04:27 +0100)]
vcount.9: count_udev() no longer exists.

See aec8eea47f8acbdec20843e7d8e7bc6d4255cce3

14 years agopthread_rwlock_timedwrlock.3: Correct function name.
Sascha Wildner [Mon, 14 Dec 2009 03:06:04 +0000 (04:06 +0100)]
pthread_rwlock_timedwrlock.3: Correct function name.

14 years agosleep.9: Adjust for serialize_sleep() -> zsleep() rename.
Sascha Wildner [Mon, 14 Dec 2009 02:55:41 +0000 (03:55 +0100)]
sleep.9: Adjust for serialize_sleep() -> zsleep() rename.

See ed3f6624e9093425dd733be90efc696df86c9e0e

Also, sync the MLINKS with the manual page.

14 years agokernel - Move MP lock inward, plus misc other stuff
Matthew Dillon [Sun, 13 Dec 2009 20:19:30 +0000 (12:19 -0800)]
kernel - Move MP lock inward, plus misc other stuff

* Remove the MPSAFE flag from the syscalls.master file.  All system calls
  are now called without the MP lock held and will acquire the MP lock if
  necessary.

* Shift the MP lock inward.  Try to leave most copyin/copyout operations
  outside the MP lock.  Reorder some of the copyouts in the linux emulation
  code to suit.

  Kernel resource operations are MP safe.

  Process ucred access is now outside the MP lock but not quite MP safe
  yet (will be fixed in a followup).

* Remove unnecessary KKASSERT(p) calls left over from the time before
  system calls where prefixed with sys_*

* Fix a bunch of cases in the linux emulation code when setting groups
  where the ngrp range check is incorrect.

14 years agoRemove misleading comments
Michael Neumann [Sun, 13 Dec 2009 20:15:09 +0000 (21:15 +0100)]
Remove misleading comments

14 years agoHAMMER - Stabilize and refactor volume removal
Michael Neumann [Sun, 13 Dec 2009 18:56:55 +0000 (19:56 +0100)]
HAMMER - Stabilize and refactor volume removal

* Correctly handle already freed layer1 entries.
* Correclty avoid reallocation on the volume to be removed
  during reblocking.
* Erase volume header after removal so that trying to mount it
  afterwards will fail (otherwise mount will silently use it).

14 years agolibc: Some warning fixes.
Sascha Wildner [Sun, 13 Dec 2009 18:26:08 +0000 (19:26 +0100)]
libc: Some warning fixes.

14 years agoSync libc's un-namespace.h with namespace.h.
Sascha Wildner [Sun, 13 Dec 2009 16:19:57 +0000 (17:19 +0100)]
Sync libc's un-namespace.h with namespace.h.

14 years agoi386: sync k6_mem.c with FreeBSD
Alexander Polakov [Sat, 12 Dec 2009 10:10:39 +0000 (13:10 +0300)]
i386: sync k6_mem.c with FreeBSD

 * style(9)
 * replace strcmp() with cpu_vendor_id

14 years agoi386: sync i686_mem with FreeBSD
Alexander Polakov [Sat, 12 Dec 2009 09:33:21 +0000 (12:33 +0300)]
i386: sync i686_mem with FreeBSD

 * style cleanup
 * replace cpu_vendor with cpu_vendor_id
 * fix performance problem with some cpus
   (see http://svn.freebsd.org/viewvc/base?view=revision&revision=177125)
 * add constants for the various fields in MTRR registers
 * hide MTRR under bootverbose

14 years agoidentcpu.c: add PLCMULDQ, AES and VMM feature strings
Alexander Polakov [Sat, 12 Dec 2009 07:37:33 +0000 (10:37 +0300)]
identcpu.c: add PLCMULDQ, AES and VMM feature strings

14 years agoi386: sync identcpu with FreeBSD
Alexander Polakov [Sat, 12 Dec 2009 21:47:27 +0000 (00:47 +0300)]
i386: sync identcpu with FreeBSD

 * more feature strings
 * core/package detection (from x86_64)
 * replace cpu_vendor with cpu_vendor_id
 * move cpu identification variables declaration
   to initcpu.c

14 years agoHAMMER - Fix reblocking operation of volume removal
Michael Neumann [Sat, 12 Dec 2009 20:58:46 +0000 (21:58 +0100)]
HAMMER - Fix reblocking operation of volume removal

* Reblock everything
* Interruptable
* Sync before free L1/L2 entries (bigblocks might be reserved).
* Fix a bug (layer2->zone vs. layer2_zone)

14 years agoHAMMER VFS - Fix incorrect hammer_cursor_removed_node() call in btree_remove()
Matthew Dillon [Sat, 12 Dec 2009 18:50:22 +0000 (10:50 -0800)]
HAMMER VFS - Fix incorrect hammer_cursor_removed_node() call in btree_remove()

* hammer_cursor_removed_node() was being called on the wrong node.  This
  fixes a parent != NULL assertion later on.

* There is still at least one known issue where btree_iterate can panic
  due to a cursor tracking issue that has not yet been located.

14 years agoHAMMER - Fix panic when removing volume
Michael Neumann [Sat, 12 Dec 2009 13:02:03 +0000 (14:02 +0100)]
HAMMER - Fix panic when removing volume

* unload buffers before unloading volume

* fix missing call to hammer_rel_volume() which lead to
  kernel panic upon umount

14 years agoRemove inclusion of <sys/cdefs.h> from kernel .c files.
Sascha Wildner [Sat, 12 Dec 2009 12:05:15 +0000 (13:05 +0100)]
Remove inclusion of <sys/cdefs.h> from kernel .c files.

They are not needed and mostly leftovers from former __FBSDID and the
likes.

Also add some missing CVS ids to the comments.

14 years agoHAMMER - Stabilize volume removal
Michael Neumann [Sat, 12 Dec 2009 01:25:41 +0000 (02:25 +0100)]
HAMMER - Stabilize volume removal

* assert that L1 entries point to the volume

* don't leave the volume in an inconsistent state
  if it is not completely empty.

14 years agoFix typo
Michael Neumann [Sat, 12 Dec 2009 00:02:39 +0000 (01:02 +0100)]
Fix typo

14 years agoHAMMER - Fix umount flushing issue for volume-add/del
Michael Neumann [Sat, 12 Dec 2009 00:00:22 +0000 (01:00 +0100)]
HAMMER - Fix umount flushing issue for volume-add/del

Only changes to the header of the root volume are automatically
flushed to disk, changes to headers of other volumes not. Do it
manually.

14 years agoAdd hotplugd options to the default rc.conf and rc.conf.5.
Sascha Wildner [Fri, 11 Dec 2009 23:39:31 +0000 (00:39 +0100)]
Add hotplugd options to the default rc.conf and rc.conf.5.

14 years agoHAMMER - Implement experimental volume removal
Michael Neumann [Fri, 11 Dec 2009 21:59:21 +0000 (22:59 +0100)]
HAMMER - Implement experimental volume removal

A volume other than the root volume can be removed with:

    hammer volume-del device filesystem

WARNING: Experimental!

14 years agoKill T/TCP
Aggelos Economopoulos [Thu, 10 Dec 2009 19:36:55 +0000 (21:36 +0200)]
Kill T/TCP

T/TCP has serious security issues by design and has not
found widespread usage. Keeping it around is also a
maintenance burden.

14 years agotop - bring in "pid" sort order from freebsd module (N-KEY and option -o "pid").
Jan Lentfer [Thu, 10 Dec 2009 14:02:12 +0000 (15:02 +0100)]
top - bring in "pid" sort order from freebsd module (N-KEY and option -o "pid").
    - rework pointer casts in compare_* functions after netbsd module's pattern.

14 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Jan Lentfer [Thu, 10 Dec 2009 11:51:01 +0000 (12:51 +0100)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

14 years agomake.conf and make.conf.5: Remove obsolete TOP_TABLE_SIZE option.
Jan Lentfer [Thu, 10 Dec 2009 11:49:00 +0000 (12:49 +0100)]
make.conf and make.conf.5: Remove obsolete TOP_TABLE_SIZE option.

14 years agohotplug.4 & hotplugd.8: Some mdoc cleanup.
Sascha Wildner [Thu, 10 Dec 2009 08:58:15 +0000 (09:58 +0100)]
hotplug.4 & hotplugd.8: Some mdoc cleanup.

14 years agoRename "hammer expand" to "hammer volume-add"
Michael Neumann [Wed, 9 Dec 2009 22:34:18 +0000 (23:34 +0100)]
Rename "hammer expand" to "hammer volume-add"

Also rename the ioctl interface function accordingly.

NOTE:

  hammer expand fs device

changed to:

  hammer volume-add device fs

14 years agoFix argument order for netmsg_init().
Sascha Wildner [Wed, 9 Dec 2009 11:36:44 +0000 (12:36 +0100)]
Fix argument order for netmsg_init().

14 years agoActually hook hotplug.4 into the build.
Sascha Wildner [Wed, 9 Dec 2009 09:58:19 +0000 (10:58 +0100)]
Actually hook hotplug.4 into the build.

14 years agotop - enable full command line display.
Jan Lentfer [Tue, 8 Dec 2009 15:30:41 +0000 (16:30 +0100)]
top - enable full command line display.

14 years agoFix LINT kernel build.
Sascha Wildner [Tue, 8 Dec 2009 07:55:53 +0000 (08:55 +0100)]
Fix LINT kernel build.

Specifically, building with IPDIVERT & SMP was broken.

14 years agohammer: update Version 4 description
Thomas Nikolajsen [Mon, 7 Dec 2009 22:39:09 +0000 (23:39 +0100)]
hammer: update Version 4 description

14 years agoHAMMER VFS - Fix WIP
Matthew Dillon [Mon, 7 Dec 2009 19:59:10 +0000 (11:59 -0800)]
HAMMER VFS - Fix WIP

* Change WIP to 5 so hammer version-upgrade doesn't complain when upgrading
  to version 4 (which is no longer WIP).

Reported-by: Johannes Hofmann
14 years agoHAMMER Utility - Allow expanding root filesystems again
Michael Neumann [Mon, 7 Dec 2009 17:51:54 +0000 (18:51 +0100)]
HAMMER Utility - Allow expanding root filesystems again

This reverts commit e3102897c486b844e6a59e419e7e98a0d1ca3246, because
as of commit 104cb849cad1c21c8929f73d7654e16c4fb8a268, multi-volume
HAMMER root-mounts should work.

Please note that "hammer expand" is still considered EXPERIMENTAL.

14 years agoHAMMER - Implement multi-volume root mounts
Michael Neumann [Mon, 7 Dec 2009 17:18:45 +0000 (18:18 +0100)]
HAMMER - Implement multi-volume root mounts

14 years agodump - Unbreak VKERNELs
Alex Hornung [Mon, 7 Dec 2009 10:48:29 +0000 (10:48 +0000)]
dump - Unbreak VKERNELs

* VKERNELs don't support dumping, so add a dummy dumpsys() to indicate this
  on VKERNELs.

* hence also don't allocate vm_page_dump.

Reported-by: Simon "corecode" Schubert
14 years agotop(1): Remove top.x from CLEANFILES, since it's not generated.
Sascha Wildner [Mon, 7 Dec 2009 10:16:18 +0000 (11:16 +0100)]
top(1): Remove top.x from CLEANFILES, since it's not generated.

14 years agoHAMMER Utility - Refuse to expand the root filesystem
Matthew Dillon [Mon, 7 Dec 2009 06:56:30 +0000 (22:56 -0800)]
HAMMER Utility - Refuse to expand the root filesystem

* Refuse to expand a HAMMER filesystem mounted as the root filesystem.
  The DragonFly kernel is currently not able to mount a multi-volume
  HAMMER root.

Reported-by: Jan Lentfer <Jan.Lentfer@web.de>
14 years agoHAMMER Utility - Add -p <ssh-port> option
Matthew Dillon [Mon, 7 Dec 2009 04:28:36 +0000 (20:28 -0800)]
HAMMER Utility - Add -p <ssh-port> option

* Allows the ssh port for remote specification to be specified.  This
  option is passed as '-p <ssh-port>' to ssh invocations.

14 years agoloader.8: Bump .Dd and fix a manlint warning.
Sascha Wildner [Mon, 7 Dec 2009 02:26:30 +0000 (03:26 +0100)]
loader.8: Bump .Dd and fix a manlint warning.

14 years agoClean up BIND upgrade.
Sascha Wildner [Mon, 7 Dec 2009 02:09:43 +0000 (03:09 +0100)]
Clean up BIND upgrade.

Remove some auto-generated files which were accidentally added.

14 years agolibkvm - Update for new dumps & minidumps
Alex Hornung [Sun, 6 Dec 2009 19:57:03 +0000 (19:57 +0000)]
libkvm - Update for new dumps & minidumps

* Update libkvm so it will work with the new-style dumps and minidumps.

* If the ELF header of a core dump is not valid, assume it's an old style
  dump. This way we can still read old-style dumps after this update.

Obtained-from: FreeBSD

14 years agosavecore - Update savecore to work with new dumps/minidumps
Alex Hornung [Sun, 6 Dec 2009 19:55:51 +0000 (19:55 +0000)]
savecore - Update savecore to work with new dumps/minidumps

* Update savecore so it can save the new ELF dumps and minidumps.

Obtained-from: FreeBSD

14 years agodump - Make use of the new dumping
Alex Hornung [Sun, 6 Dec 2009 19:52:58 +0000 (19:52 +0000)]
dump - Make use of the new dumping

* Adapt our dumping infrastructure to the new dump type.

* Update all disk/raid dump methods (except aac) to work with the new
  dumps. These now don't take matters into their own hands and just write
  what they are told to.

14 years agodump - Bring in FreeBSD's dumping (new dumps & minidumps)
Alex Hornung [Sun, 6 Dec 2009 19:48:53 +0000 (19:48 +0000)]
dump - Bring in FreeBSD's dumping (new dumps & minidumps)

* Bring in FreeBSD's dumps and minidumps, which use an ELF header instead of
  a raw dump.

* Adapt to our needs by, for example, saving the dumppcb and dumpthread.

Obtained-from: FreeBSD

14 years agopmap - Change pmap_map syntaxis
Alex Hornung [Sun, 6 Dec 2009 19:44:26 +0000 (19:44 +0000)]
pmap - Change pmap_map syntaxis

* Change pmap_map syntaxis to take a pointer to vm_offset_t, so the vaddr is
  modified when memory is mapped.

* Hence also don't return the modified vaddr, but rather return the mapped
  memory.

* This unifies the syntax for the different platforms, as on amd64, pmap_map
  returned the mapped area, instead of the changed vaddr.

* Modify vm_page.c accordingly, and also set aside some memory that minidumps
  need.

14 years agolentferj - commit test.
Jan Lentfer [Sun, 6 Dec 2009 09:33:44 +0000 (10:33 +0100)]
lentferj - commit test.

14 years agonetwork - Fix SMP build
Sascha Wildner [Sun, 6 Dec 2009 07:55:00 +0000 (08:55 +0100)]
network - Fix SMP build

Reported-by: lentferj
14 years agonetwork - Fix UP build
Matthew Dillon [Sun, 6 Dec 2009 05:54:39 +0000 (21:54 -0800)]
network - Fix UP build

Reported-by: Sascha Wildner <saw@online.de>
14 years agonetwork - Move socket from netmsg ext to netmsg header, add port to socket
Matthew Dillon [Sat, 5 Dec 2009 19:45:34 +0000 (11:45 -0800)]
network - Move socket from netmsg ext to netmsg header, add port to socket

These changes should make it easier to debug mbufs routed to the wrong
protocol threads.  Note that IPV6 is routed to netisr0, even for tcp and udp
packets, so for now we do not KKASSERT that the port matches directly.

The TCP code still KKASSERTs that the timers are running on the correct cpu,
since the cpu is still correct for IPV6 TCP/UDP packets even when the
protocol thread is wrong (netisr_cpu 0 instead of tcp_thread 0 or
udp_thread 0).

* Instead of recalculating the port based on the inp or mbuf all the time,
  add a so_port field to the socket structure directly.

* The socket pointer is now part of the netmsg header, even though some
  subsystems do not need it.  This allows us to validate the message port
  more easily.

14 years agodevelopment.7: Add style(9) xref and a pointer to dragonfly.el.
Sascha Wildner [Sat, 5 Dec 2009 19:37:22 +0000 (20:37 +0100)]
development.7: Add style(9) xref and a pointer to dragonfly.el.

14 years agoMove tools/tools/editing/dragonfly.el to share/misc.
Sascha Wildner [Sat, 5 Dec 2009 19:30:33 +0000 (20:30 +0100)]
Move tools/tools/editing/dragonfly.el to share/misc.

14 years agoAdd a profile for indent(1) which matches our style quite well.
Sascha Wildner [Sat, 5 Dec 2009 18:51:28 +0000 (19:51 +0100)]
Add a profile for indent(1) which matches our style quite well.

Adapted-from: NetBSD

14 years agoClean up some Makefiles (let the user decide which options they want).
Sascha Wildner [Sat, 5 Dec 2009 18:14:19 +0000 (19:14 +0100)]
Clean up some Makefiles (let the user decide which options they want).

14 years agoMerge commit 'lentferj/top_update'
Aggelos Economopoulos [Sat, 5 Dec 2009 17:57:01 +0000 (19:57 +0200)]
Merge commit 'lentferj/top_update'

14 years agotop - correctly prototype compare_* functions. Remove debug option from Makefile.
Jan Lentfer [Sat, 5 Dec 2009 17:41:19 +0000 (18:41 +0100)]
top - correctly prototype compare_* functions. Remove debug option from Makefile.

14 years agoHAMMER VFS - Change default from version 3 to version 4
Matthew Dillon [Sat, 5 Dec 2009 17:20:27 +0000 (09:20 -0800)]
HAMMER VFS - Change default from version 3 to version 4

* Version 4 is now the default for newfs_hammer and is no longer
  considered a work in progress.

* Filesystems may be upgraded to version 4 in-place.  The UNDO FIFO
  (typically 1G) is reformatted so the upgrade might take a minute or
  two depending.

* Version 4 allows the UNDO FIFO to be flushed without also having
  to flush the volume header, removing 2 of the 4 disk syncs typically
  required for an fsync() and removing 1 of the 2 disk syncs typically
  required for a flush sequence.

  This is accomplished by adding a sequence number of the UNDO entries
  in the FIFO and preventing them from crossing a 512-byte boundary,
  so each 512-byte block starts with an entry.  HAMMER's mount code
  is then able to scan the UNDO FIFO to determine the start and end
  for recovery purposes.

* Version 4 implements the infrastructure needed for REDO, but does not
  implement any REDO operations.

14 years agotop - style cleanup and removal of unnecessary code
Jan Lentfer [Sat, 5 Dec 2009 16:58:45 +0000 (17:58 +0100)]
top - style cleanup and removal of unnecessary code

14 years agoImport hotplugd(8) from OpenBSD.
Alexander Polakov [Fri, 4 Dec 2009 22:32:26 +0000 (01:32 +0300)]
Import hotplugd(8) from OpenBSD.

14 years agoImport hotplug(4) pseudo-device.
Alexander Polakov [Fri, 4 Dec 2009 21:43:14 +0000 (00:43 +0300)]
Import hotplug(4) pseudo-device.

Obtained-from: OpenBSD.

14 years agokernel - Fix recursive lockmgr lock panic when creating a hardlink
Matthew Dillon [Fri, 4 Dec 2009 22:32:48 +0000 (14:32 -0800)]
kernel - Fix recursive lockmgr lock panic when creating a hardlink

* HAMMER uses non-recursive vnode locks.  Fix a case where attempting
  to hardlink A to B where both already exist and point to the same
  inode can result in a panic if B is not in the namecache.

  HAMMER must temporarily lock the vnode it returns in the resolver
  and kern_link() was already holding A locked.  This all occurs
  before kern_link() is able to check whether A and B are the same
  so it can't be avoided.

  Solve the problem by unlocking A while resolving B.

Reported-by: Goetz Isenmann <info@goetz-isenmann.de>
14 years agoMerge commit 'lentferj/top_update'
Aggelos Economopoulos [Fri, 4 Dec 2009 22:27:49 +0000 (00:27 +0200)]
Merge commit 'lentferj/top_update'

14 years agotop - Import DragonFly specific patches for 3.8beta1.
Jan Lentfer [Fri, 4 Dec 2009 21:21:59 +0000 (22:21 +0100)]
top - Import DragonFly specific patches for 3.8beta1.
       * fix commands.c renice function to prevent segfault on wrong number of parameters.

14 years agoHAMMER VFS - Fix bug in statvfs()
Matthew Dillon [Thu, 3 Dec 2009 23:13:02 +0000 (15:13 -0800)]
HAMMER VFS - Fix bug in statvfs()

* statvfs() had a coding error which caused it to return 0 free space
  until the first statfs() call was made.

Reported-by: Johannes Hofmann <johannes.hofmann@gmx.de>
14 years agosysperf /call-loop test - Ensure the nop() call is not optimized out
Matthew Dillon [Thu, 3 Dec 2009 23:11:47 +0000 (15:11 -0800)]
sysperf /call-loop test - Ensure the nop() call is not optimized out

14 years agovkernel test - Add a NFS root / boot feature to the vkernel test environment
Matthew Dillon [Thu, 3 Dec 2009 23:09:12 +0000 (15:09 -0800)]
vkernel test - Add a NFS root / boot feature to the vkernel test environment

* Add a NFS root / boot feature to the vkernel test environment.  By
  default set IP to 10.0.0.53 and mount the root from 10.0.0.1:/netboot2,
  using overridable make variables.

14 years agohammer utility - minor adjustment to snaprm
Matthew Dillon [Thu, 3 Dec 2009 23:04:25 +0000 (15:04 -0800)]
hammer utility - minor adjustment to snaprm

* Allow the removal of snapshots with a transaction id of 0.  Such
  snapshots are a degenerate case which can occur only during testing.

14 years agoadventure(6): Fix saving games on x86_64.
Sascha Wildner [Thu, 3 Dec 2009 22:56:44 +0000 (23:56 +0100)]
adventure(6): Fix saving games on x86_64.

Submitted-by: tuxillo
14 years agocxm_extract_fw(8): Fix indent.
Sascha Wildner [Thu, 3 Dec 2009 21:12:14 +0000 (22:12 +0100)]
cxm_extract_fw(8): Fix indent.

14 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Thu, 3 Dec 2009 20:59:32 +0000 (12:59 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

14 years agocpdup - Multiple additions, fixes, and one removal
Matthew Dillon [Thu, 3 Dec 2009 20:55:24 +0000 (12:55 -0800)]
cpdup - Multiple additions, fixes, and one removal

* Make -x/-X (cpignore) work with remote sources.

* Add Makefile hack for _ST_FLAGS_PRESENT_ on FreeBSD.

* Suppress "Handshaked with <host>" and "Not running as root"
  messages when the -q option was specified.

* Mount points are now skipped completely.  (Before this,
  the directories and .cpignore inside them were still read.)

* Extract scanning directories (src and dst) from DoCopy() into
  a function ScanDir(), and use ScanDir() for both src and dst.

* Remove threads support.  It never worked very well and is
  getting in the way of new development.  The intention is to
  develop a more efficient pipelined algorithm in the future
  which does not require threading the program.

* Use getopt(3) instead of non-standard parser, making sure
  that all options still work exactly as documented in the
  manual page.

* Use fnmatch(3) instead of WildCmp(), adding support for
  bracket expressions (e.g. [xyz0-9]) and escaping (e.g. foo\*).
  I also suspect that fnmatch() is more efficient.

* Use the same syntax for remote paths as scp(1), so local paths
  that contain colons can be specified (e.g. "./foo:bar");
  extract that code into its own function SplitRemote().

* Add protocol commands hc_geteuid() and hc_getgroups().
  Use them to properly check permissions for various operations
  that would require root privileges on the target machine.

* Bugfix:  If a symlink already existed on the target but the
  owner/group didn't match, cpdup missed to update it.
  Added a call to hc_lchown() to fix that, if privileges allow.

* Bugfix:  The dispatch[] array wasn't initialized, so the slave
  crashed upon an unknown command instead of calling rc_badop().

* Bump protocol version to 3 in order to be able to maintain
  backwards compatibility with older clients.

* Bump utility version to 1.16.

* Make the source compile with WARNS=6.
  It still doesn't pass -ansi -pedantic, though.  :-)

* Document -j0, -k and -K in usage message (misc.c).

* Update the manual page, fix mdoc markup and various details.

* Add "ssh security tips" section to the BACKUPS text file.

Submitted-by: Oliver Fromme <olli@fromme.com>
14 years agocxm_extract_fw.8: Small mdoc correction.
Sascha Wildner [Thu, 3 Dec 2009 20:54:38 +0000 (21:54 +0100)]
cxm_extract_fw.8: Small mdoc correction.

14 years agoMerge commit 'lentferj/bind_vendor2'
Aggelos Economopoulos [Thu, 3 Dec 2009 16:44:00 +0000 (18:44 +0200)]
Merge commit 'lentferj/bind_vendor2'

14 years agobind - Changed bind dependend Makefiles to fit to new contrib/bind without version...
Jan Lentfer [Thu, 3 Dec 2009 14:24:20 +0000 (15:24 +0100)]
bind - Changed bind dependend Makefiles to fit to new contrib/bind without version tag.

14 years agoMerge branch 'vendor/BIND' into bind_vendor2
Jan Lentfer [Thu, 3 Dec 2009 14:22:11 +0000 (15:22 +0100)]
Merge branch 'vendor/BIND' into bind_vendor2

14 years agobind - Removed version tag from contrib directory and updated README.DRAGONFLY.
Jan Lentfer [Thu, 3 Dec 2009 13:46:20 +0000 (14:46 +0100)]
bind - Removed version tag from contrib directory and updated README.DRAGONFLY.

14 years agoMerge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Wed, 2 Dec 2009 22:08:08 +0000 (14:08 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly

14 years agoUnbreak ptrace on x86_64
Aggelos Economopoulos [Tue, 1 Dec 2009 12:46:09 +0000 (14:46 +0200)]
Unbreak ptrace on x86_64

The asm code was calling __tls_get_addr in order to set errno to 0
before the system call and that was trashing registers holding the
syscall arguments. Don't bother setting errno to 0 anymore (the
in-tree users are careful to set that themselves when appropriate).
While here, declare it properly as a weak symbol. At this point we
could just drop the hand-written assembly.

Proxies-to-x86_64-dfly: Antonio Huete Jimenez, Jan Lentfer
Dragonfly-bug: http://bugs.dragonflybsd.org/issue1571

14 years agoRegenerate the pciconf(8) database
Sascha Wildner [Tue, 1 Dec 2009 11:29:58 +0000 (12:29 +0100)]
Regenerate the pciconf(8) database

...from the following files:

Hart:    Jan 22, 2008 (version 671)
Boemler: Dev  1, 2009
Mares:   Nov 23, 2009

14 years agotop - Import 3.8beta1 sources into new vendor/TOP branch.
Jan Lentfer [Sat, 28 Nov 2009 19:16:07 +0000 (20:16 +0100)]
top - Import 3.8beta1 sources into new vendor/TOP branch.

14 years agotop - Remove contrib/top from base in perparation of update.
Jan Lentfer [Sat, 28 Nov 2009 18:44:54 +0000 (19:44 +0100)]
top - Remove contrib/top from base in perparation of update.

14 years agolibm: Fix typos in Makefile comments.
Stathis Kamperis [Sat, 28 Nov 2009 15:34:07 +0000 (17:34 +0200)]
libm: Fix typos in Makefile comments.

14 years agolibm: Import nearbyint{,f}() functions from FreeBSD.
Stathis Kamperis [Sat, 28 Nov 2009 12:28:58 +0000 (14:28 +0200)]
libm: Import nearbyint{,f}() functions from FreeBSD.

nearbyintl() requires rintl() which we currently miss.

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

14 years agocpdup - Fix the sense of a uid check when files are otherwise identical
Matthew Dillon [Sat, 28 Nov 2009 04:09:05 +0000 (20:09 -0800)]
cpdup - Fix the sense of a uid check when files are otherwise identical

* Fix the sense of a uid check when files are otherwise identical
  (Oliver).

* Also slightly reduce network overhead by removing unnecessary chflags
  calls when running as a user and the only differences are in the
  root-only chflags bits (Matt).

Submitted-by: Oliver Fromme <olli@fromme.com> (RunningAsRoot fix)