Matthew Dillon [Sat, 12 Jun 2010 04:32:10 +0000 (21:32 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Sat, 12 Jun 2010 04:31:08 +0000 (21:31 -0700)]
top - Fix seg-fault when window made very wide
* Fix a static buffer overflow when the window is made very wide.
Taken-from: NetBSD
Submitted-by: Trevor Kendall
Sascha Wildner [Sat, 12 Jun 2010 03:07:57 +0000 (05:07 +0200)]
Run makewhatis(8) after 'make upgrade' instead of after 'make installworld'.
'make upgrade' does (among other things) remove obsolete manual pages. If
makewhatis(8) is run after 'make installworld' (i.e. before upgrade), the
whatis database will still contain them. Therefore, run makewhatis(8)
after 'make upgrade' when the removals are done.
Pointed-out-by: tuxillo
While here, clean up the upgrade target in /usr/src/Makefile a little bit.
Matthew Dillon [Sat, 12 Jun 2010 00:20:11 +0000 (17:20 -0700)]
kernel - add lockowned()
* Add a simple function which returns TRUE if a lockmgr lock is likely
owned by the caller. Shared lock ownership can only be approximated.
Designed for use in assertions.
Joe Talbott [Fri, 11 Jun 2010 18:02:03 +0000 (14:02 -0400)]
ieee80211_ioctl - Replace free() calls with kfree().
Joe Talbott [Fri, 11 Jun 2010 17:48:45 +0000 (13:48 -0400)]
wlan - Bring in some fixes from FreeBSD.
Joe Talbott [Wed, 2 Jun 2010 17:40:50 +0000 (13:40 -0400)]
ralfw - Add firmware for ral(4)
Taken-From: FreeBSD
Sascha Wildner [Fri, 11 Jun 2010 17:25:19 +0000 (19:25 +0200)]
Remove the no longer used CY_PCI_FASTINTR and PUC_FASTINTR kernel options.
Venkatesh Srinivas [Thu, 10 Jun 2010 19:03:40 +0000 (15:03 -0400)]
MPSAFE: Tokenize vm_unix.c
Venkatesh Srinivas [Fri, 11 Jun 2010 05:27:26 +0000 (22:27 -0700)]
kernel - MPSAFE work - tokenize vm_zeroidle.c
Venkatesh Srinivas [Sat, 5 Jun 2010 01:16:31 +0000 (18:16 -0700)]
vm: Detect and enable bzeront() when available for vm zeroidle.
bzeront() is available when SSE is detected and mmxopt = 1.
Venkatesh Srinivas [Sat, 5 Jun 2010 01:12:51 +0000 (18:12 -0700)]
vm: Add variable sleep time to vm_zeroidle.
Sleep for longer periods of time than hz/10 when zeroidle is disabled or when
there are a lot of zero pages.
Matthew Dillon [Fri, 11 Jun 2010 03:45:32 +0000 (20:45 -0700)]
kernel - MPSAFE work - lockup vm_page.c, vm_fault.c
* Tokenize the vm_page.c API
* Tokenize the vm_fault.c API
Venkatesh Srinivas [Sat, 5 Jun 2010 01:01:39 +0000 (18:01 -0700)]
libc: Add assembler versions of fls, flsl, and ffsl for i386 and x86_64.
Sascha Wildner [Thu, 10 Jun 2010 19:49:05 +0000 (21:49 +0200)]
ath(4): Some cleanup regarding ether_sprintf().
We don't have it, but we can use kprintf("%6D", <addr>, ":") instead.
Venkatesh Srinivas [Thu, 10 Jun 2010 17:53:38 +0000 (13:53 -0400)]
Test commit.
Sascha Wildner [Thu, 10 Jun 2010 15:23:19 +0000 (17:23 +0200)]
Move some FreeBSD CVS IDs to the comments.
Sascha Wildner [Thu, 10 Jun 2010 13:52:00 +0000 (15:52 +0200)]
Fix some -Wold-style-definition warnings in the x86_64 kernel build.
Matthew Dillon [Thu, 10 Jun 2010 06:06:41 +0000 (23:06 -0700)]
kernel - MPSAFE work - lockup vm_object.c
* Tokenize the vm_object.c API
Matthew Dillon [Thu, 10 Jun 2010 05:49:31 +0000 (22:49 -0700)]
kernel - MPSAFE work - lockup i386 pmap
* Put the critical sections that were removed from pmap.c back in.
Removing them was a bit premature. They can be removed once all
the vm_*.c files are tokenized.
Matthew Dillon [Thu, 10 Jun 2010 03:25:56 +0000 (20:25 -0700)]
kernel - MPSAFE - Fix UP build issue
* Add #ifdef SMP around mpcount test, set token to mpsafe unconditionally
when compiling UP.
Submitted-by: Sascha Wildner <saw@online.de>
Matthew Dillon [Thu, 10 Jun 2010 02:02:54 +0000 (19:02 -0700)]
kernel - MPSAFE work - lockup i386 pmap
* Tokenize the pmap API in platform/pc32/i386/pmap.c
* Cleanup comments. (non-block) interrupts are now always scheduled so
pmap operations are no longer called from them. And IPIs are not allowed
to do anything so sophisticated as to modify pmaps.
* Add a comment at the top indicating that the entire file is MPSAFE.
Matthew Dillon [Thu, 10 Jun 2010 00:13:57 +0000 (17:13 -0700)]
kernel - remove INTR_FAST
Rename INTR_FAST to INTR_CLOCK. Fast interrupts are now only supported for
clock interrupts and may no longer be used by drivers.
* Rename INTR_FAST to INTR_CLOCK
* Adjust clocks to use INTR_CLOCK and remove INTR_FAST from the few drivers
that specified it (if_em is the only one of note).
Matthew Dillon [Thu, 10 Jun 2010 00:10:51 +0000 (17:10 -0700)]
kernel - MPSAFE work - adjust global tokens
* Remove vm_object_token, vm_map_token, vm_page_token
* Add vm_token and kvm_token
Matthew Dillon [Wed, 9 Jun 2010 22:27:49 +0000 (15:27 -0700)]
kernel - MPSAFE work - Remove unused code
* Remove pmap_qenter2()
* Remove pmap_pvdump() and related helper code
Matthew Dillon [Wed, 9 Jun 2010 18:32:40 +0000 (11:32 -0700)]
kernel - MPSAFE work - Add cpu_pause() in scheduler contention path
* Add a cpu_pause() to the scheduler contention path to reduce intra-cpu
cache management effects.
Matthew Dillon [Wed, 9 Jun 2010 04:48:22 +0000 (21:48 -0700)]
kernel - MPSAFE work - fast-path UP tokens when the mplock is already held
* Optimize the case where a UP token is acquired and the MP lock is already
held, greatly reducing the acquisition & release overhead.
When the MP lock is already held we do not have to acquire it again
recursively, which saves us lots of unnecessary calls to get_mplock()
and rel_mplock().
Matthew Dillon [Wed, 9 Jun 2010 04:37:24 +0000 (21:37 -0700)]
kernel - MPSAFE work - Add global tokens
* Add global tokens for various subsystems but do not use them (yet).
Tie in mpsafe and collision count sysctls.
* Add a collision counter to the lwkt_token structure.
* Simplify the lwkt_token initializer macros.
* Minor namespace cleanup for sys/thread.h, place an #ifdef _KERNEL around
the procedure prototypes.
Sascha Wildner [Tue, 8 Jun 2010 07:29:21 +0000 (09:29 +0200)]
Makefile_upgrade.inc: Properly sort ionice.
Sascha Wildner [Tue, 8 Jun 2010 01:09:34 +0000 (03:09 +0200)]
Add a small standards(7) manual page.
So far it explains the _POSIX_C_SOURCE and _XOPEN_SOURCE macros.
Sascha Wildner [Mon, 7 Jun 2010 09:25:47 +0000 (11:25 +0200)]
pthread.3: Fix library name.
Sascha Wildner [Mon, 7 Jun 2010 01:29:15 +0000 (03:29 +0200)]
indent.1: Add missing description of -bs/-nbs.
Matthew Dillon [Sun, 6 Jun 2010 17:26:42 +0000 (10:26 -0700)]
kernel - lwkt_token revamp
* Simplify the token API. Hide the lwkt_tokref mechanics and simplify
the lwkt_gettoken()/lwkt_reltoken() API to remove the need to declare
and pass a lwkt_tokref along with the token.
This makes tokens operate more like locks. There is a minor restriction
that tokens must be unlocked in exactly the reverse order they were locked
in, and another restriction limiting the maximum number of tokens a thread
can hold to defined value (32 for now).
The tokrefs are now an array embedded in the thread structure.
* Improve performance when blocking and unblocking threads with recursively
held tokens.
* Improve performance when acquiring the same token recursively. This
operation is now O(1) and requires no locks or critical sections of any
sort.
This will allow us to acquire redundant tokens in deep call paths
without having to worry about performance issues.
* Add a flags field to the lwkt_token and lwkt_tokref structures and add
a flagged feature which will acquire the MP lock along with a particular
token. This will be used as a transitory mechanism in upcoming MPSAFE
work.
The mplock feature in the token structure can be directly connected
to a mpsafe sysctl without being vulnerable to state-change races.
Sascha Wildner [Sun, 6 Jun 2010 10:43:01 +0000 (12:43 +0200)]
vesa(4): Remove definition and usage of the obsolete V_MODEOPTINFO flag.
Prior to VBE 1.2, this flag specified whether optional information
for the mode was available in the ModeInfoBlock structure. Starting
with 1.2 this information became mandatory and the D1 bit became
reserved.
Since we claim to only support cards conforming to VBE 1.2 and higher,
adjust the code to no longer take this bit into account and remove its
definition.
Jan Lentfer [Tue, 9 Mar 2010 20:47:14 +0000 (21:47 +0100)]
drill: Import dig replacement into base.
Jan Lentfer [Tue, 9 Mar 2010 20:45:10 +0000 (21:45 +0100)]
libldns: Import alternative DNS Library into base
Jan Lentfer [Tue, 9 Mar 2010 20:42:10 +0000 (21:42 +0100)]
Initial vendor import of ldns-1.6.4 into contrib.
Matthew Dillon [Sat, 5 Jun 2010 22:56:24 +0000 (15:56 -0700)]
kernel - add short-form mutex calls
* Add short-form calls mtx_lock() and mtx_spinlock() which get a mutex
exclusively and omit extranious arguments.
Sascha Wildner [Sat, 5 Jun 2010 15:00:52 +0000 (17:00 +0200)]
mutex.9: Fix typo.
Sascha Wildner [Sat, 5 Jun 2010 01:03:42 +0000 (03:03 +0200)]
indent(1): Sync with FreeBSD (brings in -ta).
Sascha Wildner [Fri, 4 Jun 2010 19:47:40 +0000 (21:47 +0200)]
libprop: Comment out MLINK of prop_dictionary_mutable.3, too.
Sascha Wildner [Fri, 4 Jun 2010 19:45:48 +0000 (21:45 +0200)]
prop_dictionary.3: Comment out non-existant function.
Sascha Wildner [Thu, 3 Jun 2010 20:12:54 +0000 (22:12 +0200)]
Perform some mdoc cleanup on various manpages which came in lately.
Sascha Wildner [Thu, 3 Jun 2010 10:24:03 +0000 (12:24 +0200)]
Fix VKERNEL build.
Sascha Wildner [Thu, 3 Jun 2010 10:17:42 +0000 (12:17 +0200)]
Add wpi(4) to LINT and fix a warning.
Sascha Wildner [Wed, 2 Jun 2010 21:50:26 +0000 (23:50 +0200)]
ioprio(1): Partial revert of the previous commit to bring back strtol().
atoi() is deprecated.
Sascha Wildner [Wed, 2 Jun 2010 21:18:48 +0000 (23:18 +0200)]
ioprio(1): We want to set the absolute I/O priority here.
Sascha Wildner [Wed, 2 Jun 2010 20:56:06 +0000 (22:56 +0200)]
ioprio.1: Fix typo.
Sascha Wildner [Wed, 2 Jun 2010 20:54:21 +0000 (22:54 +0200)]
Rename ionice(1) to ioprio(1) and add a short manual page.
Sascha Wildner [Wed, 2 Jun 2010 18:50:42 +0000 (20:50 +0200)]
Uncomment some references to wpi(4) now that it is in.
Joe Talbott [Wed, 2 Jun 2010 15:32:34 +0000 (11:32 -0400)]
wpi - Build the firmware module along with the driver.
Joe Talbott [Wed, 2 Jun 2010 15:13:26 +0000 (11:13 -0400)]
wpifw - Bring in wpi(4) firmware blob and license.
Taken-From: FreeBSD
Joe Talbott [Wed, 2 Jun 2010 15:10:24 +0000 (11:10 -0400)]
wlan_amrr - Add module building framework.
Joe Talbott [Wed, 2 Jun 2010 15:08:41 +0000 (11:08 -0400)]
wpifw - Add firmware module building framework
Taken-From: FreeBSD
Joe Talbott [Wed, 2 Jun 2010 12:56:27 +0000 (08:56 -0400)]
wpi - Serialize interrupts, fixup mcluster allocation size, and cleanup
* Serialize interrupts with ifp->if_serializer.
* Change one last use of MJUMPAGESIZE to MCLBYTES.
* Remove some porting cruft.
Joe Talbott [Wed, 19 May 2010 00:55:06 +0000 (20:55 -0400)]
wpi(4) - Add manual page from FreeBSD.
Joe Talbott [Wed, 19 May 2010 00:49:23 +0000 (20:49 -0400)]
if_wpi - Add into build system.
Joe Talbott [Wed, 19 May 2010 00:48:56 +0000 (20:48 -0400)]
wlan_amrr - Make wlan_amrr its own loadable module.
Joe Talbott [Wed, 19 May 2010 00:42:26 +0000 (20:42 -0400)]
link_elf - Use proc0 rather than panicing when proc is NULL.
This is needed for the firmware API we brought over from FreeBSD.
Discussed-With: dillon
Joe Talbott [Wed, 19 May 2010 00:40:24 +0000 (20:40 -0400)]
ifaltq - Add ifq_drv_* fields needed for wpi() driver.
Joe Talbott [Wed, 19 May 2010 00:36:03 +0000 (20:36 -0400)]
if_wpi - Port of FreeBSD's wpi driver for Intel 3945ABG Wifi adapters.
Alex Hornung [Wed, 2 Jun 2010 00:04:52 +0000 (00:04 +0000)]
devfs - implement mkdir/rmdir
* Implement mkdir and rmdir support to allow for custom user directories
as used by LVM. The same policy applies as does to symlinks:
user-created directories won't be garbage collected and are the only
ones deletable by rmdir. One cannot delete automatically created
directories and empty user-created directories won't be garbage
collected automatically as happens with automatic dirs.
Alex Hornung [Wed, 2 Jun 2010 00:25:44 +0000 (00:25 +0000)]
conf.h - bump SPECNAMELEN to 63 (from 15)
* Increase SPECNAMELEN to 63 (from 15) to allow for longer device paths,
such as for example mapper/vg00-lv00.
Alex Hornung [Wed, 2 Jun 2010 09:51:49 +0000 (09:51 +0000)]
oops, strsep dos2unix!
Alex Hornung [Wed, 2 Jun 2010 09:39:23 +0000 (09:39 +0000)]
libkern - add strsep
Alex Hornung [Sun, 18 Apr 2010 18:00:19 +0000 (18:00 +0000)]
proplib - port to dragonfly
Many-thanks-to: Sascha Wildner
Sascha Wildner [Sun, 25 Apr 2010 00:43:56 +0000 (02:43 +0200)]
mdoc.local: Indent with spaces like everywhere else.
Alex Hornung [Sun, 18 Apr 2010 17:02:41 +0000 (17:02 +0000)]
proplib - Verbatim import from NetBSD
Alex Hornung [Sat, 24 Apr 2010 07:03:01 +0000 (07:03 +0000)]
libkern - add strchr
Aggelos Economopoulos [Tue, 1 Jun 2010 20:07:52 +0000 (23:07 +0300)]
Fix -pg compiled programs on i386
mcount() is supposed to preserve all registers. Since it
clobbered ecx, this resulted in argc/argv always being 0.
It probably only ever worked because of some artifact of
code generation by older GCCs.
Reported-by: Venkatesh Srinivas <me@endeavour.zapto.org>
Testing-by: swildner@
Antonio Huete Jimenez [Thu, 27 May 2010 00:13:34 +0000 (02:13 +0200)]
acpica - Use tsleep() instead of DELAY() to avoid long delays at boot time.
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue1755>
Obtained-from: FreeBSD
Sascha Wildner [Sun, 30 May 2010 23:45:32 +0000 (01:45 +0200)]
Add a token(9) manual page explaining LWKT soft tokens.
Submitted-by: Venkatesh Srinivas <me@acm.jhu.edu>
Dragonfly-bug: <http://bugs.dragonflybsd.org/issue1775>
Sascha Wildner [Sat, 29 May 2010 00:01:53 +0000 (02:01 +0200)]
lib/csu: Fix 'make clean'.
Sascha Wildner [Fri, 28 May 2010 23:25:59 +0000 (01:25 +0200)]
Adjust some comments/manpages regarding where profiling libs are.
Sascha Wildner [Fri, 28 May 2010 22:38:34 +0000 (00:38 +0200)]
gcc(1): Fix compilation with "c++ -pg" (for CCVER=gcc41).
We don't install profiling libraries as /usr/lib/lib${LIB}_p.a anymore
since it was switched to /usr/lib/profile/lib${LIB}.a almost 5 years
ago (in
c4c23d9061b6eb2a3456620a48b84583b00fe0ce).
Reported-by: Damian Weber <dweber@htw-saarland.de>
Sascha Wildner [Fri, 28 May 2010 22:32:59 +0000 (00:32 +0200)]
gcc(1): Fix typos in gcc41's spec so that profiling libraries are found.
Sascha Wildner [Fri, 28 May 2010 20:31:33 +0000 (22:31 +0200)]
evtranalyze(1): Staticise some functions for now to unbreak buildworld.
Aggelos Economopoulos [Fri, 28 May 2010 11:47:53 +0000 (14:47 +0300)]
evtranalyze: support for completion event statistics
- Refactor existing code to support different statistics for
different value types
- Implement a simple vector type
- Bring in a hash table implementation
Aggelos Economopoulos [Fri, 28 May 2010 11:44:59 +0000 (14:44 +0300)]
libevtr: correct copy length
Aggelos Economopoulos [Thu, 27 May 2010 22:06:15 +0000 (01:06 +0300)]
libevtr: add support for data objects
Currently using the Haskell data constructor syntax.
Matthew Dillon [Thu, 27 May 2010 19:51:32 +0000 (12:51 -0700)]
ftpd - Fix security issue in libopie. FreeBSD-SA-10:05.opie
* Fix a buffer overflow issue in libopie.
Submitted-by: Xin LI <delphij@delphij.net>
Credits: Maksymilian Arciemowicz and Adam Zabrocki
Matthew Dillon [Wed, 26 May 2010 21:20:11 +0000 (14:20 -0700)]
kernel - Fix up hysteresis for the zeroidle code
* Fix a minor bug in the zeroidle hysteresis code and document the
states.
With-input-from: Venkatesh Srinivas <me@acm.jhu.edu>
Matthew Dillon [Wed, 26 May 2010 21:19:15 +0000 (14:19 -0700)]
mmap: Remove an additional reference to the disablexworkaround variable
* Fix kernel build, remove a second disablexworkaround check that was
missed.
Aggelos Economopoulos [Wed, 26 May 2010 13:26:44 +0000 (16:26 +0300)]
mmap: get rid of old hack to support the XIG X server
Submitted-by: Venkatesh Srinivas <me@acm.jhu.edu>
Aggelos Economopoulos [Wed, 26 May 2010 13:13:08 +0000 (16:13 +0300)]
Start using our hash tables for thread switch/lifetime events
Aggelos Economopoulos [Wed, 26 May 2010 13:10:49 +0000 (16:10 +0300)]
ktrdump: constify pointer
Aggelos Economopoulos [Tue, 25 May 2010 22:17:36 +0000 (01:17 +0300)]
libevtr: alternative hash syntax and more fixes
- Rewrite hsh.foo to hsh["foo"]
- Better error handling and more controlled error reporting
(don't just write stuff to stderr)
- Accept integer constants in hexadecimal (0x) form as well
Aggelos Economopoulos [Mon, 24 May 2010 22:19:11 +0000 (01:19 +0300)]
ktrdump: dump some device info
Walk the kernel devices and populate the 'devnames' hash.
Aggelos Economopoulos [Mon, 24 May 2010 22:15:50 +0000 (01:15 +0300)]
evtranalyze: don't try to open stdin by default
We don't handle that correctly yet, so error out instead. A
lot of people were getting a crash on their first run b/c
they didn't specify an input file.
Aggelos Economopoulos [Sun, 23 May 2010 12:44:36 +0000 (15:44 +0300)]
libevtr: add support for string literals
Aggelos Economopoulos [Sun, 23 May 2010 12:35:23 +0000 (15:35 +0300)]
evtranalyze: correctly print out name of variable
Aggelos Economopoulos [Sun, 23 May 2010 12:33:45 +0000 (15:33 +0300)]
libevtr: oops, stay withing the bounds of the hash table
Matthew Dillon [Wed, 26 May 2010 00:18:04 +0000 (17:18 -0700)]
ath - use ifnet serialization calls instead of directly calling lwkt
* Use ifnet_*serialize_all() instead of lwkt_serialize_*().
Matthew Dillon [Tue, 25 May 2010 22:13:29 +0000 (15:13 -0700)]
kernel - Fix panic in setrlimit() when changing the stack limit
* setrlimit() has to make a VM call with the MP lock held when changing
the stack limit, and was not properly obtaining the MP lock.
Matthew Dillon [Tue, 25 May 2010 22:09:50 +0000 (15:09 -0700)]
tmpfs - Fix chown for tmpfs
* Replace the manual permission check bits with a call to
vop_helper_chown().
* Fixes an issue where suid programs were unable to call chown() on
files in tmpfs.
Reported-by: Francois Tigeot <ftigeot@wolfpond.org>
Sascha Wildner [Mon, 24 May 2010 07:43:57 +0000 (09:43 +0200)]
Sync with FreeBSD (somehow, DragonFly 2.6 had slipped).
Sascha Wildner [Sun, 23 May 2010 10:59:47 +0000 (12:59 +0200)]
usbd(8): Raise WARNS to 6 and fix warnings.
Constantine A. Murenin [Sun, 23 May 2010 01:39:15 +0000 (21:39 -0400)]
lm(4): support W83627EHF-A (an early revision of the chip in ASUS MBs)
Sascha Wildner [Sun, 23 May 2010 01:01:36 +0000 (03:01 +0200)]
sa(8): Raise WARNS to 6 and fix warnings.
Sascha Wildner [Sat, 22 May 2010 23:55:46 +0000 (01:55 +0200)]
ncplist(1): Raise WARNS to 3 and fix warnings.