summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* MFC r263191:hselasky2014-06-131-0/+13
| | | | Add libusb_log_level enum.
* MFC 262615,262624:jhb2014-06-121-0/+7
| | | | | | Workaround an apparent bug in VMWare Fusion's nested VT support where it triggers a VM exit with the exit reason of an external interrupt but without a valid interrupt set in the exit interrupt information.
* MFC 261638,262144,262506,266765:jhb2014-06-1213-133/+402
| | | | | | | | | | | | | | | | | | | | | | | | | Add virtualized XSAVE support to bhyve which permits guests to use XSAVE and XSAVE-enabled features like AVX. - Store a per-cpu guest xcr0 register and handle xsetbv VM exits by emulating the instruction. - Only expose XSAVE to guests if XSAVE is enabled in the host. Only expose a subset of XSAVE features currently supported by the guest and for which the proper emulation of xsetbv is known. Currently this includes X87, SSE, AVX, AVX-512, and Intel MPX. - Add support for injecting hardware exceptions into the guest and use this to trigger exceptions in the guest for invalid xsetbv operations instead of potentially faulting in the host. - Queue pending exceptions in the 'struct vcpu' instead of directly updating the processor-specific VMCS or VMCB. The pending exception will be delivered right before entering the guest. - Rename the unused ioctl VM_INJECT_EVENT to VM_INJECT_EXCEPTION and restrict it to only deliver x86 hardware exceptions. This new ioctl is now used to inject a protection fault when the guest accesses an unimplemented MSR. - Expose a subset of known-safe features from leaf 0 of the structured extended features to guests if they are supported on the host including RDFSBASE/RDGSBASE, BMI1/2, AVX2, AVX-512, HLE, ERMS, and RTM. Aside from AVX-512, these features are all new instructions available for use in ring 3 with no additional hypervisor changes needed.
* Fix a typo in note for r266890, pmcstat(8)gjb2014-06-121-1/+1
| | | | Sponsored by: The FreeBSD Foundation
* MFC 266263,266551,266552:jhb2014-06-123-9/+42
| | | | | | - Add definitions for more structured extended features as well as XSAVE Extended Features for AVX512 and MPX (Memory Protection Extensions). - Don't permit users to request a subset of the AVX512 or MPX xsave masks.
* MFC r267326, r267327:gjb2014-06-121-0/+3
| | | | | | | | | | r267326: Add empty pkg-stage file to CLEANFILES if WITH_DVD=1. r267327: Fix indentation level. Sponsored by: The FreeBSD Foundation
* Document r266890, pmcstat(8) '-l' flag.gjb2014-06-121-0/+5
| | | | Sponsored by: The FreeBSD Foundation
* MFC r267090:wblock2014-06-121-1/+1
| | | | Correct the document date for last change.
* MFC 262311: Fix virtio spec URL.jhb2014-06-121-1/+1
|
* MFC 261504:jhb2014-06-1216-101/+413
| | | | Add support for FreeBSD/i386 guests under bhyve.
* MFC 261503,264501:jhb2014-06-121-0/+123
| | | | Emulate the byte move and zero/sign extend instructions.
* MFC 261229:jhb2014-06-121-3/+3
| | | | | | o Fix typo, sort .Xrs. PR: docs/186191
* MFC 260239,261268,265058:jhb2014-06-1217-127/+402
| | | | | | Expand the support for PCI INTx interrupts including providing interrupt routing information for INTx interrupts to I/O APIC pins and enabling INTx interrupts in the virtio and AHCI backends.
* MFC r267252, r267253:bryanv2014-06-121-10/+46
| | | | | - Remove an unnecessary variable reassignment - Fix TSO support on VMware Fusion
* MFC r267109, r267179: Update vt(4) "Terminus BSD Console" fontemaste2014-06-121-220/+307
| | | | | | | | "Terminus BSD Console" is a derivative of Terminus that is provided by Mr. Dimitar Zhekov under the 2-clause BSD license for use by the FreeBSD vt(4) console. Clarify statement on font origin
* MFC r267066 and r267041:hselasky2014-06-112-89/+64
| | | | | | | | | | | | Fixes for the RSU driver: - The R92S_TCR register is an 8-bit register. Don't access it like a 16-bit register. - Disable parsing the delete station event, due to many false events. - Ensure that there is only one transfer queue for each endpoint, so to hal packets transmitted don't get out of order. - Properly align temporary buffer to 32-bit. - Add an extra parenthesis to make expression clear. - Range check the association ID received from hardware.
* MFC r267240:hselasky2014-06-117-73/+133
| | | | | | | | | Resolve a deadlock setting the USB configuration index from userspace on USB HUBs by moving the code into the USB explore threads. The deadlock happens because child devices of the USB HUB don't have the expected reference count when called from outside the explore thread. Only the HUB device itself, which the IOCTL interface locks, gets the correct reference count.
* MFC r267060:kib2014-06-111-0/+2
| | | | Allow shared locking for the tmpfs vnode.
* MFC: r267191rmacklem2014-06-101-7/+0
| | | | | | | | | The new NFS server would not allow a hard link to be created to a symlink. This restriction (which was inherited from OpenBSD) is not required by the NFS RFCs. Since this is allowed by the old NFS server, it is a POLA violation to not allow it. This patch modifies the new NFS server to allow this.
* MFC 261217:jhb2014-06-105-55/+10
| | | | | | | | Remove support for legacy PCI devices. These haven't been needed since support for LPC uart devices was added and it conflicts with upcoming patches to add PCI INTx support. Approved by: grehan
* MFC 261000,261785,263238,263322,264302:jhb2014-06-101-8/+54
| | | | | | | | | | | | | | | | Various AHCI fixes: - Fix issue with stale fields from a recycled request pulled off the freelist. - Provide an indication a "PIO Setup Device to Host FIS" occurred while executing the IDENTIFY DEVICE and IDENTIFY PACKET DEVICE commands. - Provide an indication a "D2H Register FIS" occurred during a SET FEATURES command. - Though there currently isn't a way to insert new media into an ATAPI drive, at least pretend to support Asynchronous Notification (AN) to avoid a guest needlessly polling for it. - Don't reissue in-flight commands. - Constrain the amount of data returned to what is actually available not the size of the buffer.
* MFC 267284luigi2014-06-101-19/+7
| | | | | | | | | | | | | | | | | | | Fixes from Fanco Ficthner on transparent mode * The way rings are updated changed with the last API bump. Also sync ->head when moving slots in netmap_sw_to_nic(). * Remove a crashing selrecord() call. * Unclog the logic surrounding netmap_rxsync_from_host(). * Add timestamping to RX host ring. * Remove a couple of obsolete comments. Submitted by: Franco Fichtner MFC after: 3 days Sponsored by: Packetwerk
* MFC 267328:luigi2014-06-101-9/+16
| | | | | | | | change the netmap mbuf destructor so the same code works also on FreeBSD 9. For head and 10 this change has no effect, but on stable/9 it would cause panics when using emulated netmap on top of a standard device driver. MFC after: 3 days
* MFC r267212:hselasky2014-06-101-2/+2
| | | | Make WITNESS happy by giving USB mutexes different names.
* MFC r266951:bryanv2014-06-106-54/+125
| | | | | | | | Split the virtio.h header file into multiple files Reorganize the previous contexts of the file as it is in Linux. The eventual goal is to install the header files and share them between the kernel and bhyve.
* MFC r266416:bjk2014-06-092-1/+48
| | | | | | | | | | | | | | | | | | | | | | | | ------------------------------------------------------------------------ r266416 | bjk | 2014-05-18 17:05:54 -0400 (Sun, 18 May 2014) | 14 lines Document some user-settable make variables in ports.7 This is not a comprehensive list, as the variables themselves are spread out over multiple files, but it is a start. Add a section to make.conf noting that variables may be set there that affect ports builds, but refer to ports.7 and elsewhere for the actual listing; any listing in make.conf.5 would likely become out of date fairly quickly. PR: docs/189199 Reviewed by: bdrewery (previous version) Approved by: hrs (mentor) ------------------------------------------------------------------------ PR: 189199 Approved by: hrs (mentor)
* Document r267258, OpenSSL update to 1.0.1h.gjb2014-06-091-0/+2
| | | | Sponsored by: The FreeBSD Foundation
* sync netmap code with the version in HEAD:luigi2014-06-099-81/+257
| | | | | | | - fix handling of tx mbufs in emulated netmap mode; - introduce mbq_lock() and mbq_unlock() - rate limit some error messages - many whitespace and comment fixes
* MFC 267168:luigi2014-06-091-6/+9
| | | | | | | | misc bugfixes: - stdio.h is needed for fprint() - make memsize uint32_t to avoid errors due to overflow - honor the *XPOLL flagg in NIOCREGIF requests - mmap fails wit MAP_FAILED, not NULL.
* MFC 267167: whitespace changes (comments)luigi2014-06-091-17/+3
|
* MFC svn 267065 and 267187luigi2014-06-094-8/+6
| | | | | | | | | | | | | | make sure ifp->if_transmit returns 0 if a buffer is enqueued. This should also be merged to stable/9. After this fix, drivers still known to have this bug are igxbe/ixv and i40e. Drivers using if_transmit are correct, and so are most of the other drivers that reassing if_transmit. Among other things, this bug causes panics when using netmap emulation on top of generic drivers.
* MFC r267089:kevlo2014-06-091-0/+1
| | | | Remove D-Link DWA140 rev D1 by accident.
* MFC: r267256jkim2014-06-09399-493/+1224
| | | | | | Merge OpenSSL 1.0.1h. Approved by: so (delphij)
* MFC: r267184brueffer2014-06-091-0/+2
| | | | Add vte(4) to the hardware notes.
* Document r267236, ttys 'onifconsole'gjb2014-06-091-0/+6
| | | | Sponsored by: The FreeBSD Foundation
* MFC r267160:gjb2014-06-091-3/+3
| | | | | | | Dereference portaudit(1), as it is now deprecated and its functionality exists in pkg-audit(8). Sponsored by: The FreeBSD Foundation
* MFC r267082:np2014-06-081-1/+8
| | | | | | cxgbe(4): Properly account for the freelist buffers used when returning early from service_iq due to a budget restriction. This fixes a potential rx hang when using INTx.
* MFC r267044, r267120, r267210 and r267211:hselasky2014-06-082-240/+303
| | | | | | | Multiple fixes for FULL and LOW speed USB transfers going through the DWC OTG as split transactions. INTERRUPT transfers should have a higher chance of success after this series of patches and the chance of data loss should be reduced.
* MFC r260913,266895:nwhitehorn2014-06-086-4/+50
| | | | | | | | | | Add a new flag to /etc/ttys: onifconsole. This is equivalent to "on" if the device is an active kernel console and "off" otherwise. This is designed to allow serial-booting x86 systems to provide a login prompt on the serial line by default without providing one on all systems by default. Set this flag on x86 systems for ttyu0. Comments and suggestions by: grehan, dteske, jilles
* MFC r267078, r267079:emaste2014-06-081-3/+2
| | | | | Update vt(4) console font author's email address Remove extra copy of old email address.
* MFC: r266931brueffer2014-06-071-5/+6
| | | | Grammar cleanup; sort SEE ALSO.
* MFC r267067:kib2014-06-071-1/+4
| | | | | | | Cross-reference jot(1) and seq(1). MFC r267098 (by pluknet): mdoc: drop the trailing dot from the xref list.
* MFC r266609:kib2014-06-073-5/+45
| | | | Change the _rtld_atfork() to lock the bind lock in write mode.
* MFC changes related to PR kern/189089. Unlike CURRENT, stable/10 does notasomers2014-06-062-3/+99
| | | | | | | | | | | | | | | | | | panic when you attempt to remove the IP address. But it still fails to remove the address. MFC r265094 Add regression test for PR kern/189088. MFC r265092 Fix a panic when removing an IP address from an interface, if the same address exists on another interface. The panic was introduced by change 264887, which changed the fibnum parameter in the call to rtalloc1_fib() in ifa_switch_loopback_route() from RT_DEFAULT_FIB to RT_ALL_FIBS. The solution is to use the interface fib in that call. For the majority of users, that will be equivalent to the legacy behavior.
* MFC r264887asomers2014-06-064-5/+6
| | | | | | | | | | | | | | | | | | | | | Fix host and network routes for new interfaces when net.add_addr_allfibs=0 sys/net/route.c In rtinit1, use the interface fib instead of the process fib. The latter wasn't very useful because ifconfig(8) is usually invoked with the default process fib. Changing ifconfig(8) to use setfib(2) would be redundant, because it already sets the interface fib. tests/sys/netinet/fibs_test.sh Clear the expected ATF failure sys/net/if.c Pass the interface fib in calls to rtrequest1_fib and rtalloc1_fib sys/netinet/in.c sys/net/if_var.h Add a fibnum argument to ifa_switch_loopback_route, a subroutine of in_scrubprefix. Pass it the interface fib.
* MFC changes relating to running multiple interfaces on different fibs butasomers2014-06-066-30/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with addresses on the same subnet. MFC r266860 Fix unintended KBI change from r264905. Add _fib versions of ifa_ifwithnet() and ifa_ifwithdstaddr() The legacy functions will call the _fib() versions with RT_ALL_FIBS, preserving legacy behavior. sys/net/if_var.h sys/net/if.c Add legacy-compatible functions as described above. Ensure legacy behavior when RT_ALL_FIBS is passed as fibnum. sys/netinet/in_pcb.c sys/netinet/ip_output.c sys/netinet/ip_options.c sys/net/route.c sys/net/rtsock.c sys/netinet6/nd6.c Call with _fib() functions if we must use a specific fib, or the legacy functions otherwise. tests/sys/netinet/fibs_test.sh tests/sys/netinet/udp_dontroute.c Improve the udp_dontroute test. The bug that this test exercises is that ifa_ifwithnet() will return the wrong address, if multiple interfaces have addresses on the same subnet but with different fibs. The previous version of the test only considered one possible failure mode: that ifa_ifwithnet_fib() might fail to find any suitable address at all. The new version also checks whether ifa_ifwithnet_fib() finds the correct address by checking where the ARP request goes. MFC r264917 Style fixes, mostly trailing whitespace elimination. No functional change. MFC r264905 Fix subnet and default routes on different FIBs on the same subnet. These two bugs are closely related. The root cause is that ifa_ifwithnet does not consider FIBs when searching for an interface address. sys/net/if_var.h sys/net/if.c Add a fib argument to ifa_ifwithnet and ifa_ifwithdstadddr. Those functions will only return an address whose interface fib equals the argument. sys/net/route.c Update calls to ifa_ifwithnet and ifa_ifwithdstaddr with fib arguments. sys/netinet/in.c Update in_addprefix to consider the interface fib when adding prefixes. This will prevent it from not adding a subnet route when one already exists on a different fib. sys/net/rtsock.c sys/netinet/in_pcb.c sys/netinet/ip_output.c sys/netinet/ip_options.c sys/netinet6/nd6.c Add RT_DEFAULT_FIB arguments to ifa_ifwithdstaddr and ifa_ifwithnet. In some cases it there wasn't a clear specific fib number to use. In others, I was unable to test those functions so I chose RT_DEFAULT_FIB to minimize divergence from current behavior. I will fix some of the latter changes along with PR kern/187553. tests/sys/netinet/fibs_test.sh tests/sys/netinet/udp_dontroute.c tests/sys/netinet/Makefile Revert r263738. The udp_dontroute test was right all along. However, bugs kern/187550 and kern/187553 cancelled each other out when it came to this test. Because of kern/187553, ifa_ifwithnet searched the default fib instead of the requested one, but because of kern/187550, there was an applicable subnet route on the default fib. The new test added in r263738 doesn't work right, however. I can verify with dtrace that ifa_ifwithnet returned the wrong address before I applied this commit, but route(8) miraculously found the correct interface to use anyway. I don't know how. Clear expected failure messages for kern/187550 and kern/187552. MFC r263738 tests/sys/netinet/Makefile tests/sys/netinet/fibs.sh Replace fibs:udp_dontroute with fibs:src_addr_selection_by_subnet. The original test was poorly written; it was actually testing kern/167947 instead of the desired kern/187553. The root cause of the bug is that ifa_ifwithnet did not have a fib argument. The new test more directly targets that behavior. tests/sys/netinet/udp_dontroute.c Delete the auxilliary binary used by the old test
* MFC r263779asomers2014-06-063-5/+5
| | | | | | | | | | | | | | | | | | | | | | Correct ARP update handling when the routes for network interfaces are restricted to a single FIB in a multifib system. Restricting an interface's routes to the FIB to which it is assigned (by setting net.add_addr_allfibs=0) causes ARP updates to fail with "arpresolve: can't allocate llinfo for x.x.x.x". This is due to the ARP update code hard coding it's lookup for existing routing entries to FIB 0. sys/netinet/in.c: When dealing with RTM_ADD (add route) requests for an interface, use the interface's assigned FIB instead of the default (FIB 0). sys/netinet/if_ether.c: In arpresolve(), enhance error message generated when an lla_lookup() fails so that the interface causing the error is visible in logs. tests/sys/netinet/fibs_test.sh Clear ATF expected error.
* MFC r264417: realpath(): Properly fail "." or ".." components afterjilles2014-06-061-20/+6
| | | | | | | | | | | | | | non-directories. If realpath() is called on pathnames like "/dev/null/." or "/dev/null/..", it should fail with [ENOTDIR]. Pathnames like "/dev/null/" already failed as they should. Also, put the check for non-directories after lstatting the previous component instead of when the empty component (consecutive or trailing slashes) is detected, saving an lstat() call and some lines of code. PR: 82980
* MFC r266880:ae2014-06-063-8/+16
| | | | | Use g_conf_printf_escaped() to escape symbols, which can break an XML tree.
* MFC r266903: Update default callchain depth to 16 to match kernelemaste2014-06-061-1/+1
|
OpenPOWER on IntegriCloud