summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Remote and local adv lock servers might de-synchronize (the added commentkib2016-06-191-1/+31
| | | | | | | | | | | | | | explains the plausible scenario), resulting in EDEADLK returned on the local registration attempt. Handle this by re-trying the local op [1]. On unmount, local registration abort is indicated as EINTR, abort the nlm call as well. Reported and tested by: pho Suggested and reviewed by: dfr (previous version, [1]) Sponsored by: The FreeBSD Foundation MFC after: 1 week Approved by: re (delphij)
* Do not access NFS data for reclaimed vnode.kib2016-06-191-4/+8
| | | | | | | Reported and tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Approved by: re (delphij)
* [net80211] remove node scan lock / generation number + fix few LORsadrian2016-06-195-184/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drop scan generation number and node table scan lock - the only place where ni_scangen is checked is in ieee80211_timeout_stations() (and it is used to prevent duplicate checking of the same node); node scan lock protects only this variable + node table scan generation number. This will fix (at least) next LOR (hostap mode): lock order reversal: 1st 0xc175f84c urtwm0_scan_loc (urtwm0_scan_loc) @ /usr/src/sys/modules/wlan/../../net80211/ieee80211_node.c:2019 2nd 0xc175e018 urtwm0_com_lock (urtwm0_com_lock) @ /usr/src/sys/modules/wlan/../../net80211/ieee80211_node.c:2693 stack backtrace: #0 0xa070d1c5 at witness_debugger+0x75 #1 0xa070d0f6 at witness_checkorder+0xd46 #2 0xa0694cce at __mtx_lock_flags+0x9e #3 0xb03ad9ef at ieee80211_node_leave+0x12f #4 0xb03afd13 at ieee80211_timeout_stations+0x483 #5 0xb03aa1c2 at ieee80211_node_timeout+0x42 #6 0xa06c6fa1 at softclock_call_cc+0x1e1 #7 0xa06c7518 at softclock+0xc8 #8 0xa06789ae at intr_event_execute_handlers+0x8e #9 0xa0678fa0 at ithread_loop+0x90 #10 0xa0675fbe at fork_exit+0x7e #11 0xa08af910 at fork_trampoline+0x8 In addition to the above: * switch to ieee80211_iterate_nodes(); * do not assert that node table lock is held, while calling node_age(); that's not really needed (there are no resources, which can be protected by this lock) + this fixes LOR/deadlock between ieee80211_timeout_stations() and ieee80211_set_tim() (easy to reproduce in HOSTAP mode while sending something to an STA with enabled power management). Tested: * (avos) urtwn0, hostap mode * (adrian) AR9380, STA mode * (adrian) AR9380, AR9331, AR9580, hostap mode Notes: * This changes the net80211 internals, so you have to recompile all of it and the wifi drivers. Submitted by: avos Approved by: re (delphij) Differential Revision: https://reviews.freebsd.org/D6833
* [ath] add support for batching frames to the general TX queues.adrian2016-06-191-51/+158
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out the frame scheduling policies (eg DBA_GATED) operate on a single TX FIFO entry. ASAP scheduling is fine; those frames always go out. DBA-gated sets the TX queue ready when the DBA timer fires, which triggers a beacon transmit. Normally this is used for content-after-beacon queue (CABQ) work, which needs to burst out immediately after a beacon. (eg broadcast, multicast, etc frames.) This is a general policy that you can use for any queue, and Sam's TDMA code uses it. When DBA_GATED is used and something like say, an 11e TX burst window, it only operates on a single TX FIFO entry. If you have a single frame per TX FIFO entry and say, a 2.5ms long burst window (eg TDMA!) then it'll only burst a single frame every 2.5ms. If there's no gating (eg ASAP) then the burst window is fine, and multiple TX FIFO slots get used. The CABQ code does pack in a list of frames (ie, the whole cabq) but up until this commit, the normal TX queues didn't. It showed up when I started to debug TDMA on the AR9380 and later. This commit doesn't fix the TDMA case - that's still broken here, because all I'm doing here is allowing 'some' frames to be bursting, but I'm certainly not filling the whole TX FIFO slot entry with frames. Doing that 'properly' kind of requires me to take into account how long packets should take to transmit and say, doing 1.5 or something times that per TX FIFO slot, as if you partially transmit a slot, when it's next gated it'll just finish that TX FIFO slot, then not advance to the next one. Now, I /also/ think queuing a new packet restarts DMA, but you have to push new frames into the TX FIFO. I need to experiment some more with this because if it's really the case, I will be able to do TDMA support without the egregious hacks I have in my local tree. Sam's TDMA code for previous chips would just kick the TXE bit to push along DMA again, but we can't do that for EDMA chips - we /have/ to push a new frame into the TX FIFO to restart DMA. Ugh. Tested: * AR9380, STA mode * AR9380, hostap mode * AR9580, hostap mode Approved by: re (gjb)
* - Prefer to use %d over %e where the day of the month should be zeroume2016-06-1946-86/+95
| | | | | | | | | filled. - Since %e means the day of the month as well, regard %e as same as %d in md_order. Reported by: vangyzen Approved by: re (gjb)
* Fix if_ntb interface setup to include IFF_MULTICAST.vangyzen2016-06-181-1/+1
| | | | | | | | | | | | | This allows IPv6 link local addresses (and other IPv6 functionality) to work. PR: 210355 Submitted by: Steve Wahl and David Bright (both at Dell Inc.) Reviewed by: cem, mav Tested by: mav (on Intel hardware) Approved by: re (kib) MFC after: 5 days Sponsored by: Dell Inc. Differential Revision: https://reviews.freebsd.org/D6885
* After the vnode unlock, mount point might be destroyed immediately,kib2016-06-181-5/+9
| | | | | | | | | | | dropping the reference on mnt_cred. Prevent this by referencing the temporal credentials before unlock. Tested by: pho Reviewed by: dfr Sponsored by: The FreeBSD Foundation MFC after: 1 week Approved by: re (gjb)
* Fix gcc build.kib2016-06-181-1/+1
| | | | | | Reported andt tested by: swills Sponsored by: The FreeBSD Foundation Approved by: re (gjb)
* vfs: ifdef out noop vop_* primitives on !DEBUG_VFS_LOCKS kernelsmjg2016-06-172-13/+14
| | | | | | | This removes calls to empty functions like vop_lock_{pre/post} from common vfs routines. Approved by: re (gjb)
* mkimg: bump version to 20151211 after r292082emaste2016-06-171-1/+1
| | | | | | | | | | | mkimg has had a number of functional additions after the last time the version was incremented. Do so now, to r292082's commit date, so that users can determine what is supported. Reviewed by: marcel Approved by: re (gjb) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D6882
* pf: Filter on and set vlan PCP valueskp2016-06-176-6/+201
| | | | | | | | | | | Adopt the OpenBSD syntax for setting and filtering on VLAN PCP values. This introduces two new keywords: 'set prio' to set the PCP value, and 'prio' to filter on it. Reviewed by: allanjude, araujo Approved by: re (gjb) Obtained from: OpenBSD (mostly) Differential Revision: https://reviews.freebsd.org/D6786
* Use vnlru_free(9) to implement dnlc_reduce_cache().kib2016-06-173-2/+79
| | | | | | | | | | | This apparently puts ARC back under the limits after the vnode pressure rework in r291244, in particular due to the kmem exhaustion. Based on patch by: mckusick Reviewed by: avg, mckusick Tested by: allanjude, madpilot Sponsored by: The FreeBSD Foundation Approved by: re (gjb)
* Add VFS interface to flush specified amount of free vnodes belongingkib2016-06-172-10/+36
| | | | | | | | | | | to mount points with the given filesystem type, specified by mount vfs_ops pointer. Based on patch by: mckusick Reviewed by: avg, mckusick Tested by: allanjude, madpilot Sponsored by: The FreeBSD Foundation Approved by: re (gjb)
* Print a message when disks are found but no logical partition aremanu2016-06-171-3/+6
| | | | | | | reported by EFI implementation. This address comment on r301714. Approved by: re (gjb), andrew (mentor) Differential Revision: https://reviews.freebsd.org/D6787
* [ath] don't debug RX EDMA descriptors that are not yet complete.adrian2016-06-171-2/+2
| | | | Approved by: re@ (gjb)
* Add clang-format under WITH_CLANG_EXTRAS.bdrewery2016-06-1710-1/+130
| | | | | | | Reviewed by: dim Approved by: re (gjb) Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D6856
* Import ClangFormat.cpp from ^/vendor/clang/clang-release_380-r262564bdrewery2016-06-171-0/+364
|\ | | | | | | | | Discussed with: dim Approved by: re (gjb)
| * Vendor import of clang 3.8.0 release r262564:dim2016-03-032-73/+9
| | | | | | | | https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_380/final@262564
| * Vendor import of clang release_38 branch r261684:dim2016-02-245-5/+44
| | | | | | | | https://llvm.org/svn/llvm-project/cfe/branches/release_38@261684
| * Vendor import of clang release_38 branch r261369:dim2016-02-2115-161/+286
| | | | | | | | https://llvm.org/svn/llvm-project/cfe/branches/release_38@261369
| * Vendor import of clang release_38 branch r260756:dim2016-02-1332-1148/+3741
| | | | | | | | https://llvm.org/svn/llvm-project/cfe/branches/release_38@260756
| * Vendor import of clang release_38 branch r258968:dim2016-01-271-3/+3
| | | | | | | | https://llvm.org/svn/llvm-project/cfe/branches/release_38@258968
| * Vendor import of clang release_38 branch r258549:dim2016-01-226-18/+53
| | | | | | | | https://llvm.org/svn/llvm-project/cfe/branches/release_38@258549
| * Vendor import of clang release_38 branch r257836:dim2016-01-164-6/+21
| | | | | | | | https://llvm.org/svn/llvm-project/cfe/branches/release_38@257836
| * Vendor import of clang trunk r257626:dim2016-01-13277-1329/+9481
| | | | | | | | https://llvm.org/svn/llvm-project/cfe/trunk@257626
* | Note ipfilter support in blacklist-helper script in relnoteslidl2016-06-171-0/+3
| | | | | | | | | | Approved by: re (gjb) Sponsored by: The FreeBSD Foundation
* | Update 11.0 to -ALPHA4 in preparation of a new set of snapshotgjb2016-06-171-1/+1
| | | | | | | | | | | | | | builds. Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
* | ar: enable reproducible output by default when invoked as 'ar -s'emaste2016-06-162-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | ar output is already deterministic by default for ar -q and ar -r, and when invoked as ranlib. Make ar -s equivalent to ranlib and enable deterministic output by default in that case too. PR: 210330 Reviewed by: bdrewery Approved by: re (gjb) MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D6871
* | Add bsdconfig `wifi' (aka `wireless' or `wlan') moduledteske2016-06-169-10/+1542
| | | | | | | | | | | | Approved by: re (gjb) MFC after: 8 weeks Relnotes: yes
* | siba(4): Adopt bcma-compatible mapping of bhnd(4) port/region identifiers.landonf2016-06-164-208/+189
| | | | | | | | | | | | | | | | | | | | | | Maps Sonics/OCP per-core address spaces to bcma(4)-compatible port/region identifiers. This permits the use of common address map identifiers in bhnd device drivers, independent of the underlying interconnect type. Approved by: re (gjb), adrian (mentor) Differential Revision: https://reviews.freebsd.org/D6850
* | bhnd(4): Fix resource allocation issues exposed by chipc PMU support.landonf2016-06-164-17/+42
| | | | | | | | | | | | | | | | | | | | | | | | - Delete all chipc children on attachment failure. - Added missing bhnd_nexus bhnd_bus_deactivate_resource implementation. - Drop a CHIPC_UNLOCK() accidentally left behind after lifting synchronization into the chipc region refcounting API. - Fix re-allocation of chipc resources. Previously, the resource ID was reset to -1 on release, preventing later re-allocation. Approved by: re (gjb), adrian (mentor) Differential Revision: https://reviews.freebsd.org/D6849
* | [iwm] free RX ring / NVM memory after they're used.adrian2016-06-161-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Free RX ring during detach * Free NVM memory after parsing Tested: * 7260, STA mode Submitted by: Imre Vadasz <imre@vdsz.com> Approved by: re (gjb) Obtained from: dragonflybsd Differential Revision: https://reviews.freebsd.org/D6817
* | Add missing return statement.hselasky2016-06-161-0/+1
| | | | | | | | | | Approved by: re (gjb) MFC after: 1 week
* | Add multiple missing descriptor parsing functions to the LibUSB v1.0 API.hselasky2016-06-164-2/+290
| | | | | | | | | | | | Approved by: re (kib) Requested by: swills MFC after: 1 week
* | Fix usr.sbin/rpcbind ATF tests on 32-bit platformsasomers2016-06-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | usr.sbin/rpcbind/tests/addrmerge_test.c Fix some sizeof calculations that work only by luck on 64-bit platforms. PR: 210314 Reviewed by: ngie Approved by: re (kib) Reported by: Mark Millard MFC after: 4 weeks Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D6855
* | Add support for libusb_set_auto_detach_kernel_driver() to the LibUSB v1.0 API.hselasky2016-06-166-4/+47
| | | | | | | | | | | | Approved by: re (kostikbel) Requested by: swills MFC after: 1 week
* | Reimplement r301944 using the correct install(1) invocation, which againgjb2016-06-161-2/+2
| | | | | | | | | | | | | | | | | | fixes packaging tzdata/zoneinfo. Thank you to hrs for the pointer on what I did incorrectly. Approved by: re (blanket, pkgbase) Sponsored by: The FreeBSD Foundation
* | Add support for libusb_get_port_number() to the LibUSB v1.0 API.hselasky2016-06-163-1/+16
| | | | | | | | | | | | Approved by: re (kostikbel) Requested by: swills MFC after: 1 week
* | Return usual error indicator to shell.kib2016-06-161-1/+1
| | | | | | | | | | | | Sponsored by: The FreeBSD Foundation MFC after: 1 week Approved by: re (hrs)
* | Always allow loading of cpuctl(4). When a CPU feature is notkib2016-06-161-16/+22
| | | | | | | | | | | | | | | | | | supported, e.g. CPUID or MSR, return ENODEV from the ioctl which needs that feature. Sponsored by: The FreeBSD Foundation MFC after: 1 week Approved by: re (hrs)
* | Update comments for the MD functions managing contexts for newkib2016-06-1618-116/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | threads, to make it less confusing and using modern kernel terms. Rename the functions to reflect current use of the functions, instead of the historic KSE conventions: cpu_set_fork_handler -> cpu_fork_kthread_handler (for kthreads) cpu_set_upcall -> cpu_copy_thread (for forks) cpu_set_upcall_kse -> cpu_set_upcall (for new threads creation) Reviewed by: jhb (previous version) Sponsored by: The FreeBSD Foundation MFC after: 1 week Approved by: re (hrs) Differential revision: https://reviews.freebsd.org/D6731
* | Remove XXX comments from kern_thread.c. In one case, there is nokib2016-06-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | reason for it in modern times. In the other case, expand the comment stating instead of doubting. Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Approved by: re (hrs) X-Differential revision: https://reviews.freebsd.org/D6731
* | Remove code duplication.kib2016-06-161-5/+0
| | | | | | | | | | | | | | | | Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Approved by: re (hrs) X-Differential revision: https://reviews.freebsd.org/D6731
* | Revert r301944, which apparently broke zoneinfo install duringgjb2016-06-161-2/+2
| | | | | | | | | | | | | | | | | | | | installworld (although I am not sure why). I'll revisit this change after I further understand the cause of the breakage. Thanks to our secret canary (dhw) for the report. Approved by: re (blanket, pkgbase) Sponsored by: The FreeBSD Foundation
* | Define LIBUSB_API_VERSION.hselasky2016-06-161-0/+2
| | | | | | | | | | | | Approved by: re (kostikbel) Requested by: swills MFC after: 1 week
* | Implement libusb_get_version() and update libusb manual page.hselasky2016-06-164-1/+32
| | | | | | | | | | | | Approved by: re (glebius) Requested by: swills MFC after: 1 week
* | fix a zfs boot regression introduced in r300117 by accidentavg2016-06-161-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no reason to return non-zero value from zfs_probe_partition() as that causes following partitions to not be probed for ZFS vdevs. A particular scenario that I encountered is a GPT partitioned disk where several partitions have freebsd-zfs type. A partition with a lower index is used as a cache (l2arc) vdev and in that case case zfs_probe() returned a non-zero status. That status was returned to ptable_iterate() and caused it to abort the iteration. Because of that the subsequent partitions were not probed and a root pool was not discovered resulting in a boot failure. While there fix the style for nearby return statements. Approved by: re (kib)
* | Bump /tmp from 30m to 50m for ARM release images.manu2016-06-161-1/+1
| | | | | | | | | | | | | | | | 30m isn't enough for pkg anymore to extract packagesite.txz. 40m is fine for now but let's take a safer way as we don't know when pkg will need more. Reported by: many Approved by: re (gjb), andrew (mentor)
* | Fix zoneinfo file packaging.gjb2016-06-161-2/+2
| | | | | | | | | | | | | | | | This change fixes 468 of 488 zoneinfo file packaging issues, the rest still to be investigated. Approved by: re (blanket, pkgbase) Sponsored by: The FreeBSD Foundation
* | Mark targets with _SUBDIR as .PHONY.bdrewery2016-06-151-2/+2
| | | | | | | | | | | | | | | | | | This is mostly fixing META_MODE with realinstall wanting a .meta file when it does not need one. These targets really should always run though since they have _SUBDIR on them. Approved by: re (implicit) Sponsored by: EMC / Isilon Storage Division
OpenPOWER on IntegriCloud