aboutsummaryrefslogtreecommitdiff
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* ARM: Cumulative fixes for GICMichal Meloun2015-11-281-13/+29
| | | | | | | | | | | | | | - fix detection of interrupt root controller - allow (but warn) unsupported configuration bits - dont send EOI for spurious interrupts - print more informations for spurious interrupts - use device_printf() where appropriate Reviewed by: ian (earlier version) Approved by: kib (mentor) Notes: svn path=/head/; revision=291424
* Remove sv_prepsyscall, sv_sigsize and sv_sigtbl members of the structKonstantin Belousov2015-11-2818-68/+0
| | | | | | | | | | | | | | | | | | | sysent. sv_prepsyscall is unused. sv_sigsize and sv_sigtbl translate signal number from the FreeBSD namespace into the ABI domain. It is only utilized on i386 for iBCS2 binaries. The issue with this approach is that signals for iBCS2 were delivered with the FreeBSD signal frame layout, which does not follow iBCS2. The same note is true for any other potential user if sv_sigtbl. In other words, if ABI needs signal number translation, it really needs custom sv_sendsig method instead. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=291420
* Disconnect iBCS2 emulator from the build. The ibcs2 option, the buildKonstantin Belousov2015-11-283-3/+3
| | | | | | | | | | glue and the sources are not removed for now. Discussed with: emaste Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=291419
* [ath_hal] use the correct revision information for QCA953x.Adrian Chadd2015-11-282-4/+2
| | | | | | | | | | | | This probe/attaches correctly in my local branch and now displays a useful message: ath0: <Qualcomm Atheros QCA953x> at mem 0x18100000-0x1811ffff irq 0 on nexus0 ... ath0: AR9530 mac 1280.0 RF5110 phy 0.0 Notes: svn path=/head/; revision=291418
* Add AR9530 (honeybee) config option.Adrian Chadd2015-11-281-0/+1
| | | | Notes: svn path=/head/; revision=291416
* * Add device string for QCA955x (scorpion);Adrian Chadd2015-11-282-0/+7
| | | | | | | * Add device ID and device string for QCA953x (honeybee). Notes: svn path=/head/; revision=291413
* wrap in ATH_DEBUG.Adrian Chadd2015-11-281-2/+2
| | | | | | | Thanks sparc64 build! Notes: svn path=/head/; revision=291412
* [ath] conditionally print out the rate series information if ATH_DEBUG_XMIT ↵Adrian Chadd2015-11-271-3/+4
| | | | | | | is set. Notes: svn path=/head/; revision=291411
* Take also the send queue and sent queue into account when triggeringMichael Tuexen2015-11-271-4/+8
| | | | | | | | | the sending of outgoing stream reset requests. MFC after: 3 days Notes: svn path=/head/; revision=291410
* In vm_pageout_grow_cache(), do not re-try the inactive queue whenKonstantin Belousov2015-11-271-5/+6
| | | | | | | | | | | | | | | | active queue scan initiated write. Re-trying from the inactive queue when doing active scan makes the loop never end if number of domains is greater than 1 and inactive or active scan cannot reach the target. Reported and tested by: Andrew Gallatin <gallatin@netflix.com> Reviewed by: alc Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Notes: svn path=/head/; revision=291408
* Add helper to catch single step debug event and distinguish it from bkptZbigniew Bodek2015-11-271-7/+17
| | | | | | | | | | | | | | | | | | Some architectures (including ARMv6/v7) do not have separate single step events and cannot see difference between breakpoint and single step. Add db_pc_is_singlestep() to avoid skipping instruction we stepped on to trigger debug event. This commit does not change the existing functionality but adds possibility to implement custom db_pc_is_singlestep(). Reviewed by: imp Submitted by: Zbigniew Bodek <zbb@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4036 Notes: svn path=/head/; revision=291407
* Add support to libkvm for reading vmcores from other architectures.John Baldwin2015-11-271-8/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add a kvaddr_type to represent kernel virtual addresses instead of unsigned long. - Add a struct kvm_nlist which is a stripped down version of struct nlist that uses kvaddr_t for n_value. - Add a kvm_native() routine that returns true if an open kvm descriptor is for a native kernel and memory image. - Add a kvm_open2() function similar to kvm_openfiles(). It drops the unused 'swapfile' argument and adds a new function pointer argument for a symbol resolving function. Native kernels still use _fdnlist() from libc to resolve symbols if a resolver function is not supplied, but cross kernels require a resolver. - Add a kvm_nlist2() function similar to kvm_nlist() except that it uses struct kvm_nlist instead of struct nlist. - Add a kvm_read2() function similar to kvm_read() except that it uses kvaddr_t instead of unsigned long for the kernel virtual address. - Add a new kvm_arch switch of routines needed by a vmcore backend. Each backend is responsible for implementing kvm_read2() for a given vmcore format. - Use libelf to read headers from ELF kernels and cores (except for powerpc cores). - Add internal helper routines for the common page offset hash table used by the minidump backends. - Port all of the existing kvm backends to implement a kvm_arch switch and to be cross-friendly by using private constants instead of ones that vary by platform (e.g. PAGE_SIZE). Static assertions are present when a given backend is compiled natively to ensure the private constants match the real ones. - Enable all of the existing vmcore backends on all platforms. This means that libkvm on any platform should be able to perform KVA translation and read data from a vmcore of any platform. Tested on: amd64, i386, sparc64 (marius) Differential Revision: https://reviews.freebsd.org/D3341 Notes: svn path=/head/; revision=291406
* Add support for exynos5_ehci in loaderZbigniew Bodek2015-11-277-4/+258
| | | | | | | | | | | | | Create new driver which initializes Arndale PHY and calls ehci_init Reviewed by: hselasky Submitted by: Wojciech Macek <wma@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4192 Notes: svn path=/head/; revision=291405
* Increase malloc area in loader/usbZbigniew Bodek2015-11-271-1/+4
| | | | | | | | | | | | | Previous value was not enough on Arndale platform. Reviewed by: hselasky Submitted by: Wojciech Macek <wma@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4145 Notes: svn path=/head/; revision=291404
* Run callouts during infinite waiting inside cv_waitZbigniew Bodek2015-11-271-0/+9
| | | | | | | | | | | | | | During cv_wait we may be waiting for an event triggered by callout. Run callbacks here to avoid code blocking. Reviewed by: hselasky Submitted by: Wojciech Macek <wma@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4144 Notes: svn path=/head/; revision=291403
* Implement simple ops for umass_diskZbigniew Bodek2015-11-273-1/+72
| | | | | | | | | | | | | | | The initial IOCTL implementation supports reading disk physical geometry. Two additional functions were added. They allow reading/writing raw data to the disk (default partition). Submitted by: Wojciech Macek <wma@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4143 Notes: svn path=/head/; revision=291402
* Do not zero memory in umass_detachZbigniew Bodek2015-11-271-0/+3
| | | | | | | | | | | | | | The detach function is called very often, for example from get_capacity function. We don't want to loose any pointers here, so disable detaching for umass driver. Submitted by: Wojciech Macek <wma@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4141 Notes: svn path=/head/; revision=291401
* Implement missing bus_space_subregion in kshimZbigniew Bodek2015-11-272-0/+11
| | | | | | | | | | | | | Add missing function, used by exynos5_ehci driver. Reviewed by: hselasky Submitted by: Wojciech Macek <wma@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4141 Notes: svn path=/head/; revision=291400
* Use properly aligned buffer in usb_allocZbigniew Bodek2015-11-271-1/+1
| | | | | | | | | | | | | | The PA adress must be gathered from an aligned VA, not the RAW pointer to the memory space. Reviewed by: hselasky Submitted by: Wojciech Macek <wma@semihalf.com> Obtained from: Semihalf Sponsored by: Juniper Networks Inc. Differential Revision: https://reviews.freebsd.org/D4140 Notes: svn path=/head/; revision=291399
* sfxge: cleanup: report error on failure path in efx_vpd_hunk_verifyAndrew Rybchenko2015-11-271-1/+3
| | | | | | | | | | | | | | | If the VPD is corrupt and contains an 'RV' keyword before the END tag, then this function could return without setting the return code to report the error. Found by prefast. Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291398
* sfxge: cleanup: fix prefast annotations on mac stats updatesAndrew Rybchenko2015-11-276-6/+6
| | | | | | | | | Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291397
* sfxge: fix prefast warning in falconsiena_tx_qcreateAndrew Rybchenko2015-11-271-0/+2
| | | | | | | | | | | | | Keep prefast happy by returning the initial queue index from falconsiena_tx_qcreate(). No change in behaviour, as etxo_qcreate already zeros *addedp before the call. Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291396
* sfxge: cleanup: fix prefast annotations for stats buffersAndrew Rybchenko2015-11-2711-15/+15
| | | | | | | | | Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291395
* sfxge: unlink PIO buffers from VIs in WC mapping in hunt_nic_fini()Andrew Rybchenko2015-11-271-1/+13
| | | | | | | | | | | PIO is not yet supported in the FreeBSD driver. Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291394
* sfxge: infer external port numbering for PaviaAndrew Rybchenko2015-11-271-3/+11
| | | | | | | | | | | | | | Adjust external port mapping table to distinguish Pavia from Monza. Now the presence of any 40G mode implies at least 2 outputs per external port. So Pavia 4x10G ports are now mapped to 1,2,3,4; Monza 4x10G ports map to 1,1,2,2 as before. Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291393
* sfxge: cleanup: fix prefast annotationAndrew Rybchenko2015-11-271-1/+1
| | | | | | | | | Submitted by: Andy Moreton <amoreton at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291392
* sfxge: do not use unnamed union in siena_mc_combo_rom_hdr_tAndrew Rybchenko2015-11-271-1/+1
| | | | | | | | | | | | GCC 4.2.1 used on FreeBSD 8 and 9 branches does not like unnamed union member in the structure. It is not strictly required in head, but nice to have to minimize difference with out-of-tree driver. Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291391
* sfxge: cleanup: error probe correctionAndrew Rybchenko2015-11-271-1/+1
| | | | | | | | | Submitted by: Richard Houldsworth <rhouldsworth at solarflare.com> Sponsored by: Solarflare Communications, Inc. MFC after: 2 days Notes: svn path=/head/; revision=291390
* Fix panic when trying to sort unsupported command in OOA queue.Alexander Motin2015-11-271-0/+2
| | | | | | | Handle unsupported commands as not conflicting/blocking. Notes: svn path=/head/; revision=291383
* Remove VI_AGE vnode iflag, it is unused.Konstantin Belousov2015-11-272-14/+4
| | | | | | | | Noted by: bde Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=291380
* Move the comment about resident pages preventing vnode from leavingKonstantin Belousov2015-11-271-5/+11
| | | | | | | | | | | | | active list, into the header comment for vdrop(), which is the function that decides whether to leave the vnode on the list. Note that dirty page write-out in vinactive() is asynchronous. Discussed with: alc Sponsored by: The FreeBSD Foundation MFC after: 1 week Notes: svn path=/head/; revision=291379
* When the sending of an SCTP outgoing stream reset request fails,Michael Tuexen2015-11-261-3/+12
| | | | | | | | | | don't report it to the user since all stream have been marked as pending. MFC after: 1 week Notes: svn path=/head/; revision=291376
* Fix whitespace on addition of IPSEC optionEd Maste2015-11-265-5/+5
| | | | Notes: svn path=/head/; revision=291374
* Correct arm64 gic_v3 sizeof argumentEd Maste2015-11-261-1/+1
| | | | | | | | | | | No functional change as 'struct resource *' and 'struct resource **' have the same size, but the former is the proper type. PR: 204768 Submitted by: David Binderman Notes: svn path=/head/; revision=291373
* Correct an error in vm_reserv_reclaim_contig(). In the highly unusualAlan Cox2015-11-261-3/+4
| | | | | | | | | | case that the reservation contained "low", the starting position in the popmap for the free page search was incorrectly calculated. The most likely (and visible) symptom of this error was the assertion failure, "vm_reserv_reclaim_contig: pa is too low". Notes: svn path=/head/; revision=291370
* Remove residual functions declaration left after r291365.Alexander Motin2015-11-261-2/+0
| | | | Notes: svn path=/head/; revision=291369
* Rename sysctl node hw.imx6 to hw.imx. Move its definition to imx_machdep.cIan Lepore2015-11-265-10/+42
| | | | | | | | | | | so that code shared between imx5 and imx6 can work with OIDs under that node. Add last_reset_status (integer) and last_reset_reason (string) OIDs that provide info about the last chip reset (power-on, software reset, watchdog timeout). Notes: svn path=/head/; revision=291367
* One more round of port scanner rewrite.Alexander Motin2015-11-266-264/+181
| | | | | | | | | | - Make scan aborted by event restart immediately and infinitely. - Improve handling of some loop events from firmware. - Remove loop down timer, adding its functionality to scanner thread. - Some more unification and simplification. Notes: svn path=/head/; revision=291365
* When receiving an SCTP/UDP packet and the interface performedMichael Tuexen2015-11-261-0/+12
| | | | | | | | | | | | | the UDP checksum computation and signals that it was OK, clear this bit when passing the packet to SCTP. Since the bits indicating a valid UDP checksum and a valid SCTP checksum are the same, the SCTP stack would assume that also an SCTP checksum check has been performed. MFC after: 1 week Notes: svn path=/head/; revision=291364
* [net80211] decode WPA cipher config '0' as "clear cipher config".Adrian Chadd2015-11-261-0/+3
| | | | | | | | | | | | | | wpa_supplicant actually calls the wpa ioctl with cipher 0 as part of the teardown process and this returns an ioctl error. It's required as part of the (hopefully!) upcoming encrypted IBSS support which does indeed do the above as part of interface setup and then exits ungracefully when it gets an ioctl error. (I'll fix wpa_supplicant in a later commit as part of other work.) Notes: svn path=/head/; revision=291351
* Fix building sys/modules/if_enc by adding missing headersEnji Cooper2015-11-251-0/+2
| | | | | | | | X-MFC with: r291292, r291299 (if that ever happens) Pointyhat to: ae Notes: svn path=/head/; revision=291335
* META MODE: Don't create .meta files when symlinking sources into the obj ↵Bryan Drewery2015-11-251-2/+2
| | | | | | | | | | | | | | directory. Tracking these leads to situations where meta mode will consider the file to be out of date if /bin/sh or /bin/ln are newer than the source file. There's no reason for meta mode to do this as make is already handling the rebuild dependency fine. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=291320
* Stop building vers.c in include/ and only build the needed osreldate.h.Bryan Drewery2015-11-251-0/+6
| | | | | | | | | | | | | | | | Because of how osreldate.h was being built with newvers.sh, which always spat out a vers.c dependent on SVN or git, the meta mode build was considering osreldate.h to depend on the current git or SVN index. This would lead to entire tree rebuilds when modifying git's index. There's no reason to be generating vers.c here so just skip it. While here, in mk-osreldate.sh rename PARAM_H to proper PARAMFILE (which newvers.sh already has a default for) and remove unneeded export. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=291310
* [ath] listen to all beacons in IBSS and software beacon miss.Adrian Chadd2015-11-251-3/+7
| | | | | | | | | | | | | | | | | | | I added MYBEACON support a while ago to listen to beacons that are only for your configured BSSID. For AR9380 and later NICs this results in a lot less chip wakeups in station mode as it then only shows you beacons that are destined to you. However in IBSS mode you really do want to hear all beacons so you can do IBSS merges. Oops. So only use MYBEACON for STA + not-scanning, and just use BEACON for the other modes it used to use BEACON for. This doesn't completely fix IBSS merges though - there are still some conditions to chase down and fix. Notes: svn path=/head/; revision=291304
* [net80211] log the A-MPDU setup attempt count as part of debugging.Adrian Chadd2015-11-251-2/+2
| | | | | | | | | | I've seen some cases where we get stuck in a loop constantly trying to negotiate A-MPDU TX which is definitely not supposed to happen. This will let me see if it's something funky with the retry count or not. Notes: svn path=/head/; revision=291303
* The r241129 description was wrong that the scenario is possibleFabien Thomas2015-11-251-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | only for read locks on pcbs. The same race can happen with write lock semantics as well. The race scenario: - Two threads (1 and 2) locate pcb with writer semantics (INPLOOKUP_WLOCKPCB) and do in_pcbref() on it. - 1 and 2 both drop the inp hash lock. - Another thread (3) grabs the inp hash lock. Then it runs in_pcbfree(), which wlocks the pcb. They must happen faster than 1 or 2 come INP_WLOCK()! - 1 and 2 congest in INP_WLOCK(). - 3 does in_pcbremlists(), drops hash lock, and runs in_pcbrele_wlocked(), which doesn't free the pcb due to two references on it. Then it unlocks the pcb. - 1 (or 2) gets wlock on the pcb, runs in_pcbrele_wlocked(), which doesn't report inp as freed, due to 2 (or 1) still helding extra reference on it. The thread tries to do smth with a disconnected pcb and crashes. Submitted by: emeric.poupon@stormshield.eu Reviewed by: gleb@ MFC after: 1 week Sponsored by: Stormshield Tested by: Cassiano Peixoto, Stormshield Notes: svn path=/head/; revision=291301
* Fix the build.Andrey V. Elsukov2015-11-251-1/+0
| | | | Notes: svn path=/head/; revision=291299
* Overhaul if_enc(4) and make it loadable in run-time.Andrey V. Elsukov2015-11-2515-307/+399
| | | | | | | | | | | Use hhook(9) framework to achieve ability of loading and unloading if_enc(4) kernel module. INET and INET6 code on initialization registers two helper hooks points in the kernel. if_enc(4) module uses these helper hook points and registers its hooks. IPSEC code uses these hhook points to call helper hooks implemented in if_enc(4). Notes: svn path=/head/; revision=291292
* Check that hhk_helper pointer isn't NULL before access.Andrey V. Elsukov2015-11-251-1/+2
| | | | | | | | It isn't forbidden to use NULL pointer for hook_helper in hookinfo structure when hhook_add_hook() adds new helper hook. Notes: svn path=/head/; revision=291291
* NTB: WC/WB isn't enough; set MMR region as UCConrad Meyer2015-11-252-28/+37
| | | | | | | | | | | And expose vm_memattr_t of current mapping to consumers (as well as the ability to change it to one of UC, WB, WC). After short discussion with: jhb (but no review) Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=291280