Sepherosa Ziehau [Thu, 27 Jan 2011 10:42:56 +0000 (18:42 +0800)]
apic: Removed unused apic_eoi()
Sepherosa Ziehau [Thu, 27 Jan 2011 07:10:07 +0000 (15:10 +0800)]
intr: Remove wrongly-coded nexus_config_intr()
Sepherosa Ziehau [Thu, 27 Jan 2011 03:44:46 +0000 (11:44 +0800)]
ioapic: Support upto 192 IDT entries
Sepherosa Ziehau [Thu, 27 Jan 2011 03:11:21 +0000 (11:11 +0800)]
intr: Enable 192 IDT entries in machine independent code
Sepherosa Ziehau [Thu, 27 Jan 2011 02:59:39 +0000 (10:59 +0800)]
intr: Prepare to support 192 IDT entries; don't allow syscall to be taken.
Sepherosa Ziehau [Thu, 27 Jan 2011 02:45:10 +0000 (10:45 +0800)]
pc32: Move ipl.s and ipl_funcs.c from isa/ to i386/
They are actually not ISA specific at all.
Sascha Wildner [Wed, 26 Jan 2011 11:50:22 +0000 (12:50 +0100)]
kernel: Remove some no longer used stuff in clock.c.
Sascha Wildner [Wed, 26 Jan 2011 10:51:01 +0000 (11:51 +0100)]
ext2fs: Remove some unused variables.
Sascha Wildner [Wed, 26 Jan 2011 10:40:51 +0000 (11:40 +0100)]
fifofs: Remove an unused variable.
Sascha Wildner [Wed, 26 Jan 2011 10:31:14 +0000 (11:31 +0100)]
kernel: Remove an unused variable.
Venkatesh Srinivas [Tue, 25 Jan 2011 12:58:54 +0000 (04:58 -0800)]
kernel -- lockmgr debugging.
* Track exclusive lockmgr locks held by a thread in a per-td stack,
td->td_lockmgr_stack[]. The stack also tracks the depth of the lockmgr
recursion, if any.
* Move td->td_locks count from SIMPLELOCK_DEBUG to DEBUG_LOCKS; we have not
used a simplelock to interlock lockmgr lock updates in a very long time.
Sascha Wildner [Tue, 25 Jan 2011 08:24:30 +0000 (09:24 +0100)]
nullfs: Remove a no longer used variable.
Venkatesh Srinivas [Tue, 25 Jan 2011 04:52:54 +0000 (20:52 -0800)]
kernel -- tmpfs: Mark tmpfs_write MPSAFE.
Push down synchronization for tmpfs_write from VN to tmpfs. Note that
tmpfs_write still takes the MPlock.
Sascha Wildner [Tue, 25 Jan 2011 03:51:27 +0000 (04:51 +0100)]
Add /usr/pkg/bin to a few paths in our building infrastructure.
This allows the clang static analyzer to find perl and python when run
in conjunction with one of our build* targets.
Sascha Wildner [Tue, 25 Jan 2011 02:13:35 +0000 (03:13 +0100)]
bsd-family-tree: Sync with FreeBSD.
Sascha Wildner [Tue, 25 Jan 2011 01:34:41 +0000 (02:34 +0100)]
Sync zoneinfo database with tzdata2011a from elsie.nci.nih.gov
australasia: 8.20 -> 8.22
northamerica: 8.34 -> 8.39
Theory: 8.5 -> 8.6
* australasia: Simplification and gratuitous optimization of
South Australia rules.
* northamerica: Changes to Hawaiian time history (from an article
by Schmitt and Cox): abandoned local mean time in 1896 rather
than 1900; used DST during World War II.
* Theory: Add section on scope of the database.
Sepherosa Ziehau [Mon, 24 Jan 2011 14:41:29 +0000 (22:41 +0800)]
clock: Remove no longer used statclock_disable and related code
Sascha Wildner [Mon, 24 Jan 2011 09:50:55 +0000 (10:50 +0100)]
Clean up the cryptdisks rc script a bit.
* When checking for dm(4), redirect stderr to /dev/null, too.
* Clarify the failure message.
* Remove empty REQUIRE.
* Don't check for /sbin/cryptdisks being executable, just assume it is.
* Uniformly use TAB for indenting.
Sepherosa Ziehau [Mon, 24 Jan 2011 06:51:40 +0000 (14:51 +0800)]
em/emx: Reserve 2 (instead of 1) TX descriptors for TX ring
Same as what Intel's Linux driver is doing.
Matthew Dillon [Sun, 23 Jan 2011 21:34:22 +0000 (13:34 -0800)]
kernel - Fix a case where a panic dump can stall
* Change pmap_kenter_temporary() to not use IPI messaging for SMP pmap
invalidation. Instead the caller must call smp_invltlb() (which uses
a dedicate IPI vector).
* This appears to reduce instances where panic dumps can stall in the
middle and fail to complete.
Reported-by: Numerous people
Matthew Dillon [Sun, 23 Jan 2011 21:23:18 +0000 (13:23 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
Sascha Wildner [Sun, 23 Jan 2011 18:43:54 +0000 (19:43 +0100)]
kernel: Silence an unused variable warning.
Matthew Dillon [Sun, 23 Jan 2011 08:19:22 +0000 (00:19 -0800)]
kernel - stop cpus on panic whether the debugger is entered or not
* Stop cpus on panic regardless of the state of debug.debugger_on_panic.
* Cpus were previously only stopped when entering the debugger, causing
unattended panics not entering the debugger to often cause secondary
panics on other cpus and lockup entirely.
Sascha Wildner [Sun, 23 Jan 2011 04:07:21 +0000 (05:07 +0100)]
Switch back to using CSTD=gnu89 for a number of things again.
* gcc44's libobjc
* libc_r
* gprof(1)
Sascha Wildner [Sun, 23 Jan 2011 04:05:08 +0000 (05:05 +0100)]
pppd(8): Fix some CSTD=gnu99 fallout.
Sascha Wildner [Sun, 23 Jan 2011 03:53:39 +0000 (04:53 +0100)]
rcs(1): Raise WARNS to 2 and fix warnings.
While here, set has_sa_sigaction to 1 in conf.h.
Sascha Wildner [Sun, 23 Jan 2011 03:10:43 +0000 (04:10 +0100)]
libthread_xu: Raise WARNS to 5 and fix warnings.
Sascha Wildner [Sun, 23 Jan 2011 01:48:51 +0000 (02:48 +0100)]
sort(1): Raise WARNS to 2 and fix warnings.
Venkatesh Srinivas [Sat, 22 Jan 2011 17:09:54 +0000 (09:09 -0800)]
Remove another 8k PAGE_SIZE test in vm_page.h.
Sascha Wildner [Sat, 22 Jan 2011 07:24:41 +0000 (08:24 +0100)]
manpages: Fix some more typos.
Sascha Wildner [Sat, 22 Jan 2011 07:17:36 +0000 (08:17 +0100)]
manpages: Fix some typos.
Sascha Wildner [Fri, 21 Jan 2011 23:46:48 +0000 (00:46 +0100)]
lwbuf.9: Remove trailing whitespace.
Matthew Dillon [Fri, 21 Jan 2011 23:18:56 +0000 (15:18 -0800)]
kernel - Conditionalize ipiq debugging
* Only print cm=... debug messages if ipiq_debug is enabled.
Matthew Dillon [Fri, 21 Jan 2011 18:02:31 +0000 (10:02 -0800)]
kernel - Fix lockup when debug.ktr.resynchronize is enabled
* The TSC resynchronization code can livelock the system due to the
manual hard loops it runs to try to synchronize the TSC's on all
cpus.
* Change the code to use the cpusync API. It will be less accurate but
it should no longer result in system livelocks.
Venkatesh Srinivas [Fri, 21 Jan 2011 11:37:57 +0000 (03:37 -0800)]
kernel -- vm_page: Remove ifdef for 8K page size.
Venkatesh Srinivas [Thu, 20 Jan 2011 22:44:15 +0000 (14:44 -0800)]
Remove sys/mplock2.h from more files.
Venkatesh Srinivas [Thu, 20 Jan 2011 10:28:05 +0000 (02:28 -0800)]
Update token(9) removing MPSAFE flag and adding description to lwkt_token_init.
Venkatesh Srinivas [Thu, 20 Jan 2011 10:18:00 +0000 (02:18 -0800)]
Remove mplock2.h include from files not using the mplock.
Sepherosa Ziehau [Thu, 20 Jan 2011 07:44:47 +0000 (15:44 +0800)]
pf_socket_lookup: Don't domsg, which could easily lockup network system
Sepherosa Ziehau [Thu, 20 Jan 2011 07:30:28 +0000 (15:30 +0800)]
pf_socket_lookup: lwkt_domsg is to be used, don't kmalloc the msg.
Matthew Dillon [Thu, 20 Jan 2011 06:41:08 +0000 (22:41 -0800)]
test - Make fsstress compile under x86-64
* Fix compile errors and warnings when compiling fsstress on x86-64
Matthew Dillon [Thu, 20 Jan 2011 06:40:03 +0000 (22:40 -0800)]
kernel - Remove mplock shims from global tokens
* cleanup (remove remaining sysctls).
Matthew Dillon [Thu, 20 Jan 2011 06:29:17 +0000 (22:29 -0800)]
kernel - Remove mplock shims from global tokens
* Remove the mplock safety shims from all global tokens.
* Remove the mplock flag and API arguments. All tokens
are now always MPSAFE.
Matthew Dillon [Thu, 20 Jan 2011 04:30:15 +0000 (20:30 -0800)]
HAMMER VFS - vfs.hammer.double_buffer adjustments
* Do not try to use the (currently broken) _vnode_validate() to
validate de-dup data when double_buffer is turned on. Use the
device buffer cache instead.
Sepherosa Ziehau [Thu, 20 Jan 2011 03:39:53 +0000 (11:39 +0800)]
ipflow: Use CPUMASK
Venkatesh Srinivas [Thu, 20 Jan 2011 02:35:51 +0000 (18:35 -0800)]
kernel -- tmpfs: MPSAFE tmpfs_getattr.
Use the per-mount token to synchronize tmpfs_getattr.
Venkatesh Srinivas [Thu, 20 Jan 2011 02:16:35 +0000 (18:16 -0800)]
Update lwbuf(9) manpage for recent lwbuf_alloc change.
Matthew Dillon [Thu, 20 Jan 2011 01:27:46 +0000 (17:27 -0800)]
kernel - Optimize the x86-64 lwbuf API
* Change lwbuf_alloc(m) to lwbuf_alloc(m, &lwb_cache), passing a pointer to
a struct lwb which lwbuf_alloc() may used if it desires.
* The x86-64 lwbuf_alloc() now just fills in the passed lwb and returns it.
The i386 lwbuf_alloc() still uses the objcache w/ its kva mappings. This
removes objcache calls from the critical path.
* The x86-64 lwbuf_alloc()/lwbuf_free() functions are now inlines (ALL x86-64
lwbuf functions are now inlines).
Matthew Dillon [Wed, 19 Jan 2011 22:11:10 +0000 (14:11 -0800)]
kernel - Fix deadlock assertion panic with mmap/read combos
* Normally the uiomove() is called with the buffer locked. When
uiomove()ing into mmap'd memory this can cause a lock recursion and
panic, or a deadlock.
* Fix the problem by adding bqhold() and bqdrop() and adjusting the use
of the b_refs field to prevent the buffer from being invalidated,
allowing VFS VOP_READ operations to release the buffer prior to the
uiomove() into user memory.
* Adjust brelse() and getnewbuf() to do the right thing. Note that there
are two cases where b_refs can transition from 0->1. The VFS
release/uiomove case will only transition b_refs while the buffer is
locked while findblk() will transition b_refs at any time (while holding
the spin lock). We only care about retaining the VM pages in the
transition-during-locked case.
* Original problem reproducable with
grep -r --mmap SomeString /usr/pkgsrc
Reported-by: YONETANI Tomokazu <qhwt.dfly@les.ath.cx>
Matthew Dillon [Wed, 19 Jan 2011 19:12:47 +0000 (11:12 -0800)]
kernel - Use atomic ops for devstat's ds->busy_count field.
* Use atomic ops to manage the busy_count field as these functions can
be called MP.
* This should avoid negative busy_count transitions due to MP races on the
field.
Reported-by: Peter Avalos <peter@theshell.com>
Sascha Wildner [Wed, 19 Jan 2011 09:31:01 +0000 (10:31 +0100)]
kernel: Some more style fixes.
Sascha Wildner [Wed, 19 Jan 2011 09:23:22 +0000 (10:23 +0100)]
cd9660: Style fix.
Sascha Wildner [Mon, 17 Jan 2011 22:42:38 +0000 (23:42 +0100)]
libc: Fix warnings fallout from the change to CSTD=gnu99.
Sascha Wildner [Mon, 17 Jan 2011 20:32:02 +0000 (21:32 +0100)]
groff: Raise WARNS to 1.
Sascha Wildner [Mon, 17 Jan 2011 20:31:47 +0000 (21:31 +0100)]
devd(8): Raise WARNS to 5 and fix a warning.
Sascha Wildner [Mon, 17 Jan 2011 20:17:50 +0000 (21:17 +0100)]
lib/libncp: Silence some warnings that cropped up with CSTD=gnu99.
Sascha Wildner [Mon, 17 Jan 2011 20:11:04 +0000 (21:11 +0100)]
compile_et(1): Set CSTD to gnu89 (compile_et(1) is in contrib/).
Sepherosa Ziehau [Mon, 17 Jan 2011 15:17:24 +0000 (23:17 +0800)]
x86_64 intr: Support upto 192 IDT entries in ipl and intr vector asm code
Most parts are same as following commit on i386:
c263294b570bc9641fe5184b066fd801803046a4
except that 64bits mask array is used.
Things like (1UL << $const_val) does not work in .s file; currently
"movq $1,%rcx; shlq $const_val,%rcx;" is used instead.
Sepherosa Ziehau [Mon, 17 Jan 2011 13:46:11 +0000 (21:46 +0800)]
icu: Remove unused macros
Sepherosa Ziehau [Mon, 17 Jan 2011 08:54:49 +0000 (16:54 +0800)]
x86_64 madt: Remove unapplicable comment
Sascha Wildner [Mon, 17 Jan 2011 08:18:51 +0000 (09:18 +0100)]
NELEM: Take back the sys/boot part. We'll care about that later.
Sascha Wildner [Mon, 17 Jan 2011 08:03:15 +0000 (09:03 +0100)]
kernel: Use NELEM() where we can.
Sascha Wildner [Mon, 17 Jan 2011 05:16:09 +0000 (06:16 +0100)]
kernel: Use NELEM() in a few more places and nuke private arysize()'s.
Sepherosa Ziehau [Mon, 17 Jan 2011 02:15:37 +0000 (10:15 +0800)]
udp ctlport: We should call udp_addrcpu() instead of INP_MPORT_HASH_UDP()
This is the leftover after we serialize UDP user space output to CPU0
Reported-by: pavalos@
Sascha Wildner [Sun, 16 Jan 2011 22:44:07 +0000 (23:44 +0100)]
Unbreak buildworld.
Sascha Wildner [Sun, 16 Jan 2011 19:52:02 +0000 (20:52 +0100)]
Set CSTD back to gnu89 for tip(1) too (this needs cleanup).
Sascha Wildner [Sun, 16 Jan 2011 19:51:22 +0000 (20:51 +0100)]
Set CSTD back to gnu89 again for various contrib/ related stuff.
Sascha Wildner [Sun, 16 Jan 2011 09:29:19 +0000 (10:29 +0100)]
Revert "Lower some WARNS from 1 to 0. This needs more work."
This reverts commit
e49a8a3866b68864b4b89ab47dbe8f878d7abaa2.
Leave the WARNS where they are. We'll lower CSTD instead.
Sascha Wildner [Sun, 16 Jan 2011 09:43:20 +0000 (10:43 +0100)]
vi(1): Add some missing CLEANFILES.
Sascha Wildner [Sun, 16 Jan 2011 08:28:06 +0000 (09:28 +0100)]
Pluck options which are not applicable to C++ out of the C++ command line.
-Wnested-externs
-W*-prototypes
-Wno-pointer-sign
-Wold-style-definition
Also, ignore -std=... for the moment. It's set globally to gnu99 now and
that leads to warnings in C++ compilation. We'll ponder other ways to cope
with this later.
This commit will allow us to raise WARNS further for C++.
Taken-from: FreeBSD
Sascha Wildner [Sun, 16 Jan 2011 07:06:43 +0000 (08:06 +0100)]
Use CSTD and remove local CSTD settings which are no longer needed.
Also, stick with gnu89 for lib/liblvm and libexec/tcpd for now.
Sascha Wildner [Sun, 16 Jan 2011 04:55:31 +0000 (05:55 +0100)]
Set the C standard we use for compiling userland to gnu99.
Sascha Wildner [Sun, 16 Jan 2011 04:53:01 +0000 (05:53 +0100)]
Lower some WARNS from 1 to 0. This needs more work.
Sascha Wildner [Sun, 16 Jan 2011 04:51:04 +0000 (05:51 +0100)]
cam: Fix for missing prototypes (userland).
Sascha Wildner [Sun, 16 Jan 2011 04:49:11 +0000 (05:49 +0100)]
libkern: Add missing prototype for userland.
Sascha Wildner [Sun, 16 Jan 2011 04:46:06 +0000 (05:46 +0100)]
symorder(1): Fix for missing prototypes.
Sascha Wildner [Sun, 16 Jan 2011 04:44:50 +0000 (05:44 +0100)]
ppp(8): Fix for missing prototypes.
Sascha Wildner [Sun, 16 Jan 2011 04:39:44 +0000 (05:39 +0100)]
kzip(8): Clean up a bit and raise WARNS to 2.
Sascha Wildner [Sun, 16 Jan 2011 04:26:19 +0000 (05:26 +0100)]
rpc.statd(8): Fix for missing prototypes.
Sascha Wildner [Sun, 16 Jan 2011 04:24:56 +0000 (05:24 +0100)]
rpc.ypxfrc(8): Fix for missing prototypes.
Sascha Wildner [Sun, 16 Jan 2011 04:18:09 +0000 (05:18 +0100)]
rtadvd(8): Fix for missing prototypes.
Sascha Wildner [Sun, 16 Jan 2011 04:12:56 +0000 (05:12 +0100)]
fsck(8): Fix for missing prototypes.
Sascha Wildner [Sun, 16 Jan 2011 04:09:23 +0000 (05:09 +0100)]
liby: Add yyparse() prototype.
Sepherosa Ziehau [Sun, 16 Jan 2011 08:08:42 +0000 (16:08 +0800)]
x86_64 apic: Remove no longer applicable comment
Sepherosa Ziehau [Sun, 16 Jan 2011 08:07:22 +0000 (16:07 +0800)]
x86_64 intr: Don't pass the vector name to INTR_HANDLER
Sepherosa Ziehau [Sun, 16 Jan 2011 08:02:35 +0000 (16:02 +0800)]
x86_64 intr: We no longer have the fast version of intr vectors
Sepherosa Ziehau [Sun, 16 Jan 2011 07:50:47 +0000 (15:50 +0800)]
x86_64 icu: Strip extra blank lines
Sepherosa Ziehau [Sun, 16 Jan 2011 07:47:58 +0000 (15:47 +0800)]
x86_64 icu: Remove no onger applicable comment
Sepherosa Ziehau [Sun, 16 Jan 2011 07:41:01 +0000 (15:41 +0800)]
x86_64 intr_abi: Reindent
Sepherosa Ziehau [Sun, 16 Jan 2011 06:12:53 +0000 (14:12 +0800)]
ioapic: Use shll in APIC_INTR{DIS,EN}
Sepherosa Ziehau [Sat, 15 Jan 2011 15:30:25 +0000 (23:30 +0800)]
ioapic: macro renaming
Consistent with i386. No functional changes
Sascha Wildner [Sun, 16 Jan 2011 06:42:47 +0000 (07:42 +0100)]
dloader: Add missing prototype.
Sascha Wildner [Sun, 16 Jan 2011 03:24:04 +0000 (04:24 +0100)]
Move CSTD out of NO_WARNS (i.e., it shall apply too if NO_WARNS is set).
Sascha Wildner [Sat, 15 Jan 2011 12:23:49 +0000 (13:23 +0100)]
twa(4): Fix some __printflike() issues I overlooked previously.
Sepherosa Ziehau [Sat, 15 Jan 2011 12:02:34 +0000 (20:02 +0800)]
tcp: Don't panic if persist timer is started in CLOSED and TERMINATING
Persistent timer could go wrong only when SYN is to be turned on in
tcp_output(), however, CLOSED and TERMINATING states' flags does not
contain SYN at all. And starting persistent timer in CLOSED state is
absolutely valid, e.g. from tcp_drop()
Reported-by: dillon@
Sascha Wildner [Sat, 15 Jan 2011 02:43:46 +0000 (03:43 +0100)]
Add __printflike's where possible and fix all related bugs & issues.
Matthew Dillon [Fri, 14 Jan 2011 04:56:05 +0000 (20:56 -0800)]
kernel - Fix maximum file size limit for NFSv3
* Remove throwback from an older era where the buffer cache used 32 bit
block numbers.
* Maximum file size for NFSv3 is not 2^63-1
Reported-by: Rick Macklem <rmacklem@uoguelph.ca>
Matthew Dillon [Fri, 14 Jan 2011 02:44:22 +0000 (18:44 -0800)]
kernel - Fix an inefficiency in wait*()
* The exit code was not taking into account the fact that a parent
process might race an exiting child, causing a tsleep(... "lwpzomb", hz)
to delay an entire second.
Issue the proper wakeup in all cases where p->p_nthreads drops to 1 or 0.
* Improves buildworld performance a little.
YONETANI Tomokazu [Thu, 13 Jan 2011 00:14:35 +0000 (09:14 +0900)]
pf: statekey needs to be initialized for IPv6, too.
This fixes the panic described in issue1956.
Matthew Dillon [Wed, 12 Jan 2011 20:12:04 +0000 (12:12 -0800)]
Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly