summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Log some more information when the RX buffer allocation failed.adrian2013-03-181-2/+5
|
* Sync back vmcontention branch into HEAD:attilio2013-03-1814-448/+997
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace the per-object resident and cached pages splay tree with a path-compressed multi-digit radix trie. Along with this, switch also the x86-specific handling of idle page tables to using the radix trie. This change is supposed to do the following: - Allowing the acquisition of read locking for lookup operations of the resident/cached pages collections as the per-vm_page_t splay iterators are now removed. - Increase the scalability of the operations on the page collections. The radix trie does rely on the consumers locking to ensure atomicity of its operations. In order to avoid deadlocks the bisection nodes are pre-allocated in the UMA zone. This can be done safely because the algorithm needs at maximum one new node per insert which means the maximum number of the desired nodes is the number of available physical frames themselves. However, not all the times a new bisection node is really needed. The radix trie implements path-compression because UFS indirect blocks can lead to several objects with a very sparse trie, increasing the number of levels to usually scan. It also helps in the nodes pre-fetching by introducing the single node per-insert property. This code is not generalized (yet) because of the possible loss of performance by having much of the sizes in play configurable. However, efforts to make this code more general and then reusable in further different consumers might be really done. The only KPI change is the removal of the function vm_page_splay() which is now reaped. The only KBI change, instead, is the removal of the left/right iterators from struct vm_page, which are now reaped. Further technical notes broken into mealpieces can be retrieved from the svn branch: http://svn.freebsd.org/base/user/attilio/vmcontention/ Sponsored by: EMC / Isilon storage division In collaboration with: alc, jeff Tested by: flo, pho, jhb, davide Tested by: ian (arm) Tested by: andreast (powerpc)
| * Commit new file FreeBSD tags.attilio2013-03-173-0/+3
| | | | | | | | Sponsored by: EMC / Isilon storage division
| * MFCattilio2013-03-17202-2771/+3436
| |\ | |/ |/|
* | find: Include nanoseconds when comparing timestamps of files.jilles2013-03-172-20/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When comparing to the timestamp of a given file using -newer, -Xnewer and -newerXY (where X and Y are one of m, c, a, B), include nanoseconds in the comparison. The primaries that compare a timestamp of a file to a given value (-Xmin, -Xtime, -newerXt) continue to compare times in whole seconds. Note that the default value 0 of vfs.timestamp_precision almost always causes the nanoseconds part to be 0. However, touch -d can set a timestamp to the microsecond regardless of that sysctl. MFC after: 1 week
* | Eliminate an intermediate buffer and some memcpy() operations, and doian2013-03-171-67/+43
| | | | | | | | | | | | DMA directly to/from the buffers passed in from higher layer drivers. Reviewed by: gonzo
* | Fix typo in sysctl descriptionmm2013-03-171-1/+1
| | | | | | | | | | Reported by: Jeremy Chadwick MFC after: 3 days
* | Remove negative name cache entry pointing to the target name, whichkib2013-03-172-0/+2
| | | | | | | | | | | | | | | | could be instantiated while tdvp was unlocked. Reported by: Rick Miller <vmiller at hostileadmin com> Tested by: pho MFC after: 1 week
* | In m_align() add assertions that mbuf is virgin, similar to assertionsglebius2013-03-171-4/+12
| | | | | | | | in M_ALIGN(), MH_ALIGN, MEXT_ALIGN() macros.
* | Add MEXT_ALIGN() macro, similar to M_ALIGN() and MH_ALIGN(), but forglebius2013-03-171-1/+13
| | | | | | | | mbufs with external buffer.
* | In m_megapullup() instead of reserving some space at the end of packet,glebius2013-03-171-10/+6
| | | | | | | | | | | | m_align() it, reserving space to prepend data. Reviewed by: mav
* | Fix a typo in a comment.rpaulo2013-03-171-1/+1
| |
* | Remove EOL whitespace accidentally introduced in r248393.joel2013-03-172-2/+2
| |
* | Move example to EXAMPLES.joel2013-03-171-11/+9
| |
* | Move example to EXAMPLES.joel2013-03-171-7/+5
| |
* | In the uart module build ofw_bus_if.h on arm along with sparc64 as LINTandrew2013-03-171-0/+3
| | | | | | | | fails when built locally without it.
* | Add a macro that gets the physical address of a memory mapped deviceian2013-03-174-8/+13
| | | | | | | | | | | | | | | | | | | | | | register from a bus space resource. Note that this macro is just for ARM, and is intended to have a short lifespan. The DMA engines in some SoCs need the physical address of a memory-mapped device register as one of the arguments for the transfer. Several scattered ad-hoc solutions have been converted to use this macro, which now also serves to mark the places where a more complete fix needs to be applied (after that fix has been designed).
* | Link libgcc_s against compiler-rt on ARM EABI. This allows us to use all ofandrew2013-03-171-3/+3
| | | | | | | | | | | | the symbols in compiler-rt, including the ones not available in the old libgcc. This fixes the build with clang which generates calls to funstions that are missing from libgcc_s.
* | The -mno-apcs-frame argument is unavaliable on clang, also ignore it there.andrew2013-03-171-1/+1
| |
* | Require CAP_SEEK if both O_APPEND and O_TRUNC flags are absent.pjd2013-03-161-1/+1
| | | | | | | | | | | | | | | | In other words we don't require CAP_SEEK if either O_APPEND or O_TRUNC flag is given, because O_APPEND doesn't allow to overwrite existing data and O_TRUNC requires CAP_FTRUNCATE already. Sponsored by: The FreeBSD Foundation
* | Update the tests now that absence of the O_APPEND flag requires CAP_SEEKpjd2013-03-161-13/+46
| | | | | | | | | | | | capability. Add some more tests. Sponsored by: The FreeBSD Foundation
* | Add __aeabi_memset to libkern, implemented using memset, as clang mayandrew2013-03-162-0/+50
| | | | | | | | generate calls to it.
* | The mode argument for open(2)/openat(2) only makes sense if the O_CREAT flagpjd2013-03-161-6/+6
| | | | | | | | | | | | was given. Sponsored by: The FreeBSD Foundation
* | Add a couple of examples.joel2013-03-162-2/+26
| | | | | | | | Obtained from: OpenBSD
* | Fix the '-Wtautological-compare' warning emitted by clang for comparing theneel2013-03-161-1/+1
| | | | | | | | | | | | unsigned enum type with a negative value. Obtained from: NetApp
* | Add a note to the HISTORY section about lchflags(2) being introduced inpjd2013-03-161-0/+4
| | | | | | | | FreeBSD 5.0.
* | Allow vmm stats to be specific to the underlying hardware assist technology.neel2013-03-164-10/+43
| | | | | | | | | | | | | | | | | | This can be done by using the new macros VMM_STAT_INTEL() and VMM_STAT_AMD(). Statistic counters that are common across the two are defined using VMM_STAT(). Suggested by: Anish Gupta Discussed with: grehan Obtained from: NetApp
* | Fix version in the .Fx macro.pluknet2013-03-161-1/+1
| | | | | | | | Reported by: <deeptech71@gmail.com>
* | Style: Whitespace fixes.pjd2013-03-161-3/+2
| |
* | Style: Remove redundant space.pjd2013-03-161-1/+1
| |
* | Cross-reference gvinum(8) instead of vinum(8).joel2013-03-167-14/+14
| |
* | Remove reference to vinum(4). The manual page was removed in r248370.joel2013-03-161-2/+2
| |
* | Hide version string under verbose.joel2013-03-161-2/+6
| | | | | | | | Approved by: mav
* | - Replace compat macros with function calls.glebius2013-03-163-3/+3
| |
* | - Replace compat macros with function calls.glebius2013-03-161-17/+15
| | | | | | | | | | | | - Remove superfluous cleaning of m_len after allocating. Sponsored by: Nginx, Inc.
* | Contrary to what the deleted comment said, the m_move_pkthdr()glebius2013-03-161-35/+10
| | | | | | | | | | | | | | | | | | will not smash the M_EXT and data pointer, so it is safe to pass an mbuf with external storage procuded by m_getcl() to m_move_pkthdr(). Reviewed by: andre Sponsored by: Nginx, Inc.
* | Belatedly remove the vinum(4) manual page. The vinumglebius2013-03-163-1167/+1
| | | | | | | | | | | | manager is absent in FreeBSD since 6.0-RELEASE. Reviewed by: joel
* | Change the type of 'ndesc' from 'int' to 'uint16_t' so that descriptor indexneel2013-03-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | wraparound is handled correctly. The gory details are available here: http://lists.freebsd.org/pipermail/freebsd-virtualization/2013-March/001119.html This fixes a regression introduced in r247871. Pointed out by: Bruce Evans, Chris Torek
* | Add END to ARM libkern assembly functionsandrew2013-03-164-1/+19
| |
* | Move the __aeabi_unwind_cpp_pr{0,1,2} functions to libkern so they can beandrew2013-03-163-23/+59
| | | | | | | | referenced in a non-debug kernel.
* | The compiler argument -mno-apcs-frame has no meaning when using EABI as weandrew2013-03-161-0/+2
| | | | | | | | will use aapcs frames, not apcs frames.
* | Implement the required but unused __aeabi_unwind_cpp_* functions in theandrew2013-03-161-0/+15
| | | | | | | | trampoline kernel.
* | Fix the indentation for a few commands that were missed or incorrectlyandrew2013-03-161-3/+3
| | | | | | | | indented in r248362.
* | Adjust the indentation of the trampoline compilation to make the commandsandrew2013-03-161-19/+18
| | | | | | | | easier to follow.
* | Add an END macro to ARM. This is mostly used to tell gas where the boundsandrew2013-03-1636-13/+355
| | | | | | | | of the functions are when creating the EABI unwind tables.
* | Sort syscalls properly.pjd2013-03-151-1/+1
| |
* | sh: Recognize "--" and explicitly reject options in wait builtin.jilles2013-03-153-3/+11
| | | | | | | | | | | | If syntactically invalid job identifiers are to be taken as jobs that exited with status 127, this should not apply to options, so that we can add options later if need be.
* | Why'd I keep this here? remove it entirely now.adrian2013-03-151-2/+0
| |
* | Add a few examples.joel2013-03-157-7/+102
| | | | | | | | Obtained from: OpenBSD
* | Fix two bugs:adrian2013-03-151-3/+8
| | | | | | | | | | | | | | | | | | * when pulling frames off of the TID queue, the ATH_TID_REMOVE() macro decrements the axq_depth field. So don't do it twice. * in ath_tx_comp_cleanup_aggr(), bf wasn't being reset to bf_first before walking the buffer list to complete buffers; so those buffers will leak.
OpenPOWER on IntegriCloud