|
Revision tags: v6.4.0, v6.4.0rc1, v6.5.0, v6.2.2, v6.2.1, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0 |
|
| #
f933b737 |
| 25-May-2019 |
Sascha Wildner <saw@online.de> |
kernel/netmap: Move headers into <net/netmap/...>.
Note that netmap isn't hooked into the build right now, and because of that, this commit results in removing them from their current location.
Som
kernel/netmap: Move headers into <net/netmap/...>.
Note that netmap isn't hooked into the build right now, and because of that, this commit results in removing them from their current location.
Some dports like net/libpcap started breaking after 2c68437386f4be2ed45a4 because configure found a building netmap_user.h and decided that we have a current and usable netmap.
Reported-by: zrj
show more ...
|
|
Revision tags: v5.4.3, v5.4.2, v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1 |
|
| #
afd2da4d |
| 03-Aug-2016 |
Matthew Dillon <dillon@apollo.backplane.com> |
kernel - Remove PG_ZERO and zeroidle (page-zeroing) entirely
* Remove the PG_ZERO flag and remove all page-zeroing optimizations, entirely. Aftering doing a substantial amount of testing, these
kernel - Remove PG_ZERO and zeroidle (page-zeroing) entirely
* Remove the PG_ZERO flag and remove all page-zeroing optimizations, entirely. Aftering doing a substantial amount of testing, these optimizations, which existed all the way back to CSRG BSD, no longer provide any benefit on a modern system.
- Pre-zeroing a page only takes 80ns on a modern cpu. vm_fault overhead in general is ~at least 1 microscond.
- Pre-zeroing a page leads to a cold-cache case on-use, forcing the fault source (e.g. a userland program) to actually get the data from main memory in its likely immediate use of the faulted page, reducing performance.
- Zeroing the page at fault-time is actually more optimal because it does not require any reading of dynamic ram and leaves the cache hot.
- Multiple synth and build tests show that active idle-time zeroing of pages actually reduces performance somewhat and incidental allocations of already-zerod pages (from page-table tear-downs) do not affect performance in any meaningful way.
* Remove bcopyi() and obbcopy() -> collapse into bcopy(). These other versions existed because bcopy() used to be specially-optimized and could not be used in all situations. That is no longer true.
* Remove bcopy function pointer argument to m_devget(). It is no longer used. This function existed to help support ancient drivers which might have needed a special memory copy to read and write mapped data. It has long been supplanted by BUSDMA.
show more ...
|
|
Revision tags: v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4 |
|
| #
b4051e25 |
| 22-Jan-2015 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
ifnet: Make ifnet and ifindex2ifnet MPSAFE
- Accessing to these two global variables from non-netisr threads uses ifnet lock. This kind of accessing is from - Accessing to ifindex2ifnet from neti
ifnet: Make ifnet and ifindex2ifnet MPSAFE
- Accessing to these two global variables from non-netisr threads uses ifnet lock. This kind of accessing is from - Accessing to ifindex2ifnet from netisrs are lockless MPSAFE. - Netisrs no longer access ifnet, instead they access ifnet array as of this commit, which is lockless MPSAFE.
Rules for accessing ifnet and ifindex2ifnet is commented near the declaration of the related global variables/functions in net/if_var.h.
show more ...
|
|
Revision tags: v4.0.3 |
|
| #
94d0f1d5 |
| 09-Jan-2015 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
netmap: Remove unnecessary ifunit call
|
|
Revision tags: v4.0.2 |
|
| #
48b2c4af |
| 22-Dec-2014 |
Sascha Wildner <saw@online.de> |
kernel/netmap: Switch sysctls over to dev.netmap like in FreeBSD.
|
|
Revision tags: v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3 |
|
| #
3c0add62 |
| 10-Jun-2014 |
Franco Fichtner <franco@lastsummer.de> |
netmap: reconstruct vm_page_getfake/vm_page_updatefake
Taken from: FreeBSD
|
|
Revision tags: v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1 |
|
| #
8b6c789b |
| 26-Jan-2014 |
Franco Fichtner <franco@lastsummer.de> |
netmap: bring back cdevpriv usage
This partially reverts commit 3efed4582e1 now that we have these functions. There are three remaining porting issues:
* vm fake pages support * poll to kqfilter *
netmap: bring back cdevpriv usage
This partially reverts commit 3efed4582e1 now that we have these functions. There are three remaining porting issues:
* vm fake pages support * poll to kqfilter * if_transmit
show more ...
|
| #
785c7ee6 |
| 03-Jan-2014 |
Franco Fichtner <franco@lastsummer.de> |
netmap: reduce upstream diff output; bring back __FBSDIDs
|
| #
3efed458 |
| 03-Jan-2014 |
Franco Fichtner <franco@lastsummer.de> |
netmap: properly store private device data
Yes, one could go through the trouble of redefining the cdevpriv functions as macros returning wild errors, but it looks a lot cleaner in native code.
|
| #
b3f97fad |
| 02-Jan-2014 |
Franco Fichtner <franco@lastsummer.de> |
netmap: change header includes
Suggested-by: sephe
FWIW, kqfilter() port is not really going well as poll() is doing a bunch of loosely related drive-by actions that somehow form the API. The best
netmap: change header includes
Suggested-by: sephe
FWIW, kqfilter() port is not really going well as poll() is doing a bunch of loosely related drive-by actions that somehow form the API. The best approach would be to thin out the implementation to at least get the bare core functionality working. That'll also include writing new userland glue. Feels more like a fork than a port that way. :(
show more ...
|
| #
f27ed164 |
| 01-Jan-2014 |
Franco Fichtner <franco@lastsummer.de> |
netmap: d_poll -> d_kqfilter
netmap_poll() is a monster. No clue how to move it over to the kqfilter API just yet.
|
| #
13431b3e |
| 01-Jan-2014 |
Franco Fichtner <franco@lastsummer.de> |
netmap: fix all the cdev prototypes
While there, reduce diff noise against vanilla sources.
|
| #
bf9f7c16 |
| 01-Jan-2014 |
Franco Fichtner <franco@lastsummer.de> |
netmap: more porting; undo some mistakes
Probably adds new issues, too. There's some VM magic, cdev_t adaption and a couple of network internals left.
|
| #
ed9bd855 |
| 28-Dec-2013 |
Franco Fichtner <franco@lastsummer.de> |
netmap: lock(9), k*() foo, no ifdefs
The ifdef glue is a bit hard to see through. Remove it now to bring it back later with appropriate ifdefs for DragonFly.
|
| #
fb578518 |
| 24-Dec-2013 |
Franco Fichtner <franco@lastsummer.de> |
netmap: initial import of netmap core
Vanilla sources; not hooked up to the build.
Taken-from: https://code.google.com/p/netmap/ (3b385fe7854d)
|