summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mbtowc(3): set errno to EILSEQ if an incomplete character is passed.pfg2016-03-011-2/+9
| | | | | | | | | | | According to POSIX, The mbtowc() function shall fail if: [EILSEQ] An invalid character sequence is detected. Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D5496 Obtained from: OpenBSD (Ingo Schwarze) MFC after: 1 month
* Refactor the AIO subsystem to permit file-type-specific handling andjhb2016-03-0119-433/+1072
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | improve cancellation robustness. Introduce a new file operation, fo_aio_queue, which is responsible for queueing and completing an asynchronous I/O request for a given file. The AIO subystem now exports library of routines to manipulate AIO requests as well as the ability to run a handler function in the "default" pool of AIO daemons to service a request. A default implementation for file types which do not include an fo_aio_queue method queues requests to the "default" pool invoking the fo_read or fo_write methods as before. The AIO subsystem permits file types to install a private "cancel" routine when a request is queued to permit safe dequeueing and cleanup of cancelled requests. Sockets now use their own pool of AIO daemons and service per-socket requests in FIFO order. Socket requests will not block indefinitely permitting timely cancellation of all requests. Due to the now-tight coupling of the AIO subsystem with file types, the AIO subsystem is now a standard part of all kernels. The VFS_AIO kernel option and aio.ko module are gone. Many file types may block indefinitely in their fo_read or fo_write callbacks resulting in a hung AIO daemon. This can result in hung user processes (when processes attempt to cancel all outstanding requests during exit) or a hung system. To protect against this, AIO requests are only permitted for known "safe" files by default. AIO requests for all file types can be enabled by setting the new vfs.aio.enable_usafe sysctl to a non-zero value. The AIO tests have been updated to skip operations on unsafe file types if the sysctl is zero. Currently, AIO requests on sockets and raw disks are considered safe and are enabled by default. aio_mlock() is also enabled by default. Reviewed by: cem, jilles Discussed with: kib (earlier version) Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D5289
* Remove taskqueue_enqueue_fast().jhb2016-03-0123-64/+39
| | | | | | | | | | taskqueue_enqueue() was changed to support both fast and non-fast taskqueues 10 years ago in r154167. It has been a compat shim ever since. It's time for the compat shim to go. Submitted by: Howard Su <howard0su@gmail.com> Reviewed by: sephe Differential Revision: https://reviews.freebsd.org/D5131
* Restore configuration for RISC-V.br2016-03-011-0/+3
|
* OFW_GPIOBUS: Add utility functions for easier handling of OFW GPIO pins.mmel2016-03-012-0/+172
| | | | Reviewed by: ian, loos (paritaly)
* Add two comments explaining the fine points of the hashkib2016-03-011-0/+31
| | | | | | | | implementation. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D5490
* Regenerate src.conf.5 after r296193 and r296264emaste2016-03-011-17/+7
|
* Get memory ranges from FDT if no EFI API is available on ARM64wma2016-03-011-1/+31
| | | | | | | | | Obtained from: Semihalf Submitted by: Michal Stanek <mst@semihalf.com> Sponsored by: Annapurna Labs Approved by: cognet (mentor) Reviewed by: andrew, wma Differential revision: https://reviews.freebsd.org/D5408
* Make the memory size returned from fdt_get_mem_regions a 64-bit type. Thisandrew2016-03-014-5/+5
| | | | | | | | | | is the physical memory size so may be larger than a u_long can hold, e.g. on ARM with LPAE we could see an address space of up to 40 bits. On ARM u_long is only 32 bits so the memory size will be truncated, possibly to zero. Reported by: bz Sponsored by: ABT Systems Ltd
* Fix section numbers for autofs(5), kbdcontrol(1), vidcontrol(1), quota(1),trasz2016-03-014-5/+5
| | | | | | | and telnet(1) in the right place. MFC after: 1 month Sponsored by: The FreeBSD Foundation
* Connect pmc.haswellxeon(3) to the build; looks like it was missed in r279829.trasz2016-03-011-0/+1
| | | | | MFC after: 1 month Sponsored by: The FreeBSD Foundation
* Remove an alternative way for dealing with root interrupt controllerskra2016-03-011-21/+0
| | | | | which is not complete. Likely, it was forgotten and not removed before committing.
* Mark other parts of interrupt framework as INTR_SOLO option specific.skra2016-03-012-6/+12
| | | | | | | | | Note that isrc_arg member of struct intr_irqsrc is used only for INTR_SOLO and IPI filter. This should be remembered if IPI filters and their arguments will be stored on another place. This option could be unusable very soon, if interrupt controllers implementations will not be implemented considering it.
* Stop setting the memory size in the arm EFI and FDT code, we don't use it.andrew2016-03-011-9/+3
| | | | Sponsored by: ABT Systems Ltd
* Make the fdt_get_mem_regions memsize argument optional. It's only used inandrew2016-03-014-7/+5
| | | | | | by a few callers. Sponsored by: ABT Systems Ltd
* Enable SRE_EL2 on ARM64wma2016-03-012-0/+2
| | | | | | | | | | | | | | Enable system register access for EL2. Alpine-V2 is the first device requiring this to be enabled. It is also in-sync with Linux initialization code, and compatible with Alpine-V2 uboot requirements. Obtained from: Semihalf Submitted by: Michal Stanek <mst@semihalf.com> Sponsored by: Annapurna Labs Approved by: cognet (mentor) Reviewed by: wma Differential revision: https://reviews.freebsd.org/D5394
* Add uart 8250 device to GENERIC arm64 configurationwma2016-03-011-0/+1
| | | | | | | | | Obtained from: Semihalf Submitted by: Michal Stanek <mst@semihalf.com> Sponsored by: Annapurna Labs Approved by: cognet (mentor) Reviewed by: zbb, wma Differential revision: https://reviews.freebsd.org/D5406
* net80211: eliminate copy-paste nearby ieee80211_check_rxseq()avos2016-03-016-93/+26
| | | | | Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D4043
* hyperv/channel: Nuke useless stack variablesephe2016-03-011-3/+0
| | | | | | MFC after: 1 week Sponsored by: Microsoft OSTC Differential Revision: https://reviews.freebsd.org/D5499
* hyperv/hn: Set hash per-packet-info for each packet transmissionsephe2016-03-013-0/+25
| | | | | | | | | So that the host could dispatch the TX done back to this TX ring's owner channel MFC after: 1 week Sponsored by: Microsoft OSTC Differential Revision: https://reviews.freebsd.org/D5498
* Add another compatibility check for QorIQ GPIO driver.jhibbits2016-03-011-1/+2
| | | | | | | | Some MPC85xx GPIO controllers are compatible with QorIQ. It may make more sense in the future to rename this and mpc85xx_gpio.c, as mpc85xx_gpio.c appears to only be compatible with a few mpc85xx SoCs. All other MPC85xx SoCs use the same controller as QorIQ.
* Correct the memory rman ranges to be to BUS_SPACE_MAXADDRjhibbits2016-03-016-13/+20
| | | | | | | | | | | | | Summary: As part of the migration of rman_res_t to be typed to uintmax_t, memory ranges must be clamped appropriately for the bus, to prevent completely bogus addresses from being used. This is extracted from D4544. Reviewed By: cem Sponsored by: Alex Perez/Inertial Computing Differential Revision: https://reviews.freebsd.org/D5134
* cxgbe(4): Update T5 and T4 firmwares to 1.15.28.0.np2016-03-0113-19972/+20671
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These firmwares were obtained from the beta "Chelsio T5/T4 Unified Wire v2.12.0.2 for Linux" release. Changes since last release are listed in the "Release Notes" accompanying the beta release and are copy-pasted here as well. The plan is to have only GA'd firmwares in any -STABLE FreeBSD branch so I'll MFC this (after 2 months) only if it ends up in a GA release. ================================================================================ ================================================================================ 22.1. T5 Firmware +++++++++++++++++++++++++++++++++ Version : 1.15.28.0 Date : 02/29/2016 ================================================================================ FIXES ----- BASE: - Fixed an issue in FW_RSS_VI_CONFIG_CMD handling where the default ingress queue was ignored. - Fixed an issue where adapter failed to load fw by adjusting DRAM frequency. - Fixed an issue in watchdog which was causing VM bring-up failure after reboot. - Fixed 40G link failures with some switches when auto-negotiation enabled. - Fixed to improve on link bring-up time. - Per port buffer groups size doubled to improve performance. - Fixed an issue where bogus d3hot bits were set causing traffic stall. - Fixed an issue where sometimes adapter was not seen after reboot. - Fixed an issue where iWARP was crashing in conjunction with traffic management. - Fixed an issue where link failed to come up after removing twinax cable and inserting optical module. OFLD - Fixed a potential iSCSI data corruption issue by disabling RxFragEn flag. FOiSCSI - Fixed an issue in recovery path where connection was getting closed before recovery processing was done. - Fixed an issue in TCP port reuse. - Fixed an issue in recovery path when large number (>64) of iSCSI connections were in use. - Returned ENETUNREACH if IP was not been provisioned yet and driver tried to use given inerface. ENHANCEMENTS ------------ BASE: - Added new interface to program DCA settings in SGE contexts; allow 32-byte IQE size - Added PTP interface fw_ptp_ts to support PTP Frequeny and Offset adjustment. - Added MPS raw interface. ETH: - New mailbox command FW_DCB_IEEE_CMD api added for IEEE dcbx. OFLD: - WR opcode is returned to host in cqe error response. ================================================================================ ================================================================================ 22.2. T4 Firmware +++++++++++++++++ Version : 1.15.28.0 Date : 02/29/2016 ================================================================================ FIXES ----- BASE: - Fixed an issue in FW_RSS_VI_CONFIG_CMD handling where default ingress queue was ignored. - Fixed an issue in watchdog which was causing VM bring-up failure after reboot. - Per port buffer groups size doubled to improve performance. - Fixed an issue where iWARP was crashing in conjunction with traffic management. FOiSCSI: - Fixed an issue in recovery path where connection was getting closed before recovery processing was done. - Fixed an issue in TCP port reuse. - Fixed an issue in recovery path when large number (>64) of iSCSI connections were in use. - Returned ENETUNREACH if IP had not been provisioned yet and driver tried to use given inerface. ENHANCEMENTS ------------ BASE: - Added MPS raw interface. ETH: - New mailbox command FW_DCB_IEEE_CMD api added for IEEE dcbx. ================================================================================ Obtained from: Chelsio Communications MFC after: 2 months Sponsored by: Chelsio Communications
* Add VM_MEMATTR_CACHEABLE support for AIM, for parity with Book-E.jhibbits2016-03-012-0/+4
| | | | Not used right now, but may be in the future anyway.
* Remove UMA_ZONE_REFCNT feature, now unused.glebius2016-03-013-110/+6
| | | | Blessed by: jeff
* New way to manage reference counting of mbuf external storage.glebius2016-03-017-182/+121
| | | | | | | | | | | | | | | | | | | | | | The m_ext.ext_cnt pointer becomes a union. It can now hold the refcount value itself. To tell that m_ext.ext_flags flag EXT_FLAG_EMBREF is used. The first mbuf to attach a cluster stores the refcount. The further mbufs to reference the cluster point at refcount in the first mbuf. The first mbuf is freed only when the last reference is freed. The benefit over refcounts stored in separate slabs is that now refcounts of different, unrelated mbufs do not share a cache line. For EXT_EXTREF mbufs the zone_ext_refcnt is no longer needed, and m_extadd() becomes void, making widely used M_EXTADD macro safe. For EXT_SFBUF mbufs the sf_ext_ref() is removed, which was an optimization exactly against the cache aliasing problem with regular refcounting. Discussed with: rrs, rwatson, gnn, hiren, sbruno, np Reviewed by: rrs Differential Revision: https://reviews.freebsd.org/D5396 Sponsored by: Netflix
* Fix !IEEE80211_DEBUG build.glebius2016-02-291-6/+6
|
* Merge byacc 20150711.jkim2016-02-2918-765/+1404
|
* net80211: do not enforce promiscuous mode for AP scanavos2016-02-291-3/+0
| | | | | | | | | | | | | Drivers should set their own filters via ic_scan_start()/ic_scan_end() callbacks; and we don't need frames other than beacons or probe responses. (Note: this was a noop since r287197 due to promiscuous mode with bridge workaround) Tested with Intel 3945BG, RTL8188EU and WUSB54GC in HOSTAP mode. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5474
* FAST_DEPEND: Prefer .OBJDIR depend files.bdrewery2016-02-292-2/+2
| | | | Sponsored by: EMC / Isilon Storage Division
* net80211: fix scanning after D5145 (PR 197498 related)avos2016-02-291-6/+23
| | | | | | | | | | | | | | | | | | | - In case, when we are doing <smth> -> INIT (FEXT_REINIT) -> <smth2> state transition, cancel_scan() may be called in the first transition. Reenqueue second state transition, so things will be executed in order. - Discard any AUTH+ state transition request when INIT -> SCAN transition is not done. - Allow to track discarded state transitions via 'state' debugging category. Tested with: * RTL8188EU, HOSTAP mode. * RTL8188CUS, STA mode. * Intel 3945BG, IBSS and STA modes. PR: 197498 Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5482
* Fix some whitespace nits in cxgbetool.c. No functional change.np2016-02-291-12/+12
|
* net80211: cleanup ieee80211_scan_sw.cavos2016-02-291-22/+22
| | | | | | | | Make it look more consistently. No functional changes. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5152
* net80211: refactor scan_signal()avos2016-02-291-26/+28
| | | | | | | | | | | | - Pass scan state and additional internal flags as a parameters. - Add locked version. Tested with: * Intel 3945BG, STA mode. * RTL8188EU, STA mode. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5148
* net80211: wakeup scan_start() task when null data frame was actuallyavos2016-02-292-6/+16
| | | | | | | | | | | | | | | transmitted - Use M_TXCB mechanism to report about null data frame transmission. - Increase timeout from 1 to 10 ms (the previous one may be not enough for non-empty queue). Tested with: * Intel 3945BG, STA mode. * RTL8188CUS, STA mode. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5147
* net80211: split scan_task() (#3) (into scan_start() andavos2016-02-291-92/+111
| | | | | | | | | | | | | | | | | | | | | | | | | | scan_curchan_task() functions) (This part should fix the problem, described in https://lists.freebsd.org/pipermail/freebsd-wireless/2016-January/006420.html) - Rename ss_scan_task into ss_scan_start (better describes it's current purpose) - Utilize taskqueue_*_timeout() functions instead of current mechanism: * reschedule scan_curchan_task() via taskqueue_enqueue_timeout() for every 'maxdwell' msecs (will replace infinite loop + sleeping for 'maxdwell' period via cv_wait()); * rerun the task immediately when an external event occurs (instead of waking it up via cv_signal()) Also, use mtx_sleep() to wait for null frame transmission (allows to drop conditional variable). Tested with: * Intel 3945BG, STA mode; * RTL8188EU, STA mode. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5145
* net80211: split scan_task() (#2) (add scan_end() function)avos2016-02-291-2/+15
| | | | | | | | | Tested with: * Intel 3945BG, STA mode. * RTL8188EU, IBSS mode. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5143
* net80211: split scan_task() (#1) (replace 'done' label with scan_done()avos2016-02-291-8/+26
| | | | | | | | | | | function) Tested with: * Intel 3945BG, STA mode. * RTL8188EU, IBSS mode. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5142
* net80211: utilize ss_scanend variable from scan_state structureavos2016-02-291-8/+9
| | | | | Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5140
* net80211: reduce code verbosity in scan_task() (ieee80211_scan_sw.c)avos2016-02-291-19/+18
| | | | | | | Add local *ss_priv variable (no functional changes) Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5139
* net80211: reduce code duplication between ieee80211_swscan_cancel_scan()avos2016-02-291-32/+14
| | | | | | | | | | | and ieee80211_swscan_cancel_anyscan() Tested with: * Intel 3945BG, STA mode. * RTL8188EU, HOSTAP mode. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5133
* network.subr: avoid unnecessary reinitializationavos2016-02-291-4/+2
| | | | | | | | | | | | Do not start interface when wpa_supplicant or hostapd is used; they will restart it anyway Tested with: * Intel 3945BG, STA mode (wpa_supplicant) * RTL8188EU, HOSTAP mode (hostapd) Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5486
* Update jemalloc to 4.1.0.jasone2016-02-2953-1577/+3391
| | | | | | | | | | Add missing Symbol.map entry for __aligned_alloc. Add weak-->strong symbol binding for {malloc_stats_print,mallctl,mallctlnametomib,mallctlbymib} --> {__malloc_stats_print,__mallctl,__mallctlnametomib,__mallctlbymib}. These bindings complete the set necessary to allow applications to replace all malloc-related symbols.
* Remove uudecode make rule for vt fontsemaste2016-02-291-3/+0
| | | | | vt(4) fonts are provided in either .bdf or .hex form, and the binary .fnt file is generated by vtfontcvt at build time.
* Enable NO_ make variable deprecation warningemaste2016-02-291-2/+1
| | | | | Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D5495
* userboot: use MK_CTF=no to disable CTFemaste2016-02-291-1/+1
| | | | The NO_ form (e.g. NO_CTF) is deprecated.
* Fix typo.trasz2016-02-291-1/+1
| | | | | MFC after: 1 month Sponsored by: The FreeBSD Foundation
* {kbdcontrol,vidcontrol,quota,telnet}(8) -> ↵trasz2016-02-291-4/+4
| | | | | | | {kbdcontrol,vidcontrol,quota,telnet}(1) MFC after: 1 month Sponsored by: The FreeBSD Foundation
* ioctl(8) -> ioctl(2)trasz2016-02-292-2/+2
| | | | | MFC after: 1 month Sponsored by: The FreeBSD Foundation
* kbdmux(8) -> kbdmux(4)trasz2016-02-291-1/+1
| | | | | MFC after: 1 month Sponsored by: The FreeBSD Foundation
OpenPOWER on IntegriCloud