summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* MFC r308055: Add vdev_reopening support to vdev_geom.mav2016-11-121-1/+12
| | | | | | | It allows to avoid extra GEOM providers flapping without significant need. Since GEOM got resize support, we don't need to reopen provider to get new size. If provider was orphaned and no longer valid, ZFS should already know that, and in such case reopen should be done in full as expected.
* MFC r308051: Matching GUIDs, handle possible race on vdev detach.mav2016-11-121-56/+63
| | | | | | | | | | | | | | | | In case of vdev detach, causing top level mirror vdev destruction, leaf vdev changes its GUID to one of the destroyed mirror, that creates race condition when GUID in vdev label may not match one in the pool config. This change replicates logic nuance of vdev_validate() by adding special exception, matching the vdev GUID against the top level vdev GUID. Since this exception is not completely reliable (may give false positives if we fail to erase label on detached vdev), use it only as last resort. Quick way to reproduce this scenario now is detach vdev from a pool with enabled autoextend. During vdev detach autoextend logic tries to reopen remaining vdev, that always fails now since in-memory configuration is already updated, while on-disk labels are not yet.
* MFC r308049: Improve few debugging log messages.mav2016-11-121-3/+3
|
* MFC r307318: MFV r307314:mav2016-11-121-20/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6988 spa_sync() spends half its time in dmu_objset_do_userquota_updates Using a benchmark which creates 2 million files in one TXG, I observe that the thread running spa_sync() is on CPU almost the entire time we are syncing, and therefore can be a performance bottleneck. About 50% of the time in spa_sync() is in dmu_objset_do_userquota_updates(). The problem is that dmu_objset_do_userquota_updates() calls zap_increment_int(DMU_USERUSED_OBJECT) once for every file that was modified (or created). In this benchmark, all the files are owned by the same user/group, so all 2 million calls to zap_increment_int() are modifying the same entry in the zap. The same issue exists for the DMU_GROUPUSED_OBJECT. We should keep an in-memory map from user to space delta while we are syncing, and when we finish, iterate over the in-memory map and modify the ZAP once per entry. This reduces the number of calls to zap_increment_int() from "number of objects modified" to "number of owners/groups of modified files". This reduced the time spent in spa_sync() in the file create benchmark by ~33%, from 11 seconds to 7 seconds. Closes #107 Reviewed by: George Wilson <george.wilson@delphix.com> Reviewed by: Steve Gonczi <steve.gonczi@delphix.com> Reviewed by: Ned Bass <bass6@llnl.gov> Reviewed by: Jinshan Xiong <jinshan.xiong@intel.com> Author: Matthew Ahrens <mahrens@delphix.com> openzfs/openzfs@5fc46359c569369d87728ca09f8705cdff6cc8e2
* MFC r308437 and r308461:hselasky2016-11-121-2/+16
| | | | | | | | | | | Range check the jitter values to avoid bogus sample rate adjustments. The expected deviation should not be more than 1Hz per second. The USB v2.0 specification also mandates this requirement. Refer to chapter 5.12.4.2 about feedback. Allow higher sample rates to have more jitter than lower ones. PR: 208791
* MFC r308025:kib2016-11-112-3/+9
| | | | Enable vn_io_fault() deadlock avoidance for msdosfs.
* MFC r308024:kib2016-11-111-4/+26
| | | | | Ensure that cluster allocations never allocate clusters outside the volume limits.
* MFC r308023:kib2016-11-111-1/+4
| | | | | If the fatchain() call in chainalloc() returned an error, revert marking the cluster run as in-use.
* MFC r308022:kib2016-11-111-5/+7
| | | | Use symbolic name for the value of fully free word in pm_inusemap.
* MFC r308021:kib2016-11-111-1/+1
| | | | Use symbolic name for the free cluster number.
* MFC r308020:kib2016-11-111-6/+8
| | | | Fix comment formatting.
* MFC r308019:kib2016-11-111-2/+1
| | | | Remove useless NULL check.
* MFC 308201sephe2016-11-114-69/+71
| | | | | | | | | | | hyperv/kvp: Don't mix message status codes and function return values. While I'm here, move message status codes to hv_utilreg.h, since they will be used by the upcoming VSS stuffs. Submitted by: Hongjiang Zhang <honzhan microsoft com> Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8391
* MFC 308194sephe2016-11-113-72/+0
| | | | | | | hyperv: GC unused functions. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8406
* MFC 308168sephe2016-11-111-11/+15
| | | | | | | hyperv/vmbus: Avoid extra header copy. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8395
* MFC 308166,308167sephe2016-11-111-50/+132
| | | | | | | | | | | | | | | | 308166 hyperv/hn: Move TSO packet fixup to an earlier place for if_transmit. While TSO packet header may be still cache-hot. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8393 308167 hyperv/hn: Directly fill chimney sending buffer for small packets. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8394
* MFC 308164sephe2016-11-111-125/+153
| | | | | | | | | | hyperv/hn: Regroup if_start related functions. And put them under HN_IFSTART_SUPPORT, which is by default on until we whack the if_start related bits from base system. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8392
* MFC 308163sephe2016-11-114-3/+3
| | | | | | | hyperv/hn: Rename cleaned up file. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8390
* MFC 308162sephe2016-11-111-297/+271
| | | | | | | hyperv/hn: Cosmetic cleanup; no functional changes. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8389
* MFC 308117-308120sephe2016-11-112-78/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 308117 hyperv/hn: Rework temporary channel packet buffer expanding. And use large default temporary channel packer buffer; we really don't want it to be expanded at run time. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8367 308118 hyperv/hn: Cleanup RXBUF ack processing. - Increase the # of retries. - Add comment. - Log error, if RXBUF ack fails. - Add stat for RXBUF ack failures. RXBUF ack really should _not_ fail... Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8368 308119 hyperv/hn: Reset do_lro, if the hash types are not TCP related. Mainly because the host side only set TCPCS and IPCS even for UDP datagrams. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8369 308120 hyperv/hn: Don't start shared TX taskq, if the hypervisor is not Hyper-V. - Move the SYSINIT to DRIVER/SECOND, i.e. after the vm_guest becomes determistic. - Minor style changes. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8370
* MFC 308018,308116sephe2016-11-116-7/+5
| | | | | | | | | | | | | | 308018 hyeprv/hn: Rename cleaned up RNDIS header file. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8360 308116 hyperv/hn: Rename cleaned up RNDIS source file. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8361
* hyperv/hn: Fix i386 build; if_baudrate is 32bits on i386 on stable/10sephe2016-11-111-0/+5
| | | | | | This is a direct commit. Sponsored by: Microsoft
* MFC 308013-308017sephe2016-11-114-461/+437
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 308013 hyperv/hn: Nuke unnecessary indirection. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8355 308014 hyperv/hn: Reorganize RX path; mainly pull non-control code path up Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8356 308015 hyperv/hn: Pull data path code up. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8357 308016 hyperv/hn: Cleanup RNDIS related files. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8358 308017 hyperv/hn: Change header guardian; in preparation for the upcoming rename. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8359
* MFC 308011,308012sephe2016-11-117-6/+6
| | | | | | | | | | | | | | 308011 hyperv/hn: Rename cleaned up NVS header file. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8353 308012 hyperv/hn: Rename cleaned up NVS source file. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8354
* MFC 307989-307991,308010sephe2016-11-115-397/+360
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 307989 hyperv/hn: Move hn_softc to if_hnvar.h While I'm here, use consistent macro names. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8345 307990 hyperv/hn: Move send context to NVS domain. Since all sends are encapsulated in NVS messages. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8346 307991 hyperv/hn: NVS inclusion cleanup and forward declare functions. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8347 308010 hyperv/hn: Change header guardian; in preparation for the upcoming rename. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8352
* MFC 307985-307988sephe2016-11-115-85/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 307985 hyperv/hn: Nuke unnecessary M_NETVSC Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8340 307986 hyperv/hn: Move %b format string for capabilities near their definition. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8341 307987 hyperv/hn: Define empty packet filter. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8342 307988 hyperv/hn: Shuffle chimney sending buffer alloc/free around. This paves way for more chimney sending buffer reorganization. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8343
* MFC 307983sephe2016-11-114-16/+113
| | | | | | | hyperv/hn: Properly configure RSS according to RSS capabilities Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8338
* MFC 307952,307953,308278sephe2016-11-112-58/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | 307952 hyperv/vmbus: Add missing white space. Submitted by: QianYue You <t-youqi microsoft com> Sponsored by: Microsoft 307953 hyperv/vmbus: Implement vmbus_chan_printf. And use it for vmbus channel logging, which can log the channel owner's name properly, instead of vmbus0. Submitted by: QianYue You <t-youqi microsoft com> Sponsored by: Microsoft 308278 hyperv/vmbus: Reset ch_dev, once the child is deleted. So it will not be mis-used later on, e.g. in vmbus_chan_printf(). Submitted by: dexuan Reported by: dexuan Sponsored by: Microsoft
* MFC 307893sephe2016-11-111-0/+1
| | | | | | | | | hyperv/hn: Set baudrate properly PR: 208931 Submitted by: Eugene Grosbein <ports grosbein net> Reported by: Eugene Grosbein <ports grosbein net> Sponsored by: Microsoft
* MFC 307845sephe2016-11-119-88/+207
| | | | | | | | | hyperv/ic: Rework framework/message version negotiation. Submitted by: Hongjiang Zhang <honzhan microsoft com> Modified by: sephe Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8280
* MFC 307844sephe2016-11-111-5/+0
| | | | | | | hyperv/hn: Nuke unused forward declaration. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8314
* MFC 307843sephe2016-11-113-31/+94
| | | | | | | hyperv/hn: Fix RX filter settings. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8313
* MFC 307840,307842sephe2016-11-111-20/+31
| | | | | | | | | | | | | | | | 307840 hyperv/hn: Properly handle synthetic parts reattach failure. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8310 307842 hyperv/hn: Start link status check, if no network changes were pending. Link status check is much more lightweight than network change detection. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8311
* MFC 307838,307839sephe2016-11-115-92/+98
| | | | | | | | | | | | | | | | | | | | 307838 hyperv/hn: Move chimney buffer index and size to txdesc. All RNDIS control messages have used SG list for a while. This makes the send context suitable for further refactoring. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8308 307839 hyperv/hn: Fix chimney sending buffer leakage upon NVS sending failure. This will not happen in real world, since TX consumption of the vmbus TX bufring is limitted. Better safe than sorry. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8309
* MFC 307710-307712,307714sephe2016-11-118-36/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 307710 hyperv/hn: Always query RSS capabilities. - This avoid distributing NDIS version check. - Only NDIS 6.20 required (earlier NDIS uses different indirect table format). Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8291 307711 hyperv/hn: Check NVS version for HASHVAL pktinfo on sending path. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8293 307712 hyperv/hn: Add network change support. Currently the network change is simulated by link status changes. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8295 307714 hyperv/hn: Function renaming; consistent w/ hardware capabilities query. Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D8296
* MFC r307624sephe2016-11-112-0/+10
| | | | | | hyperv/vmbus: Expose channel management taskqueue for driver to use. Sponsored by: Microsoft
* MFC r308225: dev/cpuctl: put debug output under CPUCTL_DEBUG rather than DEBUGavg2016-11-101-1/+1
|
* MFC r308228:kib2016-11-091-7/+1
| | | | Remove remnants of the recursive sleep support.
* MFC r308211:kib2016-11-091-4/+4
| | | | Remove tautological casts.
* MFC: r307891rmacklem2016-11-081-2/+2
| | | | | | Fix the man page to reflect the change done by r307890 to mountd.c so that the "-n" option uses the sysctl for the correct NFS server. This is a content change.
* MFC: r307890rmacklem2016-11-081-5/+14
| | | | | | | | | | mountd(8) was erroneously setting the sysctl for the old NFS server when the new/default NFS server was running, for the "-n" option. This patch fixes the problem for stable/10 and stable/9. Since the new NFS server uses vfs.nfsd.nfs_privport == 0 by default, there wouldn't have been many users affected by the code not setting it to 0 when the "-n" option was specified.
* MFC r307857: Fix panic after ZVOL renamed to name invalid for DEVFS.mav2016-11-081-10/+12
|
* MFC r307903,307904,308039,308050: vmm/svm: iopm_bitmap and msr_bitmapavg2016-11-081-4/+5
| | | | must be contiguous in physical memory
* MFC r307518:hselasky2016-11-0726-148/+11
| | | | | | | | | | | | | | | | | | | | | Fix device delete child function. When detaching device trees parent devices must be detached prior to detaching its children. This is because parent devices can have pointers to the child devices in their softcs which are not invalidated by device_delete_child(). This can cause use after free issues and panic(). Device drivers implementing trees, must ensure its detach function detaches or deletes all its children before returning. While at it remove now redundant device_detach() calls before device_delete_child() and device_delete_children(), mostly in the USB controller drivers. Tested by: Jan Henrik Sylvester <me@janh.de> Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D8070
* MFC r308031:hselasky2016-11-071-8/+7
| | | | | | | Fix indentation and remove duplicate queue stopped stats increment. Found by: Ryan Stone <rysto32@gmail.com> Sponsored by: Mellanox Technologies
* MFC r308144 and r308165:hselasky2016-11-071-3/+9
| | | | | | | | | | | | | Fixes for virtual T-axis buttons. Make sure the virtual T-axis buttons gets cleared for USB mice which has less than 6 buttons. Make sure the virtual T-axis buttons generate button release event(s) for continuous tilting. PR: 213919 PR: 213957
* MFC r288990:avos2016-11-061-0/+5
| | | | | | | | Fix regression from r248371. We need to copy packet header to new mbuf. Unlike in the pre-r248371 code, assert that M_PKTHDR is set only on a first mbuf. PR: 195074
* MFC r307768: jedec_ts: a driver for thermal sensors on memory modulesavg2016-11-066-1/+323
|
* MFC r307348: aibs / atk0110: add support for querying sensors via GGRP and GITMavg2016-11-061-97/+320
|
* MFC r283636:avos2016-11-061-6/+6
| | | | | | | | | | | | - Don't request BUS_DMA_ALLOCNOW for dma tags, that requires enormous amount of memory. - Don't request segsize of BUS_SPACE_MAXSIZE_32BIT, when maxsize is MCLBYTES. With this change bwi_attach() can succeed on i386. PR: 214235 Submitted by: scottl
OpenPOWER on IntegriCloud