Michael Neumann [Tue, 15 Dec 2009 20:43:59 +0000 (21:43 +0100)]
nata modularization - Revert driver name to "atapci"
Revert commit
99a52ccedea1ec01bedf00c1aef36a327192023b.
Michael Neumann [Tue, 15 Dec 2009 18:17:26 +0000 (19:17 +0100)]
nata modularization - rename sii to siliconimage
Michael Neumann [Tue, 15 Dec 2009 18:07:28 +0000 (19:07 +0100)]
nata modularization - move #defines into drivers
Michael Neumann [Tue, 15 Dec 2009 17:52:49 +0000 (18:52 +0100)]
nata modularization - move #defines into drivers
Michael Neumann [Tue, 15 Dec 2009 17:23:26 +0000 (18:23 +0100)]
nata modularization - use correct driver name
Michael Neumann [Tue, 15 Dec 2009 17:06:20 +0000 (18:06 +0100)]
nata modularization - Let each driver probe itself
Every specific chipset is now implemented as a separate driver.
If none matches the generic atapci driver provides a fallback.
Michael Neumann [Tue, 15 Dec 2009 16:23:02 +0000 (17:23 +0100)]
nata modularization - Add missing file (AMD)D)
Michael Neumann [Tue, 15 Dec 2009 12:53:55 +0000 (13:53 +0100)]
nata modularization - VIA
Michael Neumann [Tue, 15 Dec 2009 12:49:30 +0000 (13:49 +0100)]
nata modularization - Silicon Integrated Systems (SiS)
Michael Neumann [Tue, 15 Dec 2009 12:46:26 +0000 (13:46 +0100)]
nata modularization - Silicon Image Inc.
Michael Neumann [Tue, 15 Dec 2009 12:41:53 +0000 (13:41 +0100)]
nata modularization - ServerWorks
Michael Neumann [Tue, 15 Dec 2009 12:38:39 +0000 (13:38 +0100)]
nata modularization - Promise
Michael Neumann [Tue, 15 Dec 2009 12:30:22 +0000 (13:30 +0100)]
nata modularization - nVidia
Michael Neumann [Tue, 15 Dec 2009 12:27:26 +0000 (13:27 +0100)]
nata modularization - NetCell
Michael Neumann [Tue, 15 Dec 2009 12:23:02 +0000 (13:23 +0100)]
nata modularization - National
Michael Neumann [Tue, 15 Dec 2009 12:10:22 +0000 (13:10 +0100)]
nata modularization - Marvell
Michael Neumann [Tue, 15 Dec 2009 12:05:16 +0000 (13:05 +0100)]
nata modularization - JMicron
Michael Neumann [Tue, 15 Dec 2009 12:01:25 +0000 (13:01 +0100)]
nata modularization - ITE
Michael Neumann [Tue, 15 Dec 2009 11:57:30 +0000 (12:57 +0100)]
nata modularization - Intel
Michael Neumann [Tue, 15 Dec 2009 11:52:25 +0000 (12:52 +0100)]
nata modularization - Highpoint
Michael Neumann [Tue, 15 Dec 2009 11:48:40 +0000 (12:48 +0100)]
nata modularization - Cypress
Michael Neumann [Tue, 15 Dec 2009 11:44:22 +0000 (12:44 +0100)]
nata modularization - Cyrix
Michael Neumann [Mon, 14 Dec 2009 18:26:57 +0000 (19:26 +0100)]
nata modularization - ATI
Michael Neumann [Mon, 14 Dec 2009 18:16:43 +0000 (19:16 +0100)]
nata modularization - AMD
Michael Neumann [Mon, 14 Dec 2009 18:07:07 +0000 (19:07 +0100)]
nata modularization - fix copy&paste typo
Michael Neumann [Mon, 14 Dec 2009 18:06:08 +0000 (19:06 +0100)]
nata modularization - AHCI
Michael Neumann [Mon, 14 Dec 2009 17:37:21 +0000 (18:37 +0100)]
nata modularization - Acerlabs (Ali)
Michael Neumann [Mon, 14 Dec 2009 17:17:34 +0000 (18:17 +0100)]
nata modularization - Acard
Michael Neumann [Mon, 14 Dec 2009 16:54:33 +0000 (17:54 +0100)]
nata modularization - unstaticize common functionality
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
Sascha Wildner [Mon, 14 Dec 2009 04:37:36 +0000 (05:37 +0100)]
setlocale.3: Correct function name.
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).
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.
Sascha Wildner [Mon, 14 Dec 2009 03:27:35 +0000 (04:27 +0100)]
vcount.9: count_udev() no longer exists.
See
aec8eea47f8acbdec20843e7d8e7bc6d4255cce3
Sascha Wildner [Mon, 14 Dec 2009 03:06:04 +0000 (04:06 +0100)]
pthread_rwlock_timedwrlock.3: Correct function name.
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.
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.
Michael Neumann [Sun, 13 Dec 2009 20:15:09 +0000 (21:15 +0100)]
Remove misleading comments
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).
Sascha Wildner [Sun, 13 Dec 2009 18:26:08 +0000 (19:26 +0100)]
libc: Some warning fixes.
Sascha Wildner [Sun, 13 Dec 2009 16:19:57 +0000 (17:19 +0100)]
Sync libc's un-namespace.h with namespace.h.
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
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
Alexander Polakov [Sat, 12 Dec 2009 07:37:33 +0000 (10:37 +0300)]
identcpu.c: add PLCMULDQ, AES and VMM feature strings
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
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)
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.
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
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.
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.
Michael Neumann [Sat, 12 Dec 2009 00:02:39 +0000 (01:02 +0100)]
Fix typo
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.
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.
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!
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.
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.
Jan Lentfer [Thu, 10 Dec 2009 11:51:01 +0000 (12:51 +0100)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
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.
Sascha Wildner [Thu, 10 Dec 2009 08:58:15 +0000 (09:58 +0100)]
hotplug.4 & hotplugd.8: Some mdoc cleanup.
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
Sascha Wildner [Wed, 9 Dec 2009 11:36:44 +0000 (12:36 +0100)]
Fix argument order for netmsg_init().
Sascha Wildner [Wed, 9 Dec 2009 09:58:19 +0000 (10:58 +0100)]
Actually hook hotplug.4 into the build.
Jan Lentfer [Tue, 8 Dec 2009 15:30:41 +0000 (16:30 +0100)]
top - enable full command line display.
Sascha Wildner [Tue, 8 Dec 2009 07:55:53 +0000 (08:55 +0100)]
Fix LINT kernel build.
Specifically, building with IPDIVERT & SMP was broken.
Thomas Nikolajsen [Mon, 7 Dec 2009 22:39:09 +0000 (23:39 +0100)]
hammer: update Version 4 description
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
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.
Michael Neumann [Mon, 7 Dec 2009 17:18:45 +0000 (18:18 +0100)]
HAMMER - Implement multi-volume root mounts
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
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.
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>
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.
Sascha Wildner [Mon, 7 Dec 2009 02:26:30 +0000 (03:26 +0100)]
loader.8: Bump .Dd and fix a manlint warning.
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.
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
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
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.
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
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.
Jan Lentfer [Sun, 6 Dec 2009 09:33:44 +0000 (10:33 +0100)]
lentferj - commit test.
Sascha Wildner [Sun, 6 Dec 2009 07:55:00 +0000 (08:55 +0100)]
network - Fix SMP build
Reported-by: lentferj
Matthew Dillon [Sun, 6 Dec 2009 05:54:39 +0000 (21:54 -0800)]
network - Fix UP build
Reported-by: Sascha Wildner <saw@online.de>
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.
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.
Sascha Wildner [Sat, 5 Dec 2009 19:30:33 +0000 (20:30 +0100)]
Move tools/tools/editing/dragonfly.el to share/misc.
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
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).
Aggelos Economopoulos [Sat, 5 Dec 2009 17:57:01 +0000 (19:57 +0200)]
Merge commit 'lentferj/top_update'
Jan Lentfer [Sat, 5 Dec 2009 17:41:19 +0000 (18:41 +0100)]
top - correctly prototype compare_* functions. Remove debug option from Makefile.
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.
Jan Lentfer [Sat, 5 Dec 2009 16:58:45 +0000 (17:58 +0100)]
top - style cleanup and removal of unnecessary code
Alexander Polakov [Fri, 4 Dec 2009 22:32:26 +0000 (01:32 +0300)]
Import hotplugd(8) from OpenBSD.
Alexander Polakov [Fri, 4 Dec 2009 21:43:14 +0000 (00:43 +0300)]
Import hotplug(4) pseudo-device.
Obtained-from: OpenBSD.
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>
Aggelos Economopoulos [Fri, 4 Dec 2009 22:27:49 +0000 (00:27 +0200)]
Merge commit 'lentferj/top_update'
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.
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>
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
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.
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.