summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* MFC r278600:bdrewery2015-04-031-1/+1
| | | | Correct and clarify comment for __SMBF.
* MFC r278530:bdrewery2015-04-031-0/+1
| | | | | | | | When catopen(3) returns an error, it caches the result of that error from r202992. The refcount on the cache entry is not initialized, so any attempt to clean the cache will skip over this item since it likely has a >0 value. This change is currently a NOP.
* MFC r272291:bdrewery2015-04-031-1/+3
| | | | Document [EPERM] for UNIX sockets.
* MFC r279720alc2015-04-031-1/+1
| | | | | Correct a typo in vm_object_backing_scan() that originated in r254141. Specifically, change a lock acquire into a lock release.
* MFC r280756, r280758: Fix bug on memory allocation error in split method.mav2015-04-031-3/+2
| | | | While there, use bioq_takefirst() in place where it is convenient.
* MFC r280238alc2015-04-021-0/+9
| | | | | | | Fix the root cause of the "vm_reserv_populate: reserv <address> is already promoted" panics. PR: 198163
* MFC r262769:wblock2015-04-021-2/+3
| | | | | | | | | - Clarify usage of the -f option. MFC r280336: Describe the behavior when both -f and a message are given. Pointed out by Raphael Abreu <raphael.lorenzeto@gmail.com> on freebsd-doc.
* MFC 276724:jhb2015-04-028-23/+36
| | | | | | | | | | On some Intel CPUs with a P-state but not C-state invariant TSC the TSC may also halt in C2 and not just C3 (it seems that in some cases the BIOS advertises its C3 state as a C2 state in _CST). Just play it safe and disable both C2 and C3 states if a user forces the use of the TSC as the timecounter on such CPUs. PR: 192316
* MFC 261790:jhb2015-04-0120-67/+835
| | | | | | | | | | | | | | | | | | | | | | Add support for managing PCI bus numbers. As with BARs and PCI-PCI bridge I/O windows, the default is to preserve the firmware-assigned resources. PCI bus numbers are only managed if NEW_PCIB is enabled and the architecture defines a PCI_RES_BUS resource type. - Add a helper API to create top-level PCI bus resource managers for each PCI domain/segment. Host-PCI bridge drivers use this API to allocate bus numbers from their associated domain. - Change the PCI bus and CardBus drivers to allocate a bus resource for their bus number from the parent PCI bridge device. - Change the PCI-PCI and PCI-CardBus bridge drivers to allocate the full range of bus numbers from secbus to subbus from their parent bridge. The drivers also always program their primary bus register. The bridge drivers also support growing their bus range by extending the bus resource and updating subbus to match the larger range. - Add support for managing PCI bus resources to the Host-PCI bridge drivers used for amd64 and i386 (acpi_pcib, mptable_pcib, legacy_pcib, and qpi_pcib). - Define a PCI_RES_BUS resource type for amd64 and i386. PR: 197076
* MFC 260973:jhb2015-04-014-67/+14
| | | | | | - 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.
* MFC 278761:jhb2015-04-012-2/+4
| | | | | | Include OBJT_PHYS VM objects in ELF core dumps. In particular this includes the shared page allowing debuggers to use the signal trampoline code to identify signal frames in core dumps.
* Revert r280449;pfg2015-04-011-3/+8
| | | | | | | | | | | | | | | | Permit multiple arguments for the nonnull attribute. For the benefit of anyone that may be struggling to port FreeBSD to gcc 2.8 (or older) avoid using variadic macros. MFC r280700 (partial); Bring new attribute: __result_use_check Causes a warning to be emitted if a caller of the function with this attribute does not use its return value. This is known in gcc as "warn_unused_result" but we considered the original naming unsuitable for an attribute.
* Document removal of 10.1-RELEASE QCOW2 virtual machine diskgjb2015-04-011-0/+11
| | | | | | | | images from FTP, due to a crash-on-boot problem. Requested by: jhb (months ago), bapt (recently) Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
* MFC 278760:jhb2015-03-311-1/+13
| | | | | | | | Add two new counters for vnode life cycle events: - vfs.recycles counts the number of vnodes forcefully recycled to avoid exceeding kern.maxvnodes. - vfs.vnodes_created counts the number of vnodes created by successful calls to getnewvnode().
* MFC: r280807arybchik2015-03-311-1/+1
| | | | | | sfxge: fix bug in TSO when a DMA segment has both header and data Sponsored by: Solarflare Communications, Inc.
* MFC: 279268arybchik2015-03-311-0/+31
| | | | | | sfxge: add to config files Sponsored by: Solarflare Communications, Inc.
* MFC r280172: Improve ATA and SCSI versions printing.mav2015-03-312-22/+37
| | | | There is no "SCSI-6" and "ATA-9", but there is "SPC-4" and "ACS-2".
* MFC r280166:mav2015-03-311-32/+14
| | | | Make ATA power management commands to work on SCSI HBAs via PASS THROUGH.
* MFC r280781:kib2015-03-311-0/+1
| | | | | | Make it possible for the signal handler to act on #ss. Load the canonical user data segment' selector into %ss when calling the handler.
* MFC r280780:kib2015-03-311-2/+0
| | | | | | The #ss fault handler erronously does not check for the fault originated from the return to usermode. #ss must be handled same as #np.
* MFC r280435:kib2015-03-311-1/+1
| | | | | | When mapping an allocated entry, use the entry size, instead of the requested size. If tag restrictions caused split entry, its size is less then requsted.
* MFC r280434:kib2015-03-311-0/+1
| | | | Assert that the mapping loop makes progress.
* Revert accidental(?) change in r280455 and do not compile hwpmc staticallyjhb2015-03-301-1/+0
| | | | | into GENERIC by default. This change is not present in HEAD and was not made in the two commits to HEAD that r280455 merged.
* MFC r280134:mav2015-03-301-0/+6
| | | | | | | | | | | | | Report ARAT (APIC-Timer-always-running) feature for virtual CPU. This makes FreeBSD guest to not avoid using LAPIC timer, preferring HPET due to worries about non-existing for virtual CPUs deep sleep states. Benchmarks of usleep(1) on guest and host show such extra latencies: - 51us for virtual HPET, - 22us for virtual LAPIC timer, - 22us for host HPET and - 3us for host LAPIC timer.
* MFC r280090: Hide virtio features negotiation messages under bootverbose.mav2015-03-291-1/+1
| | | | Those messages are noisy, but useless for average user.
* MFC r280640:gjb2015-03-285-5/+5
| | | | | | Crochet sources moved to a new home; update accordingly. Sponsored by: The FreeBSD Foundation
* MFC r273445 (by imp):mav2015-03-271-0/+4
| | | | Add defines for various FIRST PARTY DMA SEND subcommands.
* MFC r270832 (by imp):mav2015-03-272-0/+4
| | | | | Add a few defines and packet types for SATA 3.2 and FPDMA (First Party DMA).
* MFC r279927: Make DIOCGATTR in device mode handle "GEOM::candelete".mav2015-03-271-1/+3
|
* MFC r280286: Add comment explaining existing powerd behavior on SMP systems.mav2015-03-271-0/+6
|
* MFC r280154:mav2015-03-271-0/+2
| | | | Report that we may have write cache, and that we do support FLUSH.
* MFC r280133: Increase S/G list size of 32 to 33 entries.mav2015-03-272-8/+6
| | | | | 32 entries are not enough for the worst case of misaligned 128KB request, that made FreeBSD to chunk large quests in odd pieces.
* MFC r280126: Pre-allocate one extra request per processing thread.mav2015-03-271-1/+1
| | | | | Processing threads call callbacks before freeing requests. As result, new requests may arrive before old ones are freed.
* MFC r280044:mav2015-03-271-1/+3
| | | | | | According to Linux and QEMU, s/n equal to buffer is not zero-terminated. This makes same s/n reported for both virtio and AHCI drivers.
* MFC r280042: Close potential race on blockif_close().mav2015-03-271-0/+2
| | | | Reported by: vangyzen
* MFC r280040:mav2015-03-271-4/+16
| | | | | | | Give AHCI disk serial based on backing file path same as for virtio block. It is still not good that they may intersect on different hosts, but that is better then intersecting on the same host.
* MFC r280037:mav2015-03-272-78/+76
| | | | | | | | | | | | | | Rewrite virtio block device driver to work asynchronously and use the block I/O interface. Asynchronous operation, based on r280026 change, allows to not block virtual CPU during I/O processing, that on slow/busy storage can take seconds. Use of recently improved block I/O interface allows to process multiple requests same time, that improves random I/O performance on wide storages. Benchmarks of virtual disk, backed by ZVOL on RAID10 pool of 4 HDDs, show ~3.5 times random read performance improvements, while no degradation on linear I/O. Guest CPU usage during test dropped from 100% to almost zero.
* MFC r280026, r280041:mav2015-03-275-41/+41
| | | | | | | | | Modify virtqueue helpers added in r253440 to allow queuing. Original virtqueue design allows queued and out-of-order processing, but helpers added in r253440 suppose only direct blocking in-order one. It could be fine for network, etc., but it is a huge limitation for storage devices.
* MFC r280004: Give block I/O interface multiple (8) execution threads.mav2015-03-271-53/+76
| | | | | | | | | | On parallel random I/O this allows better utilize wide storage pools. To not confuse prefetcher on linear I/O, consecutive requests are executed sequentially, following the same logic as was earlier implemented in CTL. Benchmarks of virtual AHCI disk, backed by ZVOL on RAID10 pool of 4 HDDs, show ~3.5 times random read performance improvements, while no degradation on linear I/O.
* MFC r279987: Add checksums to identify data and NCQ command error log.mav2015-03-271-0/+16
|
* MFC r279979: Slightly polish virtual AHCI CD reporting.mav2015-03-271-23/+67
|
* MFC r279977: Fix NOP and IDLE commands for virtual AHCI disks.mav2015-03-271-2/+5
|
* MFC r279976: Add support for NCQ variant of DSM TRIM for virtual AHCI disks.mav2015-03-271-4/+24
| | | | The code is not really tested yet due to lack of initiator support.
* MFC r279975: Improve NCQ errors reporting for virtual AHCI disks.mav2015-03-271-11/+53
| | | | While this implementation is still not perfect, previous was just broken.
* MFC r279968: Remove incorrect SERR register setting.mav2015-03-271-2/+0
| | | | At this point we have nothing to report through that register.
* MFC r279967: Change prdbc value reporting.mav2015-03-271-7/+6
|
* MFC r279965: Polish AHCI disk identify data and fix speed negotiation.mav2015-03-272-17/+49
|
* MFC r279960:mav2015-03-271-4/+16
| | | | | | Add support for PIO variants of READ/WRITE commands for AHCI disks. AHCI API hides all PIO specifics, so this functionality is almost free.
* MFC r279975: Use ahci_write_fis_d2h() for commands completion.mav2015-03-271-21/+11
|
* MFC revision 280463ken2015-03-271-7/+1
| | | | | | | | | | | | | | ------------------------------------------------------------------------ r280463 | ken | 2015-03-24 15:42:28 -0600 (Tue, 24 Mar 2015) | 5 lines Remove some #if 0'ed code that apparently confuses cscope. Requested by: Peter Xu <xzpeter@gmail.com> MFC after: 3 days ------------------------------------------------------------------------ Sponsored by: Spectra Logic
OpenPOWER on IntegriCloud