summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Microoptimisation of code from r236560, also coming from Nginx Inc.glebius2012-06-041-6/+4
| | | | Submitted by: ru
* Optimise kern_sendfile(): skip cycling through the entire mbuf chain inglebius2012-06-041-4/+10
| | | | | | | | | | m_cat(), storing pointer to last mbuf in chain in local variable and attaching new mbuf to the end of chain. Submitter reports that CPU load dropped for > 10% on a web server serving large files with this optimisation. Submitted by: Sergey Budnevitch <sb nginx.com>
* Fix panic introduced by r235745. Panic occurs after first packet traverse ↵melifaro2012-06-041-2/+22
| | | | | | | | | | | renamed interface. Add several comments on locking Found by: avg Approved by: ae(mentor) Tested by: avg MFC after: 1 week
* Add -p argument for `camcontrol debug` to allow enabling CAM_DEBUG_PROBEmav2012-06-042-3/+11
| | | | added at r208911.
* Remove some dead code that I doubt will ever be implemented.mav2012-06-041-108/+0
|
* Document -r option in SYNOPSIS and usage statement.trociny2012-06-042-3/+3
| | | | | Submitted by: Andrey Zonov <andrey zonov.org> MFC after: 3 days
* On a child exit, call waitpid(2) to clean up the process table.trociny2012-06-041-0/+4
| | | | | Submitted by: Andrey Zonov <andrey zonov.org> MFC after: 1 week
* Restore changes accidentally removed in r235537.gber2012-06-041-0/+3
| | | | Noticed by: avg
* Eliminate the now-unused AT91C_MASTER_CLOCK option and change the oneimp2012-06-042-3/+2
| | | | | place in the source it was used to the more correct AT91C_MAIN_CLOCK. Sort AT91C_MAIN_CLOCK into a better location in the options.arm file.
* Various small changes to PV entry management:alc2012-06-043-36/+37
| | | | | | | | | | | | | | | | | | | Constify pc_freemask[]. pmap_pv_reclaim() Eliminate "freemask" because it was a pessimization. Add a comment about the resident count adjustment. free_pv_entry() [i386 only] Merge an optimization from amd64 (r233954). get_pv_entry() Eliminate the move to tail of the pv_chunk on the global pv_chunks list. (The right strategy needs more thought. Moreover, there were unintended differences between the amd64 and i386 implementation.) pmap_remove_pages() Eliminate unnecessary ()'s.
* Disable verification of the flashed content for now; for reasons unknownmarius2012-06-031-0/+2
| | | | it sometimes causes physwr to hang.
* During buildworld and buildkernel, define EARLY_BUILD in the earlierdim2012-06-032-8/+12
| | | | | | | | | | | | | | | | | | stages (build-tools, cross-tools, etc) of the build, so we can detect in bsd.*.mk whether to pass compiler-specific flags to ${CC}. In particular, this commit will allow using WITH_CLANG_IS_CC when the base compiler is still gcc, and when ${CC}, ${CXX} and ${CPP} are left at their defaults. The early stages will then be built using gcc, and no clang-specific flags will be passed to it. The later stages will be built as usual. The EARLY_BUILD define can also serve other uses, such as building the world stage C++ executables with libc++ instead of libstdc++: during the early build stages, we cannot assume libc++ is already available, so we must still build with libstdc++ at that time. MFC after: 1 week
* Minor rearrangement of the locore <-> initarm interface. Pass in aimp2012-06-0312-47/+56
| | | | | | structure with the first 4 registers to allow a wider range of boot loaders to work. Future commits will make use of this to centralize support for the different loaders.
* Remove code which is not needed.tuexen2012-06-031-4/+0
| | | | MFC after: 3 days
* Add a knob to disable vn_io_fault.kib2012-06-031-1/+5
| | | | MFC after: 1 month
* Count and export the number of prefaulting happen.kib2012-06-031-0/+5
| | | | MFC after: 1 month
* Use an existing function to get the source address.tuexen2012-06-031-60/+10
| | | | MFC after: 3 days
* Fix make dependuqs2012-06-031-1/+1
|
* Minor spelling fixes.joel2012-06-039-9/+9
|
* Minor mdoc improvements.joel2012-06-031-3/+4
|
* Simplify the code by using snprlcat().pjd2012-06-031-27/+24
| | | | MFC after: 3 days
* cpucontrol: use CPUCTL_UPDATE ioctl on correct file descriptoravg2012-06-031-1/+1
| | | | | | | | I guess that means that microcode update has never worked for AMD CPUs. Please also note that only older AMD CPUs and micrcode file format are supported anyway (pre 10h family). MFC after: 1 week
* free wdog_kern_pat calls in post-panic paths from under SW_WATCHDOGavg2012-06-035-22/+9
| | | | | | Those calls are useful with hardware watchdog drivers too. MFC after: 3 weeks
* Minor mdoc improvements.joel2012-06-031-1/+3
|
* Plug reference leak.emax2012-06-031-10/+14
| | | | | | | | | | | | | | Interface routes are refcounted as packets move through the stack, and there's garbage collection tied to it so that route changes can safely propagate while traffic is flowing. In our setup, we weren't changing or deleting any routes, but the refcounting logic in ip6_input() was wrong and caused a reference leak on every inbound V6 packet. This eventually caused a 32bit overflow, and the resulting 0 value caused the garbage collection to run on the active route. That then snowballed into the panic. Reviewed by: scottl MFC after: 3 days
* mdoc: add missing width argument to Bl -tag.joel2012-06-0310-13/+13
|
* Remove stray repeated line...imp2012-06-031-1/+0
|
* - Now that the DataFlash related drivers work properly (at91_spi(4) sincemarius2012-06-031-7/+7
| | | | | r236495 and at45d(4) since r236496), enable them by default. - Sort BOOTP options.
* - Loop up to 3 seconds when waiting for a device to get ready. [1]marius2012-06-031-97/+262
| | | | | | | | | | | | | | | | | | | | | | | | | - Make the device description match the driver name. - Identify the chip variant based on the JEDEC and use that information to use the proper values for page count, offset and size instead of hardcoding a AT45DB642x with 2^N byte page support disabled. - Take advantage of bioq_takefirst(). - Given that CONTINUOUS_ARRAY_READ_HF (0x0b) command isn't even mentioned in Atmel's DataFlash Application Note, as suggested by the previous comment may not work on all all devices and actually doesn't properly on at least AT45DB321D (JEDEC 0x1f2701), rewrite at45d_task() to use CONTINUOUS_ARRAY_READ (0xe8) for reading instead. This rewrite is laid out in a way allowing to easily add support for BIO_DELETE later on. - Add support for reads and writes not starting on a page boundary. - Verify the flash content after writing. - Let at45d_task() gracefully handle errors on SPI transfers and the device not becoming ready afterwards again. [1] - Use DEVMETHOD_END. [1] - Use NULL instead of 0 for pointers. [1] Additional testing by: Ian Lepore Submitted by: Ian Lepore [1] MFC after: 1 week
* - Prepend the device description with "AT91" to reflect its nature. [1]marius2012-06-032-72/+193
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Move DMA tag and map creature to at91_spi_activate() where the other resource allocation also lives. [1] - Flesh out at91_spi_deactivate(). [1] - Work around the "Software Reset must be Written Twice" erratum. - For now, run the bus at the slowest speed possible in order to work around data corruption on transit even seen with 9 MHz on ETHERNUT5 (15 MHz maximum) and AT45DB321D (20 MHz maximum). This also serves as a poor man's work-around for the "NPCSx rises if no data data is to be transmitted" erratum of RM9200. Being able to use the appropriate bus speed would require: 1) Adding a proper work-around for the RM9200 bug consisting of taking the chip select control away from the SPI peripheral and managing it directly as a GPIO line. 2) Taking the maximum frequencies supported by the actual board and the slave devices into account and basing the whole thing on the master clock instead of hardcoding a divisor as previously done. 3) Fixing the above mentioned data corruption. - KASSERT that TX/RX command and data sizes match on transfers. - Introduce a mutex ensuring that only one child device is running a SPI transfer at a time. [1] - Add preliminary, #ifdef'ed out support for setting the chip select. [1] - Use the RX instead of the TX commando size when setting up the RX side of a transfer. - For controllers having SPI_SR_TXEMPTY, i.e. !RM9200, also wait for the completion of the TX part of transfers before stopping the whole thing again. - Use DEVMETHOD_END. [1] - Use NULL instead of 0 for pointers. [1, partially] Additional testing by: Ian Lepore Submitted by: Ian Lepore [1] MFC after: 1 week
* Isolate the global pv list lock from data and other locks to prevent falsealc2012-06-022-2/+22
| | | | sharing within the cache.
* Honor sysctl for TTL.tuexen2012-06-021-3/+3
| | | | MFC after: 3 days
* Don't request data from the IPv6 layer, which is not used.tuexen2012-06-021-26/+3
| | | | MFC after: 3 days
* Add missing prototypes. While at it, sort them alphabetically.marius2012-06-022-14/+73
| | | | MFC after: 3 days
* Remove nitems() now that it lives in <sys/param.h> since r236486.marius2012-06-021-2/+0
|
* Take advantage of nitems().marius2012-06-022-7/+3
| | | | MFC after: 3 days
* Fix typo [1]. Use commas to separate flag printouts, in style withkib2012-06-022-2/+2
| | | | | | | other parts of function. Submitted by: bf [1] MFC after: 1 week
* Add nitems(), a macro for determining the number of elements in amarius2012-06-021-0/+1
| | | | | | | statically-allocated array. Obtained from: OpenBSD (in principle) MFC after: 3 days
* Update the print mask for decoding b_flags. Add print masks forkib2012-06-022-3/+9
| | | | | | b_vflags and b_xflags_t and print them as well. MFC after: 1 week
* Use plain store for atomic_store_rel on x86, instead of implicitlykib2012-06-022-76/+76
| | | | | | | | | locked xchg instruction. IA32 memory model guarantees that store has release semantic, since stores cannot pass loads or stores. Reviewed by: bde, jhb Tested by: pho MFC after: 2 weeks
* Remove an unused parameter.tuexen2012-06-023-8/+8
| | | | MFC after: 3 days
* Install libcxxrt's C++ ABI and unwind headers. This is done in libc++'sdim2012-06-021-0/+7
| | | | | | | Makefile, so these headers go into the same destination directory as libc++'s own headers, currently /usr/include/c++/v1. MFC after: 3 days
* mdoc: minor Bl improvements.joel2012-06-0210-14/+22
|
* Tabify libcxxrt and libc++'s Makefiles.dim2012-06-022-154/+154
| | | | MFC after: 3 days
* Remove invalid remark about pipes.ed2012-06-021-2/+2
| | | | | | | | | The stat structures returned on pipes seems to contain all the information required by POSIX. Especially the wording "and thus to a pipe" makes little sense, because it seems to imply a certain relationship between sockets and pipes that simply isn't there. MFC after: 2 weeks
* Add appropriate checks for ic_bsschan being set to IEEE80211_CHAN_ANYC inhselasky2012-06-023-7/+32
| | | | | | | some of the USB WLAN drivers. This fixes a panic when using monitor mode. MFC after: 1 week Submitted by: PseudoCylon
* mdoc: minor Bl improvements.joel2012-06-027-33/+42
|
* Rewrite enabling NCQ for SATA devices in a way more alike to SCSI TCQ.mav2012-06-024-142/+208
| | | | | | | This allows to control it with `camcontrol negotiate adaX -T (en|dis)able` on the fly, same as for SCSI devices. Sponsored by: iXsystems, Inc.
* Document the limitations of the -delete primaryeadler2012-06-021-1/+4
| | | | | | | | PR: bin/166554 Submitted by: Richard Kettlewell <rjk@greenend.org.uk> Discussed with: jilles Approved by: bcr MFC after: 3 days
* Clean up and complete the incomplete deferred enable code.mjacob2012-06-015-69/+160
| | | | | | | | | | | | Make the default role NONE if target mode is selected. This allows ctl(8) to switch to/from target mode via knob settings. If we default to role 'none', this causes a reset of the 24XX f/w which then causes initiators to wake up and notice when we come online. Reviewed by: kdm MFC after: 2 weeks Sponsored by: Spectralogic
OpenPOWER on IntegriCloud