summaryrefslogtreecommitdiffstats
path: root/share
Commit message (Collapse)AuthorAgeFilesLines
* If a specific timecounter has been chosen via sysctl, and a new timecounterian2015-08-121-4/+10
| | | | | | | | with higher quality registers (presumably in a module that has just been loaded), do not undo the user's choice by switching to the new timecounter. Document that behavior, and also the fact that there is no way to unregister a timecounter (and thus no way to unload a module containing one).
* Fix mandoc warnings/errors.brueffer2015-08-1219-33/+36
| | | | MFC after: 1 week
* Make the nvlist_next(9) function handle NULL pointer variable.oshogbo2015-08-111-1/+11
| | | | | | | This simplifies removing the first element from nvlist. Reviewed by: AllanJude Approved by: pjd (mentor)
* Allow the choice of PPS signal captured by uart(4) to be runtime-configured,ian2015-08-101-1/+34
| | | | | | | | | | | | | | eliminating the need to build a custom kernel to use the CTS signal. The historical UART_PPS_ON_CTS kernel option is still honored, but now it can be overridden at runtime using a tunable to configure all uart devices (hw.uart.pps_mode) or specific devices (dev.uart.#.pps_mode). The per- device config is both a tunable and a writable sysctl. This syncs the PPS capabilities of uart(4) with the enhancements recently recently added to ucom(4) for capturing from USB serial devices. Relnotes: yes
* Xref iwm(4).brueffer2015-08-101-1/+2
|
* Hook up iwm.4 and iwmfw.4 to the build.brueffer2015-08-101-0/+3
|
* Document kern.cam.ctl.debug sysctl.mav2015-08-091-1/+12
| | | | MFC after: 1 week
* Revise the text about the atomicity of the defined operations acrossalc2015-08-091-13/+17
| | | | | | | | | multiple processors. In particular, clearly state that the operations are always atomic when they are applied to the default memory type that is used by the kernel (and applications). Reviewed by: kib, jhb (an earlier version) MFC after: 1 week
* Add myself into the src graph.araujo2015-08-091-0/+4
| | | | | Approved by: bapt (mentor) Differential Revision: D3294
* Add rodrigc@ to the committers graph.araujo2015-08-091-0/+2
| | | | | Approved by: bapt (mentor) Differential Revision: D3288
* Allow to disable BIO_DELETE passthru in fstab for swap-on-geli devices bypjd2015-08-081-0/+1
| | | | | | | passing 'notrim' option. PR: 198863 Submitted by: Matthew D. Fuller fullermd at over-yonder dot net
* Import OpenBSD's iwm WiFi driver for Intel 3160/7260/7265.rpaulo2015-08-082-0/+219
| | | | | | | | | | | | | | | There are still several bugs, but I've been using it for a while now. Thanks to all the testers and to Adrian for his help with this driver. This driver isn't connected to the build yet, but it will be soon. There's no MFC planned because the driver isn't very stable yet. Reviewed by: adrian Obtained from: https://github.com/rpaulo/iwm Tested by: adrian, gjb, dumbbell (others that I forgot). Relnotes: yes
* Document the application interface.marcel2015-08-081-2/+297
|
* Create man page for pmap_quick_enter_page(9) and pmap_quick_remove_page(9)jah2015-08-073-0/+107
| | | | | | Reviewed by: kib, brueffer, wblock Approved by: kib (mentor) Differential Revision: https://reviews.freebsd.org/D3312
* Add support for ASUS WL-100g.kevlo2015-08-071-1/+2
|
* Document the recently added get-bitmode and eeprom read/write functionality.ian2015-08-061-5/+61
|
* Disable SSE in libthrvangyzen2015-08-051-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang emits SSE instructions on amd64 in the common path of pthread_mutex_unlock. If the thread does not otherwise use SSE, this usage incurs a context-switch of the FPU/SSE state, which reduces the performance of multiple real-world applications by a non-trivial amount (3-5% in one application). Instead of this change, I experimented with eagerly switching the FPU state at context-switch time. This did not help. Most of the cost seems to be in the read/write of memory--as kib@ stated--and not in the #NM handling. I tested on machines with and without XSAVEOPT. One counter-argument to this change is that most applications already use SIMD, and the number of applications and amount of SIMD usage are only increasing. This is absolutely true. I agree that--in general and in principle--this change is in the wrong direction. However, there are applications that do not use enough SSE to offset the extra context-switch cost. SSE does not provide a clear benefit in the current libthr code with the current compiler, but it does provide a clear loss in some cases. Therefore, disabling SSE in libthr is a non-loss for most, and a gain for some. I refrained from disabling SSE in libc--as was suggested--because I can't make the above argument for libc. It provides a wide variety of code; each case should be analyzed separately. https://lists.freebsd.org/pipermail/freebsd-current/2015-March/055193.html Suggestions from: dim, jmg, rpaulo Approved by: kib (mentor) MFC after: 2 weeks Sponsored by: Dell Inc.
* Add support for Planex GW-NS300N.kevlo2015-08-041-1/+2
|
* Revert r286236; vgonel() is a static function.trasz2015-08-042-7/+0
| | | | Sponsored by: The FreeBSD Foundation
* Document vgonel(9).trasz2015-08-032-0/+7
| | | | | MFC after: 1 month Sponsored by: The FreeBSD Foundation
* Add a manual page for the cloudabi and cloudabi64 kernel modules.ed2015-08-022-0/+105
| | | | | | | | | | | CloudABI has two separate kernel modules: cloudabi and cloudabi64. The first module contains all the pointer size independent code, whereas cloudabi64 contains the actual 64-bits specific system calls and the ELF loader. Reviewed by: wblock Obtained from: https://github.com/NuxiNL/freebsd Differential Revision: https://reviews.freebsd.org/D3258
* Regenerate after r286174.markj2015-08-021-5/+13
|
* Add a src.conf option to build and install the DTrace test suite.markj2015-08-021-0/+5
| | | | | Reviewed by: gnn, ngie Differential Revision: https://reviews.freebsd.org/D3195
* mark this function as deprecated, and put the warning first, since Ijmg2015-08-021-5/+10
| | | | | | | | | | doubt most people will read to the end... Note the use of sys/cdefs.h for pre-C11 compilers... I didn't included a note about being compatibile w/ userland since a C11 feature should be obviously usable in userland... Suggested by: imp
* - Add myself to the committers-ports.dot and add my mentor relationship.junovitch2015-08-011-0/+5
| | | | | | | - Add myself to the calendar.freebsd. Approved by: delphij (mentor) Differential Revision: https://reviews.FreeBSD.org/D3265
* The implementation note isn't true anymore..jmg2015-07-311-7/+3
| | | | | Not that anyone reads it, but those that do, remind them that this isn't usable in userland... I can't wait till this doc is wrong..
* The kernel option and module are actually called pmspcv.brueffer2015-07-302-3/+4
| | | | MFC after: 3 days
* Updat the committers graphallanjude2015-07-301-0/+3
| | | | | Approved by: marcel (mentor) Differential Revision: https://reviews.freebsd.org/D3251
* Use default CLANG build options for ARMemaste2015-07-291-7/+3
| | | | | | | | | | We previously disabled CLANG_FULL on (little-endian) ARM because the build failed. This is no longer the case and as of Clang 3.5 we cannot build any part of the in-tree Clang with in-tree GCC, so it's no longer necessary to disable CLANG_FULL. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2525
* Regenerate src.conf(5) after r286016 and r286030emaste2015-07-291-24/+46
|
* Allow ELF Tool Chain elfcopy to be installed as objcopyemaste2015-07-291-0/+3
| | | | | | | | | | | | | ELF Tool Chain elfcopy is nearly a drop-in replacement for GNU objcopy, but does not currently support PE output which is needed for building x86 UEFI bits. Add a src.conf knob to allow installing it as objcopy and set it by default for aarch64 only, where we don't have a native binutils. Reviewed by: bapt Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2887
* Remove the AUTHORS section until it's clear who exactly wrote the driver.brueffer2015-07-291-3/+1
|
* Teach sysctl about the new optional suffix after IK to specifyimp2015-07-291-27/+25
| | | | | | | precision. Update input as well. Add IK to the manual (it was missing completely). Differential Revision: https://reviews.freebsd.org/D3181
* isl(4), driver for Intersil I2C ISL29018 Digital Ambient Light Sensorgrembo2015-07-252-0/+105
| | | | | | | Differential Revision: https://reviews.freebsd.org/D2811 Reviewed by: adrian, wblock Approved by: adrian, wblock Relnotes: yes
* cyapa(4), driver for the Cypress APA I2C trackpadgrembo2015-07-252-0/+201
| | | | | | | Differential Revision: https://reviews.freebsd.org/D3068 Reviewed by: kib, wblock Approved by: kib Relnotes: yes
* Update Capsicum and Mandatory Access Control manual pagestrasz2015-07-2511-98/+11
| | | | | | | | | to no longer claim they are experimental. Reviewed by: rwatson@, wblock@ MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2985
* Pf can reassemble IPv6 fragments now.kp2015-07-251-3/+5
| | | | | Obtained from: bluhm (OpenBSD) Sponsored by: Essen FreeBSD Hackathon
* Add a basic manpage for the pms driver.brueffer2015-07-242-0/+129
| | | | | MFC after: 1 week Committed from: Essen FreeBSD Hackathon
* Document the fact that tunables can be set in device.hints.brooks2015-07-231-10/+8
| | | | | | Reviewed by: wblock MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D3153
* Check the hw.proto.attach environment variable for devices thatmarcel2015-07-191-1/+7
| | | | | | proto(4) should attach to instead of the normal driver. Document the variable.
* Expand sysctl descriptions in iscsi(4) and ctl(4).trasz2015-07-182-3/+11
| | | | | MFC after: 1 week Sponsored by: The FreeBSD Foundation
* Fix a small typo: "the the".ed2015-07-161-2/+2
| | | | Spotted by: wblock
* Implement the CloudABI random_get() system call.ed2015-07-142-3/+39
| | | | | | | | | | | | | | The random_get() system call works similar to getentropy()/getrandom() on OpenBSD/Linux. It fills a buffer with random data. This change introduces a new function, read_random_uio(), that is used to implement read() on the random devices. We can call into this function from within the CloudABI compatibility layer. Approved by: secteam Reviewed by: jmg, markm, wblock Obtained from: https://github.com/NuxiNL/freebsd Differential Revision: https://reviews.freebsd.org/D3053
* Markup fixes.brueffer2015-07-131-3/+3
|
* Fix a typo and duplicate word.brueffer2015-07-131-3/+3
|
* * Address review (and add a bit myself).markm2015-07-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | - Tweek man page. - Remove all mention of RANDOM_FORTUNA. If the system owner wants YARROW or DUMMY, they ask for it, otherwise they get FORTUNA. - Tidy up headers a bit. - Tidy up declarations a bit. - Make static in a couple of places where needed. - Move Yarrow/Fortuna SYSINIT/SYSUNINIT to randomdev.c, moving us towards a single file where the algorithm context is used. - Get rid of random_*_process_buffer() functions. They were only used in one place each, and are better subsumed into those places. - Remove *_post_read() functions as they are stubs everywhere. - Assert against buffer size illegalities. - Clean up some silly code in the randomdev_read() routine. - Make the harvesting more consistent. - Make some requested argument name changes. - Tidy up and clarify a few comments. - Make some requested comment changes. - Make some requested macro changes. * NOTE: the thing calling itself a 'unit test' is not yet a proper unit test, but it helps me ensure things work. It may be a proper unit test at some time in the future, but for now please don't make any assumptions or hold any expectations. Differential Revision: https://reviews.freebsd.org/D2025 Approved by: so (/dev/random blanket)
* Add an initial NUMA affinity/policy configuration for threads and processes.adrian2015-07-112-0/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is based on work done by jeff@ and jhb@, as well as the numa.diff patch that has been circulating when someone asks for first-touch NUMA on -10 or -11. * Introduce a simple set of VM policy and iterator types. * tie the policy types into the vm_phys path for now, mirroring how the initial first-touch allocation work was enabled. * add syscalls to control changing thread and process defaults. * add a global NUMA VM domain policy. * implement a simple cascade policy order - if a thread policy exists, use it; if a process policy exists, use it; use the default policy. * processes inherit policies from their parent processes, threads inherit policies from their parent threads. * add a simple tool (numactl) to query and modify default thread/process policities. * add documentation for the new syscalls, for numa and for numactl. * re-enable first touch NUMA again by default, as now policies can be set in a variety of methods. This is only relevant for very specific workloads. This doesn't pretend to be a final NUMA solution. The previous defaults in -HEAD (with MAXMEMDOM set) can be achieved by 'sysctl vm.default_policy=rr'. This is only relevant if MAXMEMDOM is set to something other than 1. Ie, if you're using GENERIC or a modified kernel with non-NUMA, then this is a glorified no-op for you. Thank you to Norse Corp for giving me access to rather large (for FreeBSD!) NUMA machines in order to develop and verify this. Thank you to Dell for providing me with dual socket sandybridge and westmere v3 hardware to do NUMA development with. Thank you to Scott Long at Netflix for providing me with access to the two-socket, four-domain haswell v3 hardware. Thank you to Peter Holm for running the stress testing suite against the NUMA branch during various stages of development! Tested: * MIPS (regression testing; non-NUMA) * i386 (regression testing; non-NUMA GENERIC) * amd64 (regression testing; non-NUMA GENERIC) * westmere, 2 socket (thankyou norse!) * sandy bridge, 2 socket (thankyou dell!) * ivy bridge, 2 socket (thankyou norse!) * westmere-EX, 4 socket / 1TB RAM (thankyou norse!) * haswell, 2 socket (thankyou norse!) * haswell v3, 2 socket (thankyou dell) * haswell v3, 2x18 core (thankyou scott long / netflix!) * Peter Holm ran a stress test suite on this work and found one issue, but has not been able to verify it (it doesn't look NUMA related, and he only saw it once over many testing runs.) * I've tested bhyve instances running in fixed NUMA domains and cpusets; all seems to work correctly. Verified: * intel-pcm - pcm-numa.x and pcm-memory.x, whilst selecting different NUMA policies for processes under test. Review: This was reviewed through phabricator (https://reviews.freebsd.org/D2559) as well as privately and via emails to freebsd-arch@. The git history with specific attributes is available at https://github.com/erikarn/freebsd/ in the NUMA branch (https://github.com/erikarn/freebsd/compare/local/adrian_numa_policy). This has been reviewed by a number of people (stas, rpaulo, kib, ngie, wblock) but not achieved a clear consensus. My hope is that with further exposure and testing more functionality can be implemented and evaluated. Notes: * The VM doesn't handle unbalanced domains very well, and if you have an overly unbalanced memory setup whilst under high memory pressure, VM page allocation may fail leading to a kernel panic. This was a problem in the past, but it's much more easily triggered now with these tools. * This work only controls the path through vm_phys; it doesn't yet strongly/predictably affect contigmalloc, KVA placement, UMA, etc. So, driver placement of memory isn't really guaranteed in any way. That's next on my plate. Sponsored by: Norse Corp, Inc.; Dell
* some additional improvements to the documentation...jmg2015-07-111-4/+19
| | | | Sponsored by: Netflix, Inc.
* yet more documentation improvements... Many changes were made to thejmg2015-07-081-18/+36
| | | | | | | | | | OCF w/o documentation... Document the new (8+ year old) device_t way of handling things, that _unregister_all will leave no threads in newsession, the _SYNC flag, the requirement that a flag be specified... Other minor changes like breaking up a wall of text into paragraphs...
* Fix typo which breaks build of manpages when WITHOUT_MANCOMPRESS is setbapt2015-07-081-1/+1
| | | | | PR: 201153 Reported by: Andriy Voskoboinyk <s3erios@gmail.com>
OpenPOWER on IntegriCloud