dim [Sat, 25 Jan 2014 16:35:56 +0000 (16:35 +0000)]
Pull in r195679 from upstream llvm trunk:
Don't use nopl in cpus that don't support it.
Patch by Mikulas Patocka. I added the test. I checked that for cpu names that
gas knows about, it also doesn't generate nopl.
The modified cpus:
i686 - there are i686-class CPUs that don't have nopl: Via c3, Transmeta
Crusoe, Microsoft VirtualBox - see
https://bbs.archlinux.org/viewtopic.php?pid=775414
k6, k6-2, k6-3, winchip-c6, winchip2 - these are 586-class CPUs
via c3 c3-2 - see https://bugs.archlinux.org/task/19733 as a proof that
Via c3 and c3-Nehemiah don't have nopl
ache [Sat, 25 Jan 2014 02:16:09 +0000 (02:16 +0000)]
Bad timespec_subtract() calculations produce negative tv_nsec on i386
which cause EINVAL returned from nanosleep() which cause loop in
cron_sleep() and making all cron jobs to start about 30 seconds earlier
(which cause f.e. logfiles rotation by newsyslog delayed by 1 hour).
Use simple and proved calculations from kernel's timespecsub() instead.
andrew [Fri, 24 Jan 2014 20:51:56 +0000 (20:51 +0000)]
Correct the alignment of sp through functions that use UNWINDSVCFRAME. We
were incorrectly adding the trap frame padding to the stack pointer after
reading it's value and unaligning it.
alc [Fri, 24 Jan 2014 19:08:42 +0000 (19:08 +0000)]
In an effort to diagnose possible corruption of struct vm_page on some
sparc64 machines make the page queue assert in vm_page_dequeue() more
precise. While I'm here switch the page lock assert to the newer style.
asomers [Fri, 24 Jan 2014 18:01:46 +0000 (18:01 +0000)]
Fix the build so -DNO_TESTS is passed in various phases that don't
require tests in order to build or install. Crucially, don't try to
install tests during the lib32 install phase. This commit supersedes
r261081, which fixed the lib32 install phase problem, but didn't fix
other phases.
Submitted by: Garrett Cooper
Reviewed by: sjg
MFC after: 13 days
jilles [Fri, 24 Jan 2014 16:40:51 +0000 (16:40 +0000)]
sh: Solve the alias recursion problem in a less hackish way.
Add the space to avoid alias recursion when the alias is expanded, not when
it is added.
As a result, displaying an alias via command -v, command -V or type no
longer erroneously appends a space. Adjust the tests so they now require
this bug to be absent.
avg [Fri, 24 Jan 2014 15:04:02 +0000 (15:04 +0000)]
dtrace: remove unexplained 16MB limitation from dt_alloc/dt_zalloc
The limitation was introduced in r178556 without any note or comment.
It seems pretty artificial and now it leads to problems like the following:
$ dtrace -x bufsize=17m -n ...
dtrace: processing aborted: Memory allocation failure
OpenSolaris and illumos never had this limitation.
jhibbits [Fri, 24 Jan 2014 02:57:00 +0000 (02:57 +0000)]
Fix 32-bit signal handling on ppc64. This was broken when the PSL_USERSTATIC
macro was changed. Since copying 64-bit srr1 into 32-bit srr1 drops the upper
32 bits, any bits set in the context were dropped, meaning the context check
fails. Since 32-bit set_context can't change those bits anyway, copy the ones
from the current context (td->td_frame) before calling set_context().
ian [Fri, 24 Jan 2014 00:42:18 +0000 (00:42 +0000)]
Be more robust with malformed interrupt config data. Instead of crashing
or going into a near-infinite loop, warn and make potentially-reasonable
assumptions.
ae [Thu, 23 Jan 2014 19:55:02 +0000 (19:55 +0000)]
In gctl_copyin() remove unused error variable.
geom_alloc_copyin() can't return ENOMEM, so describe its fail as bad
control request. Add check for NULL pointer in gctl_dump(), since it
can be NULL when geom_alloc_copyin() failed.
ae [Thu, 23 Jan 2014 19:31:17 +0000 (19:31 +0000)]
Fix typo in r261084.
Add to the gctl_error() an ability to specify error description even
if numeric error code is already specified. Also by default set
error code to EINVAL.
asomers [Thu, 23 Jan 2014 17:26:28 +0000 (17:26 +0000)]
Replace the old unix_seqpacket and unix_seqpacket_exercise tests, which
were a little broken and not automatable, with unix_seqpacket_test.
It's coverage is a superset of the old tests and it uses ATF. It
includes test cases for bugs kern/185813 and kern/185812.
neel [Thu, 23 Jan 2014 06:06:50 +0000 (06:06 +0000)]
Set "Interrupt Window Exiting" in the case where there is a vector to be
injected into the vcpu but the VM-entry interruption information field
already has the valid bit set.
Pointed out by: David Reed (david.reed@tidalscale.com)
mav [Wed, 22 Jan 2014 22:19:53 +0000 (22:19 +0000)]
Mostly revert r260267 and hopefully really fix the original problem.
The latest draft of SBC-3 tells: "A MAXIMUM UNMAP LBA COUNT field set to
a non-zero value indicates the maximum number of LBAs that may be unmapped
by an UNMAP command." To me it does not sound like that limit is set per
single descriptor, but rather per all command. And I have at least one
device that behaves exactly that way. This patch fixes the problem there.
imp [Wed, 22 Jan 2014 22:01:29 +0000 (22:01 +0000)]
Clean up HL201 config (for the hot-e 201 and 101 models from thinlinx).
Make comments match parameters
Add options for early printf so we get regression build testing on it.
Add preview of options for FDT support coming soon (I hope)
imp [Wed, 22 Jan 2014 21:20:08 +0000 (21:20 +0000)]
Implement generic support for early printf. Thought I can't find the
paper trail now, this patch is similar to one posted for one of the
preliminary versions of a new armv6 port. I took them and made them
more generic. Option not enabled by default since each board/port has
to provide its own eputc, and possibly do other things as well...
pfg [Wed, 22 Jan 2014 19:09:41 +0000 (19:09 +0000)]
ext2fs: fix logic error in the previous change.
Use the bitwise negation instead of bogus boolean negation and move
the flag manipulation with the assignment.
Fix some grammatical errors introduced in the same change.
jhb [Wed, 22 Jan 2014 16:59:53 +0000 (16:59 +0000)]
Generate /var/db/services.db during 'make distribution' so that it is
present during new installs. Update etcupdate and mergemaster to
ignore the generated file.
hselasky [Wed, 22 Jan 2014 09:57:26 +0000 (09:57 +0000)]
- Fix some non-portable code with regard to endianness. Don't use memmove().
- Fix a range check for maximum transmit length.
- Fix read from missing field when transmitting data.
hselasky [Wed, 22 Jan 2014 07:48:39 +0000 (07:48 +0000)]
Ensure that the DMA delay does not get rounded down to zero ticks when
a timeout value of a single tick is given. With FreeBSD-10 and newer
the current system time is used as a starting point, and the minimum
callout time of a single tick will be guaranteed. This patch mostly
affect the DMA delay timeouts, which are typically in the range from
0.125 to 2ms.
neel [Wed, 22 Jan 2014 04:03:11 +0000 (04:03 +0000)]
Handle a VM-exit due to a NMI properly by vectoring to the host's NMI handler
via a software interrupt.
This is safe to do because the logical processor is already cognizant of the
NMI and further NMIs are blocked until the host's NMI handler executes "iret".
tychon [Wed, 22 Jan 2014 01:56:49 +0000 (01:56 +0000)]
Increase the block-layer backend maximum number of requests to match
the AHCI command queue depth. This allows a slew of commands issued
by a Linux guest to be absorbed without error.
pfg [Tue, 21 Jan 2014 19:06:29 +0000 (19:06 +0000)]
ext2fs: Translate the EXT4_EXTENTS and EXT4_INDEX to the inode flags.
r260545 cleared the inode flags to fix corruption problems but
we still need to pass some EXT4 flags for the ext4 read-only
mode. None of these attributes has an equivalent in FreeBSD and
are uninteresting for the system utilities so they should be
innaccessible in ext2_getattrib().
Note: we also use EXT4_HUGE_FILE but we use it directly from the
dinode structure so it is not necessary to translate it,
jhb [Tue, 21 Jan 2014 03:14:19 +0000 (03:14 +0000)]
- Reuse legacy_pcib_(read|write)_config() methods in the QPI pcib driver.
- Reuse legacy_pcib_alloc_msi{,x}() methods in the QPI and mptable pcib
drivers.