Matthew Dillon [Sun, 17 May 2009 20:10:48 +0000 (13:10 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Hasso Tepper [Sun, 17 May 2009 11:54:14 +0000 (14:54 +0300)]
Make it possible to build ath(4) hal into the kernel.
Also fixes a LINT build.
Sepherosa Ziehau [Sun, 17 May 2009 08:14:14 +0000 (16:14 +0800)]
Duplicate platform/pc32/isa/clock.c to platform/pc64/isa/clock.c
Sepherosa Ziehau [Sun, 17 May 2009 07:42:22 +0000 (15:42 +0800)]
Unbreak buildworld
Sepherosa Ziehau [Sun, 17 May 2009 05:11:50 +0000 (13:11 +0800)]
More clock cleanup:
- Move rtc initialization to SI_BOOT2_CLOCKREG, SI_ORDER_FIRST
- Staticize cpu_initclocks()
Sepherosa Ziehau [Sun, 17 May 2009 04:08:38 +0000 (12:08 +0800)]
Add interrupt cputimer interface.
- Better abstraction
- Easier to extend, e.g. add another interrupt cputimer
- No lapic timer pollution in isa/clock.c
Sepherosa Ziehau [Wed, 13 May 2009 13:14:15 +0000 (21:14 +0800)]
tcp timer: Remember tcpcb owner thread's msgport, so timer message could
be delivered to the correct msgport.
While I am here, move tcp timer message creation for TCP IPv6 socket from
tcp_newtcpcb() to tcp6_connect().
Preliminary IPv6 test done by hasso@
Dragonfly-issue: http://bugs.dragonflybsd.org/issue1361
Sascha Wildner [Sat, 16 May 2009 22:44:38 +0000 (00:44 +0200)]
gzip(1): Fix amd64 warning.
Sascha Wildner [Sat, 16 May 2009 22:23:22 +0000 (00:23 +0200)]
pkill(1): Silence amd64 warning.
Sascha Wildner [Sat, 16 May 2009 22:16:02 +0000 (00:16 +0200)]
undo(1): Fix amd64 warnings.
Sascha Wildner [Sat, 16 May 2009 22:04:56 +0000 (00:04 +0200)]
atmarpd(8)/scspd(8): Fix amd64 warnings.
Sascha Wildner [Sat, 16 May 2009 21:59:05 +0000 (23:59 +0200)]
makewhatis(8): Fix amd64 warning.
Sascha Wildner [Sat, 16 May 2009 21:54:04 +0000 (23:54 +0200)]
tzsetup(8): Raise WARNS to 2 and fix a warning.
Sascha Wildner [Sat, 16 May 2009 12:26:05 +0000 (14:26 +0200)]
asf(8): Raise WARNS to 6 and fix warnings.
Sascha Wildner [Sat, 16 May 2009 12:14:07 +0000 (14:14 +0200)]
netstat(1): Raise WARNS to 6 and fix warnings.
Sascha Wildner [Sat, 16 May 2009 12:13:37 +0000 (14:13 +0200)]
<netipx/spx_debug.h>: Constify spxnames[].
Hasso Tepper [Tue, 12 May 2009 19:48:59 +0000 (22:48 +0300)]
Open source ath(4) HAL code.
Submitted-by: Alexander Polakov <polachok@gmail.com>
Obtained-from: FreeBSD 7.2
Hasso Tepper [Sat, 16 May 2009 04:39:38 +0000 (07:39 +0300)]
Make pthread types visible via sys/types.h to conform SUSv3.
Move declarations of pthread related types to the _pthreadtypes.h and
include it from sys/types.h. pthread.h should do the same, but as it
includes the sys/types.h anyway at the moment, don't touch it yet.
Inspired-by: FreeBSD
Sepherosa Ziehau [Sat, 16 May 2009 03:54:30 +0000 (11:54 +0800)]
Cleanup systimer.h
- Remove never implemented systimer_changed() declaration
- Move comment to the proper place
Matthew Dillon [Fri, 15 May 2009 23:21:56 +0000 (16:21 -0700)]
Instrument contigmalloc() failures to provide better information.
Sascha Wildner [Fri, 15 May 2009 21:52:55 +0000 (23:52 +0200)]
installer: Fix amd64 warning.
Sascha Wildner [Fri, 15 May 2009 21:47:13 +0000 (23:47 +0200)]
installer: Remove some dead code and raise WARNS to 2.
Matthew Dillon [Fri, 15 May 2009 20:52:22 +0000 (13:52 -0700)]
Add a vkernel test environment build
Create a vkernel test environment build directory in /usr/src/test/vkernel
with a Makefile which does all the dirty work required to build a vkernel
environment.
Matthew Dillon [Fri, 15 May 2009 20:49:43 +0000 (13:49 -0700)]
vkernel - Fix races in stopsig() and ipisig().
stopsig() needed a critical section and ipisig() needed to adjust
intr_nesting_level within a critical section.
Matthew Dillon [Fri, 15 May 2009 20:47:56 +0000 (13:47 -0700)]
Use the new cothread_delete() API in vke_stop().
Fix a memory and pthread leak, and a panic in VKE by using the new
cothread_delete() API to properly delete the thread and deregister the
interrupt.
Matthew Dillon [Fri, 15 May 2009 20:47:23 +0000 (13:47 -0700)]
Add cothread_delete() to the vkernel cothread API.
Matthew Dillon [Fri, 15 May 2009 20:23:17 +0000 (13:23 -0700)]
vknetd - add features, allow ip to be set in unsecure mode, allow addr 0.
Allow an IP address/mask to be specified whether in secure mode or not,
and allow packets with a source address of 0.0.0.0 to pass in secure mode,
so dhclient/bootp works.
Matthew Dillon [Fri, 15 May 2009 19:22:06 +0000 (12:22 -0700)]
vkernel now autoprobes vkd0s1a as well as vkd0s0a to locate the root fs.
Matthew Dillon [Fri, 15 May 2009 19:08:46 +0000 (12:08 -0700)]
Fix bug in recent commit - fcntl(... O_ASYNC) on tty's got broke.
The pass-through fo_ioctl() call was being used with the old async state
instead of the new one. This primarily effects tty's as most other devices
just use the async state stored in the file pointer.
Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
Matthew Dillon [Fri, 15 May 2009 07:55:31 +0000 (00:55 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Fri, 15 May 2009 07:54:50 +0000 (00:54 -0700)]
Fix a simple code bug when dealing with a raced vnode in hammer_get_vnode().
Reported-by: Francois Tigeot <ftigeot@wolfpond.org>
Sascha Wildner [Fri, 15 May 2009 07:42:48 +0000 (09:42 +0200)]
Put WARNS?=6 in usr.sbin/Makefile.inc (like in usr.bin/ etc.).
Raise WARNS as high as possible for the utilities that still warn
with 6.
Sascha Wildner [Thu, 14 May 2009 11:52:38 +0000 (13:52 +0200)]
ipfilter(8): Include <sys/dirent.h> instead of <sys/dir.h>.
Joe Talbott [Fri, 15 May 2009 03:49:20 +0000 (23:49 -0400)]
if_vke: Convert from kqueue API to cothread API.
This work is the first step in cleaning up the vkernel timer interrupt
code.
Reviewed-By: dillon
Joe Talbott [Fri, 15 May 2009 03:40:56 +0000 (23:40 -0400)]
sys_wait4(): Use uap->sysmsg_result when calling kern_wait().
Jordan Gordeev [Wed, 13 May 2009 16:39:23 +0000 (19:39 +0300)]
Fix chunking type to match expected pointer type. Needed for amd64.
Matthew Dillon [Fri, 15 May 2009 00:09:15 +0000 (17:09 -0700)]
Add missing vnconfig -u fixing a build error when doing a make from scratch.
Matthew Dillon [Thu, 14 May 2009 16:56:41 +0000 (09:56 -0700)]
Add missing call to sysctl_ctx_init(), fixing a boot-time panic.
Simon Schubert [Thu, 14 May 2009 14:02:57 +0000 (16:02 +0200)]
gcc-4.1: correctly generate libstdc++ gthr.h headers
The libstdc++ headers changed the names of their macro symbols since
gcc 3.4. This was missed when introducing gcc 4.1. Update the generation
rules to match those of the libstdc++ include/Makefile.am.
Reported-by: hasso@
Sepherosa Ziehau [Thu, 14 May 2009 11:19:54 +0000 (19:19 +0800)]
Enable lapic timer by default.
Approved-by: dillon@
Sepherosa Ziehau [Thu, 14 May 2009 11:14:55 +0000 (19:14 +0800)]
Remove lapic_timer_test
Sascha Wildner [Thu, 14 May 2009 11:04:39 +0000 (13:04 +0200)]
resident(1): Fix i386 warning (introduced when fixing amd64 warnings).
Sascha Wildner [Thu, 14 May 2009 10:19:57 +0000 (12:19 +0200)]
window(1): Sync with NetBSD (which is cleaner than FreeBSD's).
Raise WARNS to 6.
Sepherosa Ziehau [Thu, 14 May 2009 10:44:51 +0000 (18:44 +0800)]
Use nq version of systimer_init_periodic() when initialize interrupt
livelock avoidance systimer.
The bug revealed itself as long time looping in the systimer_intr():
The one shot timer interrupt handler is prevented from running for
some time probably due to heavy interrupt load, and livelock avoidance
systimer is setup using high frequency (40000Hz by default). If non-nq
version of systimer was used, then the main loop of systimer_intr()
would try to keep running and reloading this systimer until the
accumulated time caught up with the saved sys_cputimer count.
Debug information provided by Jordan Gordeev <jgordeev@dir.bg>, he also
helped to locate the systimer cause the long time looping.
Tested-by: Jordan Gordeev <jgordeev@dir.bg>
Approved-by: dillon@
Jordan Gordeev [Wed, 13 May 2009 14:40:28 +0000 (17:40 +0300)]
amd64: pmap: sync pmap_kmem_choose() with FreeBSD.
Jordan Gordeev [Sun, 26 Apr 2009 19:11:57 +0000 (22:11 +0300)]
vga(4): Fix truncation of 64-bit addresses.
From FreeBSD revision 115253.
Jordan Gordeev [Sun, 26 Apr 2009 18:58:06 +0000 (21:58 +0300)]
amd64: first steps towards 64-bit pmap
remove 32-bit amd64 pmap
replace with work-in-progress 64-bit pmap
Matthew Dillon [Thu, 14 May 2009 02:08:33 +0000 (19:08 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Jordan Gordeev [Wed, 13 May 2009 17:41:06 +0000 (20:41 +0300)]
amd64: Fix several "sizeof(size_t) != sizeof(int)" bugs.
The compiler warned about them.
Jordan Gordeev [Wed, 13 May 2009 14:34:40 +0000 (17:34 +0300)]
amd64: varsym: increase varsym set size limit
The previous limit was hit during a normal boot.
Sepherosa Ziehau [Wed, 13 May 2009 11:58:20 +0000 (19:58 +0800)]
systat(1): Add "vmmeter" command to show per-cpu statistics
Sepherosa Ziehau [Tue, 12 May 2009 11:51:35 +0000 (19:51 +0800)]
Expose per-cpu vmmeter through vm.cpuX.vmmeter
Sepherosa Ziehau [Mon, 11 May 2009 06:56:59 +0000 (14:56 +0800)]
Count inter-processor and LAPIC timer interrupts
Sascha Wildner [Mon, 11 May 2009 02:41:37 +0000 (04:41 +0200)]
Oops fix crunchgen path.
Sascha Wildner [Sun, 10 May 2009 17:47:30 +0000 (19:47 +0200)]
installer: Rename fn_subpart.c to fn_subpart_ufs.c.
Sascha Wildner [Sun, 10 May 2009 15:07:20 +0000 (17:07 +0200)]
zic(8) & zdump(8): Raise WARNS to 2 and silence a warning.
Sascha Wildner [Sun, 10 May 2009 15:11:30 +0000 (17:11 +0200)]
timed(8): Set WARNS from timed/Makefile.inc for all subdirs.
Sascha Wildner [Sun, 10 May 2009 15:16:54 +0000 (17:16 +0200)]
tcpdump(1): Raise WARNS to 2.
Sascha Wildner [Sun, 10 May 2009 15:19:20 +0000 (17:19 +0200)]
nscd(8): Raise WARNS to 2.
Sascha Wildner [Sun, 10 May 2009 15:27:15 +0000 (17:27 +0200)]
mrouted(8): Raise WARNS to 1 and fix two warnings.
Sascha Wildner [Sun, 10 May 2009 15:34:01 +0000 (17:34 +0200)]
lpr(1): Connect filters.ru/ to the parent Makefile.inc and fix 2 warnings.
Sascha Wildner [Sun, 10 May 2009 15:48:46 +0000 (17:48 +0200)]
usr.sbin/i4b: Remove #warning about ncurses deficiency and raise WARNS to 1.
Sascha Wildner [Sun, 10 May 2009 15:59:36 +0000 (17:59 +0200)]
crunchgen and friends install to /usr/bin, so move here.
Sascha Wildner [Sun, 10 May 2009 16:01:15 +0000 (18:01 +0200)]
crunch: Raise WARNS to 1.
Sascha Wildner [Sun, 10 May 2009 16:09:13 +0000 (18:09 +0200)]
Raise some WARNS in usr.sbin/.
Sascha Wildner [Sun, 10 May 2009 13:43:44 +0000 (15:43 +0200)]
lint(1): Set WARNS from xlint/Makefile.inc for all subdirs.
Sascha Wildner [Sun, 10 May 2009 13:40:42 +0000 (15:40 +0200)]
tip(1): Set WARNS from tip/Makefile.inc for all subdirs and fix a warning.
Sascha Wildner [Sun, 10 May 2009 13:38:31 +0000 (15:38 +0200)]
locate(1): Set WARNS from locate/Makefile.inc for all subdirs.
Sascha Wildner [Sun, 10 May 2009 13:35:17 +0000 (15:35 +0200)]
lex(1): Make WARNS cover libl too.
Sascha Wildner [Sun, 10 May 2009 13:31:13 +0000 (15:31 +0200)]
installer: ../Makefile.inc is included via bsd.init.mk, no need to repeat.
Sascha Wildner [Sun, 10 May 2009 01:23:44 +0000 (03:23 +0200)]
Sync fetch(1) with FreeBSD.
Sascha Wildner [Sun, 10 May 2009 01:23:30 +0000 (03:23 +0200)]
Sync libfetch(3) with FreeBSD.
Sascha Wildner [Sun, 10 May 2009 01:22:48 +0000 (03:22 +0200)]
bsd-family-tree: Sync with FreeBSD
Sascha Wildner [Sat, 9 May 2009 22:44:42 +0000 (00:44 +0200)]
smp.4: List the SMP options in the SYNOPSIS.
Sascha Wildner [Sat, 9 May 2009 14:08:23 +0000 (16:08 +0200)]
malloc.3: Add missing section in .Xr.
Sascha Wildner [Sat, 9 May 2009 07:26:13 +0000 (09:26 +0200)]
installer: Set WARNS to 1 for now.
Sascha Wildner [Sat, 9 May 2009 06:21:50 +0000 (08:21 +0200)]
installer: def_capacity is not used, remove it.
Sascha Wildner [Sat, 9 May 2009 06:14:26 +0000 (08:14 +0200)]
installer: Remove some unused defines.
Sascha Wildner [Sat, 9 May 2009 19:42:08 +0000 (21:42 +0200)]
pkgsrc.7: Reference pkgsrc-wip's sourceforge URL
Sascha Wildner [Sat, 9 May 2009 19:35:53 +0000 (21:35 +0200)]
pkgsrc.7: mention /usr/Makefile
Sascha Wildner [Fri, 8 May 2009 20:13:51 +0000 (22:13 +0200)]
Sync the aac(4) manual page with FreeBSD RELENG_6_2.
Unfortunately, the FreeBSD CVS IDs were not updated in Peter's most
recent code sync with FreeBSD. Neither was the manual page. Having
to research which state the code is in afterwards in order to choose
the correct manual page is a pain, so don't blame me if it doesn't
match the driver's current state in DragonFly 100%. :-)
Reported-by: Archimedes Gaviola <archimedes.gaviola@gmail.com>
Sepherosa Ziehau [Fri, 8 May 2009 12:03:45 +0000 (20:03 +0800)]
Switch one shot timer, if user allows C3 state to be entered.
Snooping systimer left time and using one shot timer sleep/wake reloading
during C3 state transition does not achieve maximum powersaving effect...
Matthew Dillon [Thu, 7 May 2009 22:31:24 +0000 (15:31 -0700)]
Removing debugging kprintf() in PTE race check.
After-testing-by: trevorjk
Matthew Dillon [Thu, 7 May 2009 20:46:16 +0000 (13:46 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Thu, 7 May 2009 20:45:34 +0000 (13:45 -0700)]
Add sanity check: Assert (gd_spinlocks_wr > 0) prior to decrementing it.
Submitted-by: Antonio Huete Jimenez <ahuete.devel@gmail.com>
Aggelos Economopoulos [Thu, 7 May 2009 20:44:49 +0000 (23:44 +0300)]
Merge branch 'master' of git://chlamydia.fs.ei.tum.de/dragonfly
Aggelos Economopoulos [Thu, 7 May 2009 19:12:48 +0000 (22:12 +0300)]
kill a bit of dead code in nfs
Simon Schubert [Thu, 7 May 2009 07:36:22 +0000 (09:36 +0200)]
Roll DragonFly 2.3.1
Matthew Dillon [Thu, 7 May 2009 03:09:35 +0000 (20:09 -0700)]
Replace Debugger() entry with a kprintf().
Reported-by: trevorjk
Matthew Dillon [Thu, 7 May 2009 00:36:22 +0000 (17:36 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Matthew Dillon [Thu, 7 May 2009 00:27:58 +0000 (17:27 -0700)]
Fix O_NOFOLLOW and do not follow softlinks if O_EXCL.
A bug in sys_open() set NLC_FOLLOW bit for the nlookup() call unconditionally.
Removing the setting allows vn_open() to properly set NLC_FOLLOW conditionally
when both O_EXCL and O_NOFOLLOW are not set.
Matthew Dillon [Thu, 7 May 2009 00:05:09 +0000 (17:05 -0700)]
HAMMER VFS - Limit recursion for long directory chains, update mtime/ctime
A long chain of directory dependencies can blow out the kernel stack. Limit
the recursion to 20 levels. If the depth is exceeded the flushing of the
deep inodes is delayed until the higher dependencies are taken care of.
Update mtime/ctime accordingly based on the fstest stress test from FreeBSD.
Note however that we cannot update the ctime on directories for file creates,
renames, and deletes within the directory without rolling a new inode,
which is too expensive to do for that situation. We can, and do, update the
mtime.
Matthew Dillon [Wed, 6 May 2009 23:57:44 +0000 (16:57 -0700)]
fstest regression fixes - POSIX error codes.
Deal with most of the issues found by FreeBSD's fstest regression test:
* Limit path components to 255 characters. Return ENAMETOOLONG if
the limit is exceeded.
* Return EEXIST, EINVAL, and ENOTEMPTY as appropriate when the user
attempts to create, delete, or rename "." or "..", instead of EINVAL.
* Return EISDIR if an attempt is made to open a directory for writing,
instead of EINVAL.
* Return EACCES if an attempt is made to open a file O_TRUNC without
O_RDWR or O_WRONLY, instead of silently dropping the O_TRUNC.
* Implement O_NOFOLLOW semantics generally instead of just with O_EXCL.
Not dealt with:
* DragonFly clears SGID AND SUID on uid or gid change, if not root.
If root is doing the operation SGID/SUID is not cleared.
* HAMMER cannot modify the ctime without rolling a new inode, which
is very expensive, and does not do so when entries are added or
removed from a directory. mtime is modified.
Simon Schubert [Wed, 6 May 2009 09:28:17 +0000 (11:28 +0200)]
ncal: specify month with -m month argument
Ncal only supports specification of a month together with a year, which is
silly. Using the -m argument, you can now specify a month in the current
year.
Obtained-from: FreeBSD
Simon Schubert [Wed, 6 May 2009 09:21:14 +0000 (11:21 +0200)]
ncal: interpret a `.' as current year
There doesn't seem to be an easy way to refer to the current year, for
instance if I wanted to show the calendar of this year's June. Now
there is: ncal 6 .
Simon Schubert [Wed, 6 May 2009 09:00:23 +0000 (11:00 +0200)]
ncal: always generate full lines to enable today hilight in year view
Ncal would only fill lines up to the last day in a month and use a printf
padding later to align all output nicely (when using year view). This
breaks when using a hilight, because the ANSI sequences consume additional
characters which are of zero print width. Instead of letting printf do
the padding, generate padded lines ourselves.
Also avoid code duplication in the hilight code and switch on hilighting
for the year view.
Simon Schubert [Tue, 5 May 2009 22:27:34 +0000 (00:27 +0200)]
ncal: hilight current day
This lets ncal and cal hilight the current day in the month view, if its
output is connected to a terminal. The year view can not yet use
highlighting.
Obtained-from: FreeBSD
Aggelos Economopoulos [Wed, 6 May 2009 21:15:58 +0000 (00:15 +0300)]
Allow USCHED_DEL_CPU for non-superuser processes
Matthew Dillon [Wed, 6 May 2009 20:38:22 +0000 (13:38 -0700)]
HAMMER VFS - Refactor merged search function to try to avoid missed entries
Refactor the merged B-Tree + In-Memory search function to try to avoid races
where an in-memory record is flushed to the media during a search, causing
the search to miss the record.
Add another flag to hammer_record_t to indicate that the record was deleted
because it was committed to the media (verses simply being deleted).
Better-separate HAMMER_RECF_DELETED_FE and HAMMER_RECF_DELETED_BE. These
flags indicate whether the frontend or backend deleted an in-memory record.
The backend ignores frontend deletions that occur after the record has been
associated with a flush group.
Remove some console Warnings that are no longer applicable.
Matthew Dillon [Wed, 6 May 2009 02:17:10 +0000 (19:17 -0700)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly