Sascha Wildner [Wed, 29 Sep 2010 14:42:26 +0000 (16:42 +0200)]
dsched.9: Fix typo
Sascha Wildner [Wed, 29 Sep 2010 14:41:23 +0000 (16:41 +0200)]
Add a dsched(9) manual page.
Submitted-by: alexh
Sascha Wildner [Wed, 29 Sep 2010 14:23:02 +0000 (16:23 +0200)]
mutex.9: Adjust .Nm a bit and fix FILES section.
Venkatesh Srinivas [Wed, 29 Sep 2010 04:59:53 +0000 (21:59 -0700)]
Add a SYSINIT(9) manpage describing the SYSINIT macro.
Matthew Dillon [Wed, 29 Sep 2010 01:20:01 +0000 (18:20 -0700)]
kernel - Report actual real memory during kernel boot
* Calculate and report the actual real memory reported by the BIOS,
only counting memory types and ignoring other mapping types and holes.
* Report this value instead of the highest mapped address, reducing
user confusion. e.g. on a machine with 8G of ram:
real memory =
8858370048 (8448 MB) (before change)
avail memory =
7597334528 (7245 MB)
real memory =
8049428480 (7676 MB) (after change)
avail memory =
7597334528 (7245 MB)
real memory =
8452081664 (8060 MB) (after changing BIOS video 512M->128M)
avail memory =
7987879936 (7617 MB)
This all makes sense if you think about. The MB has on-board video and
the BIOS reserves video memory for it, so after taking that into account
the BIOS is really only eating around 4MB of ram for itself. The
"real memory" now correctly reflects memory remaining after the BIOS
took its cut whereas originally (the 8.4GB) was really more a reflection
of the highest mapped address, memory + IO/bus-space combined, and
did not accurately reflect how much memory the BIOS was handing to the
kernel.
Matthew Dillon [Tue, 28 Sep 2010 23:16:05 +0000 (16:16 -0700)]
kernel - Move action_list out of vm_page, and change flags from 16->32 bits
* vm_page->action_list removed, saving 16 bytes per vm_page on x86_64
(8 on i386). Instead we add a flag to vm_page->flags, PG_ACTIONLIST,
and store the action registrations in a global hash table.
* Change vm_page->flags from a 16 to 32 bits, plus pad, adding 4 bytes
to the vm_page structure.
* x86_64 sizeof(struct vm_page) goes from 136 to 128, keeping in mind
that it grew from 132 to 136 with the addition of ku_pagecnt. So,
net-net, we have still managed to decrease the size of struct vm_page
by a little.
Matthew Dillon [Tue, 28 Sep 2010 22:46:34 +0000 (15:46 -0700)]
kernel - Increase MSGBUF_SIZE from 64K to 128K
* MSGBUF_SIZE is too small to hold a verbose boot, bump the default
up to 128K.
Matthew Dillon [Tue, 28 Sep 2010 22:42:55 +0000 (15:42 -0700)]
kernel - Greatly reduce kernel memory use for x86_64
* Remove the kmemusage array entirely and instead store ku_pagecnt
in the vm_page structure.
This allows x86_64 to boot with 128G of KVM without eating tons of
real memory, in addition to another recent commit which reduced
real memory use w/ large KVM spaces.
Reported-by: John Marino
Peter Avalos [Tue, 28 Sep 2010 21:48:42 +0000 (11:48 -1000)]
UPGRADING: Add a note about OpenSSL SHLIB_MAJOR bump.
Sascha Wildner [Tue, 28 Sep 2010 19:44:33 +0000 (21:44 +0200)]
Fix buildkernel when pfsync(4) is compiled into an x86_64 kernel.
Reported-by: Dheeraj Reddy <dheerajr@gmail.com>
Sascha Wildner [Tue, 28 Sep 2010 19:43:43 +0000 (21:43 +0200)]
Make acpi(4) compilable into an x86_64 kernel.
Note that this doesn't mean that we recommend building ACPI into the
kernel in any way. But it will still be needed once we get to having
some kind of LINT config for x86_64.
Tested-by: Dheeraj Reddy <dheerajr@gmail.com>
Sascha Wildner [Tue, 28 Sep 2010 01:18:50 +0000 (03:18 +0200)]
installer: Raise WARNS to 6 and fix resulting warnings.
Sascha Wildner [Tue, 28 Sep 2010 00:44:52 +0000 (02:44 +0200)]
installer: Add back comment.
Sascha Wildner [Tue, 28 Sep 2010 00:36:43 +0000 (02:36 +0200)]
installer: Adjustments to the sources.conf file.
/cdrom is not part of our hierarchy and /usr/src only gets created in
the running system.
While here, remove the code that handles falling back to an internal
table since we can rely on /usr/share/installer/sources.conf to exist
always.
Peter Avalos [Mon, 27 Sep 2010 22:15:42 +0000 (12:15 -1000)]
Bump SHLIB_MAJOR for libssl and libcrypto.
The latest OpenSSL upgrade caused some issues with existing 3rd-party
binaries. To get those programs to use the new OpenSSL, they'll need to
be relinked against the new libraries.
Matthew Dillon [Mon, 27 Sep 2010 16:07:29 +0000 (09:07 -0700)]
kernel - Fix incorrect vfs.cache sysctls (x86_64)
* The vfs.cache.numneg and vfs.cache.numcache sysctls were being defined
as unsigned longs when they are ints
* Remove duplicate debug. sysctls for numneg/numcache.
Matthew Dillon [Mon, 27 Sep 2010 15:15:31 +0000 (08:15 -0700)]
kernel - Fix NFS server deadlock
* _cache_cleanneg() was calling cache_zap() with the non-blocking argument
set to FALSE, causing numerous out-of-order locking situations which
could march up the topology and cause a deadlock.
Fixed by calling cache_zap() with the non-blocking argument set to TRUE.
* This was particularly obvious when running a buildworld with a loopback
NFS mount for /usr/obj, which generates lots of negative cache activity,
but theoretically could cause deadlocks even without using NFS.
Reported-by: YONETANI Tomokazu <qhwt.dfly@les.ath.cx>
Sascha Wildner [Mon, 27 Sep 2010 14:11:41 +0000 (16:11 +0200)]
installer: Slightly change the item order in the configure menu.
Move the "Set keyboard map" item before the "Set root password" item
in order to prevent accidental foot-shooting.
Submitted-by: matthias
Sascha Wildner [Mon, 27 Sep 2010 11:48:11 +0000 (13:48 +0200)]
cryptsetup: Port API test to DragonFly.
Sascha Wildner [Mon, 27 Sep 2010 01:17:03 +0000 (03:17 +0200)]
Add libcryptsetup and libluks.
Sascha Wildner [Mon, 27 Sep 2010 11:54:06 +0000 (13:54 +0200)]
liblvm: Minor cleanup in the Makefile.
Matthias Schmidt [Mon, 27 Sep 2010 07:01:54 +0000 (09:01 +0200)]
UPDATING - Remove CVS Id
This could confuse users as the date of the ID is in the past. Adapt style
while here.
Robert Garrett [Mon, 27 Sep 2010 03:31:24 +0000 (20:31 -0700)]
test commit
Justin C. Sherrill [Mon, 27 Sep 2010 02:02:30 +0000 (19:02 -0700)]
Added notes about BIND moving to pkgsrc version for <2.7 -> 2.8 upgrades.
Peter Avalos [Sun, 26 Sep 2010 22:38:45 +0000 (12:38 -1000)]
Update build for OpenSSL-1.0.0a.
-Add Camellia, CMS, GOST, MDC-2, modes, SEED, ts, and Whirlpool. mdc2
is freely available since its patent expired in 2002.
-Remove md2 for CVE-2009-2409.
-See CHANGES for the enitire changeset.
Peter Avalos [Sun, 26 Sep 2010 22:19:45 +0000 (12:19 -1000)]
Merge branch 'vendor/OPENSSL'
Peter Avalos [Wed, 22 Sep 2010 11:21:58 +0000 (01:21 -1000)]
Import OpenSSL-1.0.0a.
Matthew Dillon [Sun, 26 Sep 2010 21:47:28 +0000 (14:47 -0700)]
vkernel - Add support for cdevs as virtual disks (2)
* I missed a spot where the lseek() hack is needed. Fixed.
Matthew Dillon [Sun, 26 Sep 2010 18:46:20 +0000 (11:46 -0700)]
kernel - Rearrange pmap_growkernel() and fix up x86_64's pmap_growkernel()
* Rearrange pmap_growkernel() to pass an address range instead of just an
end address.
* vm_map() no longer retries after calling pmap_growkernel(), the function
either succeeds or panics.
* x86_64 - kldloading modules after system boot no longer populates 128GB
worth of page tables (which eats ~256MB of ram) in order to push
kernel_vm_end past KERNBASE.
Instead, any kldloads into the space beyond KERNBASE, which is required
to be able to link them into the kernel due to 32-bit PC-relative
addressing, will populate just the required page tables and will not
bump up kernel_vm_end.
* Fixes a panic which can occur well after boot when kldload'ing the first
module, if 256MB worth of free pages is not instantly available.
* Saves us 256M of ram on x86_64.
Matthias Schmidt [Sun, 26 Sep 2010 17:27:44 +0000 (19:27 +0200)]
df fortune - Bring some entries closer to reality
Matthias Schmidt [Sun, 26 Sep 2010 14:04:30 +0000 (16:04 +0200)]
pkg_search - Replace avalon with mirror-master
and remove CVS-Id while here
Peter Avalos [Sun, 26 Sep 2010 08:37:01 +0000 (22:37 -1000)]
OpenSSL: Set the date for manual pages to the release date.
Matthew Dillon [Sun, 26 Sep 2010 04:00:04 +0000 (21:00 -0700)]
vkernel - Add support for cdevs as virtual disks
* Allow a cdev to be directly specified as a virtual disk.
Peter Avalos [Sun, 26 Sep 2010 02:00:01 +0000 (16:00 -1000)]
libcrypto: There's no need to test for WANT_IDEA twice.
Peter Avalos [Sun, 26 Sep 2010 01:53:50 +0000 (15:53 -1000)]
OpenSSL: Define little endian on x86_64.
We only support little endian archs, so remove the test, and just put it
with the rest of CFLAGS.
Sascha Wildner [Sun, 26 Sep 2010 00:40:18 +0000 (02:40 +0200)]
installer: Suppress . in the hostname if the user didn't specify a domain.
Submitted-by: matthias
Peter Avalos [Sun, 26 Sep 2010 00:08:24 +0000 (14:08 -1000)]
OpenSSL: Eliminate some options from CFLAGS.
These are already included in opensslconf.h, so there's no need to put
them in CFLAGS too.
Matthew Dillon [Sat, 25 Sep 2010 23:10:48 +0000 (16:10 -0700)]
kernel - Fix rare token overwrite race
td_toks_stop was being decremented prior to releasing the token reference
and cleaning up the optional mp lock. This left a very small
one-instruction opening where the following sequence of events could
occur:
* While releasing the ref in 'if (tok->t_ref == ref) tok->t_ref = NULL;'
a fast interrupt could come along, acquire a token reusing our ref,
then release it.
* A thread on another cpu then successfully acquires the now released
token.
* The fast interrupt returns our interrupted thread resumes with the
execution of 'tok->t_ref = NULL;'.
* The other thread asserts on the missing token ref or otherwise performs
actions which assume the token is still held when it is not due to
the first thread blowing it up.
Reported-by: Francois Tigeot <ftigeot@wolfpond.org>
Matthew Dillon [Sat, 25 Sep 2010 20:17:31 +0000 (13:17 -0700)]
docs - Adjust swapcache.8
* Clarify the lack of clarity on read-disturb effects. Expand the
write endurance section a bit incorporating the results from long-term
testing on pkgbox64.
Jan Lentfer [Sat, 25 Sep 2010 19:23:40 +0000 (21:23 +0200)]
Add prototype for devfs_assume_knotes()
Fixes buildkernel problem
Matthew Dillon [Sat, 25 Sep 2010 17:43:55 +0000 (10:43 -0700)]
kernel - Bring devfs_assume_knotes() uptodate and fix panic
* devfs_assume_knotes() was blindly transfering the knotes without
properly acquiring their soft-lock.
The problem was easily reproducable by running 'moused -p /dev/ums0'
and then unplugging the mouse.
* Move the core of the routine into a new procedure in kern_event.c
called knote_assume_knotes() which properly acquires and releases
the underlying knotes.
Matthew Dillon [Sat, 25 Sep 2010 14:58:12 +0000 (07:58 -0700)]
HAMMER VFS - Fix two ip->vp inode/vnode races
* nrename and nremove attempt to dereference ip->vp. Because ip->vp has
no other references in these code paths the operation can race and
either assert or panic on a null-pointer dereference.
Fix by formally acquiring the vnode before trying to dereference it.
* All other cases are passed a referenced vnode or properly acquire it
(e.g. nresolve), and did not have this issue.
Peter Avalos [Sat, 25 Sep 2010 11:21:43 +0000 (01:21 -1000)]
OpenSSL: Fix includes insanity.
Use INCS instead of the hard-to-understand and rustic stuff that was
there.
Matthias Schmidt [Sat, 25 Sep 2010 07:20:19 +0000 (09:20 +0200)]
Merge branch 'master' of git://git.dragonflybsd.org/dragonfly
Matthias Schmidt [Sat, 25 Sep 2010 07:17:09 +0000 (09:17 +0200)]
pkg_radd - Minor changes for script and man page
- chlamydia is down, so rephrase the man page with some more generic
text
Reported-by: Przemyslaw Pawelczyk <pp_o2@o2.pl>
- Change URL from avalon to mirror-master in pkg_radd.sh
Peter Avalos [Sat, 25 Sep 2010 06:59:38 +0000 (20:59 -1000)]
Fix typo in last commit.
Peter Avalos [Sat, 25 Sep 2010 06:24:48 +0000 (20:24 -1000)]
Fix WANT_IDEA knob.
I broke this in my last OpenSSL import. Add a note to README.DRAGONFLY
to automatically generate opensslconf.h when Configure is run, and
adjust Makefile.inc to compensate for the generated code.
Matthew Dillon [Sat, 25 Sep 2010 05:00:28 +0000 (22:00 -0700)]
kernel - Remove debugging kprintf
* Remove "td %p (%s) unexpectedly rescheduled" from the tsleep() path.
This case is still undesired but it can happen through normal operation
due to explicit lwkt_schedule()'s or delayed schedules from interlocked
tsleep()s. Don't kprintf a warning when it happens any more.
Matthew Dillon [Sat, 25 Sep 2010 01:01:25 +0000 (18:01 -0700)]
network - NFS Stability / races
* Fix additional races in the upcall interactions which can cause
a nfsd to not get woken up when it should.
* Medium revamp of the SLP_* flags.
* Add NFSRV_RECLIMIT() macro and do a better job limiting the number
of pending records taken off a socket.
* Fix a memory leak in the M_NFSSVC kmalloc pool. Each time the
server lost a socket it leaked a little memory. Now it does not.
Matthew Dillon [Fri, 24 Sep 2010 17:01:12 +0000 (10:01 -0700)]
net80211 - Fix missing rcvif assignment in ieee80211_fragment()
* When the 80211 code decides it must fragment a packet for the logical
device layer the pkthdr.rcvif for the fragments must be copied from
the original, otherwise the underlying device will panic trying to
locate the node.
* Untested but hopefully fixes an issue reported with wpi.
Matthew Dillon [Fri, 24 Sep 2010 16:58:09 +0000 (09:58 -0700)]
network - Restart the callout timer when setting TCP_FASTKEEP
* When TCP_FASTKEEP is enabled we must reload the callout with the shorter
timeout. If we allow the longer timeout to expire and the connection
remains idle the tcp connection will be dropped when the longer timeout
expires since it will have exceeded the maximum calculation.
* Fixes noisy but otherwise benign NFS messages on the console.
* Abstract the tcp activity function into tcp_timer_keep_activity() so
we can call it from both usrreq and tcp_input.
Nuno Antunes [Fri, 24 Sep 2010 16:24:26 +0000 (17:24 +0100)]
Revert part of the previous commit.
* 'Iff' is the shortened version of 'if and only if'.
See http://en.wikipedia.org/wiki/If_and_only_if.
Pointed-out-by: swildner@
Nuno Antunes [Fri, 24 Sep 2010 16:11:58 +0000 (17:11 +0100)]
Fix typos in share/mk/bsd.README.
* The variable name is DPADD not SRCLIB.
* Correctly spell 'if'.
Matthew Dillon [Fri, 24 Sep 2010 15:44:20 +0000 (08:44 -0700)]
kernel - Close big race in kqueue
* Refactor the KN_PROCESSING abstraction. Remove shortcuts and use it
in ALL knote-handling situations. One place in the EV_DELETE handling
was broken and one or two other places were not handling REPROCESS
requests properly.
* Overnight buildworld -j 8 now succeeds with NFS mounted /usr/src. It
used to panic after a few runs with a kqueue-related assertion.
Joe Talbott [Fri, 24 Sep 2010 12:07:26 +0000 (08:07 -0400)]
UPDATING - Add a note about 2.6 -> 2.8/HEAD upgrade /boot requirements
Suggested-By: Steve O'Hara-Smith and Dennis Melentyev
Joe Talbott [Fri, 24 Sep 2010 00:53:08 +0000 (20:53 -0400)]
loader.conf(5) - Document 'fred_on_left' loader variable.
Joe Talbott [Thu, 23 Sep 2010 20:00:09 +0000 (16:00 -0400)]
dloader - Add Fred to the menu.
* 'fred_disable' in loader.conf reverts to original dloader menu.
* 'loader_color' in loader.conf is now supported again.
* 'fred_on_left' in loader.conf puts Fred on the left of the menu.
Discussed-With: Sascha Wildner
Suggested-By: Sascha Wildner
Suggested-By: Thomas Nikolajsen
Joe Talbott [Thu, 23 Sep 2010 19:59:15 +0000 (15:59 -0400)]
dloader - Add dvar_istrue() to test boolean variables.
* Accepts any form of 'yes', 'true', 'on', or '1' as true.
Sascha Wildner [Fri, 24 Sep 2010 11:15:32 +0000 (13:15 +0200)]
cryptsetup: In the tests, use /usr/bin/env for locating pkg binaries.
Sascha Wildner [Fri, 24 Sep 2010 09:32:25 +0000 (11:32 +0200)]
gnu/lib/Makefile: Clean up a bit.
Nuno Antunes [Fri, 24 Sep 2010 10:40:51 +0000 (11:40 +0100)]
test commit
Matthias Schmidt [Fri, 24 Sep 2010 10:13:14 +0000 (12:13 +0200)]
rc.conf(5) - Add information howto start wlan(4) devices
Obtained-From: FreeBSD
Matthew Dillon [Fri, 24 Sep 2010 07:16:06 +0000 (00:16 -0700)]
build - Clarify instalkernel requirements when upgrading /boot
* When upgrading a system from the old /boot format to the new /boot
format clarify the error message when someone tries to install a
new kernel onto an old /boot.
It now indicates specifically suggests doing a buildworld / installworld
sequence first.
Matthew Dillon [Fri, 24 Sep 2010 05:36:08 +0000 (22:36 -0700)]
network - Fix a sleep/wakeup race in NFS (server), implement faster keepalives
* Fix a sleep/wakeup MP race in the NFS server where the server can receive
data but fails to wakeup one of its nfsds.
* Set a faster keepalive timeout for NFS client and server. Currently
75 seconds (instead of 2 hours). This solves a problem when connectivity
is lost with the server for long enough that the server kills the
connection, or if the server fails while processing a nfs request
from the client.
If the client is stuck waiting for the reply it can wind up waiting
for the entire keepalive period before recovering, even if connectivity
with the server is re-established. This way the client will proactively
determine that the connection is dead within 75 seconds and re-establish
it.
* The value of the timeout is taken from net.inet.tcp.keepintvl
(instead of net.inet.tcp.keepalive), which defaults to 75 seconds
at the moment.
Matthew Dillon [Fri, 24 Sep 2010 05:35:16 +0000 (22:35 -0700)]
network - Add a tcp socket for faster keepalive timeouts
* Add a new socket opt, TCP_FASTKEEP, which enables faster keepalive
timeouts on a tcp socket. This will be used by NFS.
Matthew Dillon [Fri, 24 Sep 2010 02:59:32 +0000 (19:59 -0700)]
kernel - lapic pointer was still not quite correctly initialized
* A conditional in the new MADT code was bypassing the lapic pointer
mapping in certain circumstances, causing the machine to lockup in the
low level boot.
Matthew Dillon [Fri, 24 Sep 2010 00:24:53 +0000 (17:24 -0700)]
kernel - Close small race in kqueue
* Normalize the kn_status reprocessing code to close a race.
A knote_detach_and_drop() during a descriptor close can set
KN_DELETING and return, leaving a knote undergoing processing
by another thread marked deleted.
If the other thread is trying to execute a filter the filter can
wind up being run after the file pointer has been detached
from the knote, resulting in a panic.
* All KN_DELETING and KN_WAITING flags also now set KN_REPROCESS and
all KN_REPROCESS handling is dealt with the same way. The filter
is run if KN_REPROCESS is not set and if it is set any KN_DELETING
and KN_WAITING flags are dealt with before the filter is run.
Matthew Dillon [Fri, 24 Sep 2010 00:22:57 +0000 (17:22 -0700)]
boot - Rearrange dloader.menu a bit
* Rename some of the numbered options to lettered options. For example,
use 's' for single user boot, 'o' for booting kernel.old, and 'v' for
verbose boot.
Matthew Dillon [Fri, 24 Sep 2010 00:15:07 +0000 (17:15 -0700)]
kernel - Work through some memory leaks in dsched
* Add a uninitbufbio() function to complement initbufbio(). Also move
BUF_LOCKINIT() into initbufbio() and BUF_LOCKFREE() into uninitbufbio().
* There are several device drivers and other places where the struct buf
is still being allocated manually (verses using getpbuf()). These were
kfree()ing the buffer without dealing with e.g. dsched_exit_buf().
Have uninitbufbio() call dsched_exit_buf() and adjust the various manual
allocations/frees of struct buf to call uninitbufbio() before kfree()ing.
Also remove various manual calls to BUF_LOCKFREE() (which is now done
inside uninitbufbio()).
* This should hopefully deal with the memory leaks but there could be a
few left.
Reported-by: "Steve O'Hara-Smith" <steve@sohara.org>
Matthew Dillon [Thu, 23 Sep 2010 22:12:20 +0000 (15:12 -0700)]
kernel - Fix compile error w/last commit (unused var)
* Remove unused variable
Reported-by: Rumko
Matthew Dillon [Thu, 23 Sep 2010 19:53:47 +0000 (12:53 -0700)]
kernel - Add kqueue and fix chflags handling for tmpfs
* Implement kqueue ops for tmpfs so things like tail -f work properly.
* Redo all the chflags handling and checks to use the helper functions,
also getting ridding of the horribly broken FREAD/FWRITE tests on
node->tn_flags (which is the chflags flags, not the open flags).
This fixes chflags handling for tmpfs. Previously doing something
like 'make installkernel ... DESTDIR=<sometmpfs_target>' would fail
on re-install due to chflags not working properly.
* Fix a lost node unlock in tmpfs_chflags()
Reported-by: Nuno Antunes <nuno.antunes@gmail.com>
Matthew Dillon [Thu, 23 Sep 2010 17:14:33 +0000 (10:14 -0700)]
vkernel - Add physmem global
* The PF module assumes the 'physmem' global exists. For the moment make
sure it exists (add it to the vkernel targets).
Matthew Dillon [Thu, 23 Sep 2010 17:11:23 +0000 (10:11 -0700)]
network - Fix bug in redispatch after PF translation
* ip_input() checks M_HASH after PF/firewall processing and recalculates
the protocol port if necessary.
ip_input() was improperly restoring ip_len when doing the re-check,
causing TCP packets destined for the local host to be dropped. This
caused NAT translations with local terminations to fail.
Michael Neumann [Sun, 3 Oct 2010 14:27:41 +0000 (16:27 +0200)]
Merge branch 'master' of git://git.dragonflybsd.org/dragonfly
Michael Neumann [Sun, 3 Oct 2010 11:47:28 +0000 (13:47 +0200)]
lapic pointer was not correctly initialized
MADT enumeration works now on x86_64, tested on HP Compaq 6710b.
Michael Neumann [Sun, 3 Oct 2010 11:45:30 +0000 (13:45 +0200)]
MADT MP probe: Rework cpuid mapping, and cpuid to apicid mapping
Apply commit
223bf214b579c486a04c63795cdf9808b2e87b14 for x86_64.
Michael Neumann [Sun, 3 Oct 2010 10:56:17 +0000 (12:56 +0200)]
Fallback to ACPI MADT CPU enumeration, if BIOS does not provide MP table.
APIC_IO does not work with ACPI MADT CPU enumeration yet.
Apply commit
a26bbcd5fbded1b5c7fe0c79a0bea66716a15e33 for x86_64.
Michael Neumann [Sun, 3 Oct 2010 10:34:13 +0000 (12:34 +0200)]
Add mp_set_cpuids(), which links CPU's logical id to its apic id
Apply commit
a9112655463eccf48a9ba79a31a3d0accb24dad8 for x86_64.
Michael Neumann [Sun, 3 Oct 2010 10:29:32 +0000 (12:29 +0200)]
Implement ACPI MADT parsing
This will be used to enumerate CPUs if BIOS does not provide MP table.
Apply commit
85fd9f87e82e63599bd0293dc0112f8e26f8c3d6 for x86_x64.
Michael Neumann [Sat, 2 Oct 2010 16:03:35 +0000 (18:03 +0200)]
MP table related static function renaming
Apply commit
3aba8f737c990853a6105e77cfb2bcae59b217f8 for x86_x64.
Michael Neumann [Sat, 2 Oct 2010 15:49:35 +0000 (17:49 +0200)]
Get rid of global variable 'boot_cpu_id'
Apply commit
bd8aa7e222aa89ca27a5fe2e660f02ff942abb48 for x86_64.
Michael Neumann [Sat, 2 Oct 2010 15:45:39 +0000 (17:45 +0200)]
Correct mptable_pass[12]() function comment
Apply commit
0ae734b516f9975fd3ebfddd3748a028456668b6 for x86_64.
Michael Neumann [Sat, 2 Oct 2010 15:42:10 +0000 (17:42 +0200)]
mp_probe() -> mptable_probe()
Apply commit
cb00b5c4169432285c3acafc0e568ffba6a63d6e for x86_64.
Michael Neumann [Sat, 2 Oct 2010 15:39:10 +0000 (17:39 +0200)]
Change mptable mapping mechanism during mptable parsing.
Apply commit
981bebd11ba5507ab5887bb66ef52935ab350bed for x86_64.
Michael Neumann [Sat, 2 Oct 2010 14:21:33 +0000 (16:21 +0200)]
mp_probe(): Return physical address of the MP float pointer struct
Apply commit
aeb48299996ead8f1c328436e93b1836326c2bf6 for x86_64.
Michael Neumann [Sat, 2 Oct 2010 14:14:46 +0000 (16:14 +0200)]
Remove unused variable.
Michael Neumann [Sat, 2 Oct 2010 14:13:50 +0000 (16:13 +0200)]
Reorder MP probing
Apply commit
0f85efa20adbc0f9062a269bc2a7653b7b646683 for x86_64.
Michael Neumann [Sat, 2 Oct 2010 14:02:47 +0000 (16:02 +0200)]
Defer mptable_pass1() from mp_probe() to mp_enable()
Apply commit
f9c3b04f0dd9dd75702357d2bc8de782280c41df for x86_64.
Michael Neumann [Sat, 2 Oct 2010 13:55:56 +0000 (15:55 +0200)]
Save EBDA address before mp_probe()
Apply commit
1876681aa52fc75e5ac4945d4e316b2bff8b2aed for x86_64.
Michael Neumann [Sat, 2 Oct 2010 13:49:45 +0000 (15:49 +0200)]
mptable_pass1: Don't set ncpus to 1; it has already been setup.
Apply commit
bcf5ecdc02ba0af44b1d9b635393a27234d67b27 for x86_64.
Michael Neumann [Sat, 2 Oct 2010 13:47:23 +0000 (15:47 +0200)]
Remove mp_capable; mp_enable() uses cpu_apic_address.
Apply commit
50bc991ed5b5f45c656530ebf5fc8b44f24258ed for x86_64.
Michael Neumann [Sat, 2 Oct 2010 13:40:59 +0000 (15:40 +0200)]
Defer LAPIC checking from pmap_bootstrap() to mp_enable()
Similar to commit
8b5fcfe2eabb8f50c8211d71788097cd4bfd98ba
Sascha Wildner [Thu, 23 Sep 2010 09:43:06 +0000 (11:43 +0200)]
installer: Utilize dumpon(8) and swapoff(8) to turn off dump and swap.
Previously, the installer would block further installation attempts
once a swap was mounted. This was very inconvenient, e.g. when trying
to do multiple installs in one session.
It also never issued a 'dumpon off' causing dumping to be enabled
until rebooting. This caused issues upon reboot when a removable disk
(eSATA, for example) was unplugged before the reboot.
Now that we have swapoff(8), fix all these issues by turning off
dumping and swapping once the installation is completed (after
unmounting). Also, do this in a number of other places (where we
previously warned) to make sure it all gets deactivated again should
the user have cancelled a previous installation.
Matthew Dillon [Thu, 23 Sep 2010 03:05:23 +0000 (20:05 -0700)]
kernel - Fix bug in recent AHCI driver adjustment
* The recent adjustment of the driver to help deal with breakage in the
newer AMD chipsets also failed to check for pending commands after
a normal completion. Fix the brainfart.
Matthew Dillon [Thu, 23 Sep 2010 02:14:24 +0000 (19:14 -0700)]
kernel - unlock the syscons_lock spinlock around ttwakeup()
* ttwakeup() can block, we have to unlock syscons_lock() before calling it.
Matthew Dillon [Thu, 23 Sep 2010 01:00:03 +0000 (18:00 -0700)]
kernel - Enable EVFILT_WRITE for /dev/null, /dev/zero, etc
* Make both read and write kqfilters valid instead of just the read filter.
This fixes issues with programs which select on stdout for writing,
e.g. 'ssh -n "blah" > /dev/null'.
Matthew Dillon [Wed, 22 Sep 2010 21:58:53 +0000 (14:58 -0700)]
build - Workaround LINT issues
* Use an intermediate uint32_t variable to store a uint8_t length to avoid
a silly gcc warning-turned-error about a comparison always being true.
Reported-by: swildner
Sascha Wildner [Wed, 22 Sep 2010 19:32:24 +0000 (21:32 +0200)]
installer: Move /usr/pkg commands where they belong.
Sascha Wildner [Wed, 22 Sep 2010 18:16:26 +0000 (20:16 +0200)]
gcc44: Fix mis-usage of ||.
Matthew Dillon [Wed, 22 Sep 2010 16:23:57 +0000 (09:23 -0700)]
kernel - Remove some debugging kprintfs
* gone: Warning: vfsync_bp skipping dirty buffer 0x********
* gone: Warning: delete stale syncache for tp=0x********, sc=*
Pointers *'d out to protect their identities!