#
2ba12c9c |
| 09-Jul-2023 |
Matthew Dillon <dillon@apollo.backplane.com> |
network - Remove ip_len header-length adjustment
* This should remove the last main code path modifications to packet mbuf contents. The IP header in the mbuf is now basically left alone whenev
network - Remove ip_len header-length adjustment
* This should remove the last main code path modifications to packet mbuf contents. The IP header in the mbuf is now basically left alone whenever possible, bringing us in-line with FreeBSD and Linux and removing cache-line bounces between cpus and between a cpu and the related PCIe DMA.
* Do not adjust ip_len to remove the IP header length.
* Various protocol stacks do the subtraction themselves, when needed.
* Various bits of code that added the length back in to execute a function then removed it again cleaned up.
* IP reassembly (in ip_input.c and pf_norm.c) cleaned up.
show more ...
|
#
8a93af2a |
| 08-Jul-2023 |
Matthew Dillon <dillon@apollo.backplane.com> |
network - Remove host-order translations of ipv4 ip_off and ip_len
* Do not translate ip_off and ip_len to host order and then back again in the network stack. The fields are now left in network
network - Remove host-order translations of ipv4 ip_off and ip_len
* Do not translate ip_off and ip_len to host order and then back again in the network stack. The fields are now left in network order.
show more ...
|
Revision tags: v6.4.0, v6.4.0rc1, v6.5.0, v6.2.2, v6.2.1, v6.2.0, 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, 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 |
|
#
5204e13c |
| 07-Aug-2017 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
netisr: Simplify assertion related bits
|
#
3ab718a3 |
| 02-Aug-2017 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
net: Use PR_{FAST,SLOW}HZ, some code has the assumption of these macro usage.
|
Revision tags: v4.8.1 |
|
#
fd16f770 |
| 01-Aug-2017 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
igmp: Don't use pr_slowtimo.
|
#
2e6afa32 |
| 31-Jul-2017 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
igmp: Use callout instead of pffasttimo.
|
Revision tags: v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, 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 |
|
#
b5523eac |
| 19-Feb-2015 |
Sascha Wildner <saw@online.de> |
kernel: Move us to using M_NOWAIT and M_WAITOK for mbuf functions.
The main reason is that our having to use the MB_WAIT and MB_DONTWAIT flags was a recurring issue when porting drivers from FreeBSD
kernel: Move us to using M_NOWAIT and M_WAITOK for mbuf functions.
The main reason is that our having to use the MB_WAIT and MB_DONTWAIT flags was a recurring issue when porting drivers from FreeBSD because it tended to get forgotten and the code would compile anyway with the wrong constants. And since MB_WAIT and MB_DONTWAIT ended up as ocflags for an objcache_get() or objcache_reclaimlist call (which use M_WAITOK and M_NOWAIT), it was just one big converting back and forth with some sanitization in between.
This commit allows M_* again for the mbuf functions and keeps the sanitizing as it was before: when M_WAITOK is among the passed flags, objcache functions will be called with M_WAITOK and when it is absent, they will be called with M_NOWAIT. All other flags are scrubbed by the MB_OCFLAG() macro which does the same as the former MBTOM().
Approved-by: dillon
show more ...
|
Revision tags: v4.0.3, v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0 |
|
#
9b0d12b7 |
| 08-Sep-2014 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
igmp: Prioritize fast and slow timeout netmsgs
|
Revision tags: v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc |
|
#
72659ed0 |
| 13-May-2014 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
ifnet: Properly protect if_multiaddrs using ifnet serializers
- Protect ifnet.if_multiaddrs using ifnet serializers. Add some comment in the places, where only main serailizer is necessary. - Fix
ifnet: Properly protect if_multiaddrs using ifnet serializers
- Protect ifnet.if_multiaddrs using ifnet serializers. Add some comment in the places, where only main serailizer is necessary. - Fix if_delallmulti(). Using TAILQ_FOREACH_MUTABLE is incorrect for deleting an ifmultiaddr from ifnet.if_multiaddrs. Since deleting one ifmultiaddr may cause additional ifmultiaddr deletion (e.g. the AF_LINK ifmultiaddr for AF_INET ifmultiaddr). - Change IN_LOOKUP_MULTI and IN6_LOOKUP_MULTI macros into inline functions. - Redispatch multicast IP packets to netisr0 for further processing. Software based IP packet hash function is changed. And hash value fixup for multicast IP packets is added to the beginning of ip_input(); this is mainly for IP packets, whose hash is calculated by hardware. - For wlan's multicast hardware filter updating, we no longer need to release wlan serializer and mess up w/ the if_ioctl setting.
In netisr0, read and test ifma_refcount for AF_INET ifmultiaddr is MPSAFE w/o ifnet serializers, since its ifma_refcount is only altered in netisr0.
In netisr0, any operation on in_multi, which is obtained from the corresponding ifmuliaddr's ifma_protospec, is MPSAFE w/o ifnet serializers, since ifmultiaddr for AF_INET is only set and cleared in netisr0.
While I'm here also redispatch IP packets w/o hash to the proper netisrs, on ip_input() path. And unnecessary critical sections in in_{add,del}multi() are removed.
show more ...
|
#
b3ccace2 |
| 08-May-2014 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
igmp: Dispatch fast and slow timeout handler to netisr0
Netisr0 is where IGMP is to be handled.
|
Revision tags: v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0, v3.4.3 |
|
#
dc71b7ab |
| 31-May-2013 |
Justin C. Sherrill <justin@shiningsilence.com> |
Correct BSD License clause numbering from 1-2-4 to 1-2-3.
Apparently everyone's doing it: http://svnweb.freebsd.org/base?view=revision&revision=251069
Submitted-by: "Eitan Adler" <lists at eitanadl
Correct BSD License clause numbering from 1-2-4 to 1-2-3.
Apparently everyone's doing it: http://svnweb.freebsd.org/base?view=revision&revision=251069
Submitted-by: "Eitan Adler" <lists at eitanadler.com>
show more ...
|
Revision tags: v3.4.2 |
|
#
2702099d |
| 06-May-2013 |
Justin C. Sherrill <justin@shiningsilence.com> |
Remove advertising clause from all that isn't contrib or userland bin.
By: Eitan Adler <lists@eitanadler.com>
|
Revision tags: v3.4.0, v3.4.1, v3.4.0rc, v3.5.0, v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3, v3.0.2, v3.0.1, v3.1.0, v3.0.0 |
|
#
4090d6ff |
| 03-Jan-2012 |
Sascha Wildner <saw@online.de> |
kernel: Use NULL for pointers.
|
#
884717e1 |
| 06-Dec-2011 |
Sascha Wildner <saw@online.de> |
kernel: Replace all usage of MALLOC()/FREE() with kmalloc()/kfree().
|
#
86d7f5d3 |
| 26-Nov-2011 |
John Marino <draco@marino.st> |
Initial import of binutils 2.22 on the new vendor branch
Future versions of binutils will also reside on this branch rather than continuing to create new binutils branches for each new version.
|
Revision tags: v2.12.0, v2.13.0, v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0, v2.5.1, v2.4.1, v2.5.0, v2.4.0, v2.3.2, v2.3.1, v2.2.1 |
|
#
902ec341 |
| 05-Apr-2009 |
Sascha Wildner <saw@online.de> |
Generally use NULL instead of explicitly casting 0 to some pointer type (part2).
|
Revision tags: v2.2.0, v2.3.0, v2.1.1, v2.0.1 |
|
#
1b562c24 |
| 08-Jun-2008 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
Parallelize in_ifaddrhead operation
|
#
a6ec04bc |
| 22-Dec-2006 |
Sascha Wildner <swildner@dragonflybsd.org> |
Rename printf -> kprintf in sys/ and add some defines where necessary (files which are used in userland, too).
|
#
f3f70f0d |
| 14-Jan-2006 |
Sascha Wildner <swildner@dragonflybsd.org> |
* Remove (void) casts for discarded return values.
* Put function types on separate lines.
* Ansify function definitions.
* Remove __P.
In-collaboration-with: Alexey Slynko <slynko@tronet.ru>
|
#
1cae611f |
| 02-Jun-2005 |
Matthew Dillon <dillon@dragonflybsd.org> |
Remove spl*() calls from netinet, replacing them with critical sections. A slight rearrangement of COMMON_START() in tcp_usrreq.c was necessary to ensure that the inp is loaded after entering the cr
Remove spl*() calls from netinet, replacing them with critical sections. A slight rearrangement of COMMON_START() in tcp_usrreq.c was necessary to ensure that the inp is loaded after entering the critical section.
show more ...
|
#
f23061d4 |
| 21-Dec-2004 |
Jeffrey Hsu <hsu@dragonflybsd.org> |
Clean up the routing and networking code before I parallelize routing.
|
#
a00138cb |
| 03-Jun-2004 |
Joerg Sonnenberger <joerg@dragonflybsd.org> |
Make pr_input use variadic arguments for anything but the first mbuf.
Add a warning for NSIP, it is likely to be broken.
|
#
74f1caca |
| 02-Jun-2004 |
Eirik Nygaard <eirikn@dragonflybsd.org> |
Change mbug allocation flags from M_ to MB_ to avoid confusion with malloc flags.
Requested by: Jeffrey Hsu
|
#
ba4e3dbe |
| 22-Apr-2004 |
Matthew Dillon <dillon@dragonflybsd.org> |
M_NOWAIT to mostly M_INTWAIT conversions, with a splattering of M_NULLOK to prevent exhaustion attacks from crashing the system.
Note in patricular that the MALLOC tseg_qent for the tcp reassembly q
M_NOWAIT to mostly M_INTWAIT conversions, with a splattering of M_NULLOK to prevent exhaustion attacks from crashing the system.
Note in patricular that the MALLOC tseg_qent for the tcp reassembly queue went from M_NOWAIT to M_INTWAIT | M_NULLOK.
show more ...
|
#
3f9db7f8 |
| 14-Feb-2004 |
Matthew Dillon <dillon@dragonflybsd.org> |
Move <machine/in_cksum.h> to <sys/in_cksum.h>. This file is now platform independant. If we want to add extreme machine specialization later on then sys/in_cksum.h will #include machine/in_cksum.h.
Move <machine/in_cksum.h> to <sys/in_cksum.h>. This file is now platform independant. If we want to add extreme machine specialization later on then sys/in_cksum.h will #include machine/in_cksum.h.
Move i386/i386/in_cksum.c to netinet/in_cksum.c. Note that netinet/in_cksum.c already existed but was not used by the build system at all. The move overwrites it. The new in_cksum.c is a portable, complete rewrite which references core assembly (procedure call) to do 32-bit-aligned work. See also i386/i386/in_cksum2.s.
show more ...
|