Up to [local] / src / sys / net
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.10.2.1 / (download) - annotate - [select for diffs], Thu Jul 14 11:13:13 2016 UTC (7 years, 10 months ago) by mpi
Branch: OPENBSD_5_9
Changes since 1.10: +5 -0 lines
Diff to previous 1.10 (colored) next main 1.11 (colored)
Backport ARP race fix: Move ARP processing back to the KERNEL_LOCK()ed task until the race triggered by updating a cached, but removed from the table, entry is properly fixed. Diff from dlg@, prodding deraadt@
Revision 1.11, Tue May 3 14:52:39 2016 UTC (8 years, 1 month ago) by mpi
Branch: MAIN
CVS Tags: HEAD
Changes since 1.10: +0 -0 lines
FILE REMOVED
Stop using a soft-interrupt context to process incoming network packets. Use a new task that runs holding the KERNEL_LOCK to execute mp-unsafe code. Our current goal is to progressively move input functions to the unlocked task. This gives a small performance boost confirmed by Hrvoje Popovski's IPv4 forwarding measurement: before: after: send receive send receive 400kpps 400kpps 400kpps 400kpps 500kpps 500kpps 500kpps 500kpps 600kpps 600kpps 600kpps 600kpps 650kpps 650kpps 650kpps 640kpps 700kpps 700kpps 700kpps 700kpps 720kpps 640kpps 720kpps 710kpps 800kpps 640kpps 800kpps 650kpps 1.4Mpps 570kpps 1.4Mpps 590kpps 14Mpps 570kpps 14Mpps 590kpps ok kettenis@, bluhm@, dlg@
Revision 1.10 / (download) - annotate - [select for diffs], Fri Jan 8 13:53:24 2016 UTC (8 years, 5 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE
Branch point for: OPENBSD_5_9
Changes since 1.9: +0 -5 lines
Diff to previous 1.9 (colored)
Get rid of the arp and revarp input queues. Packets of types ARP and REVARP are now processed in the softnet task, directly from ether_input() and without holding the KERNEL_LOCK. Tested by many, ok dlg@
Revision 1.9 / (download) - annotate - [select for diffs], Sat Dec 5 10:07:55 2015 UTC (8 years, 6 months ago) by tedu
Branch: MAIN
Changes since 1.8: +1 -1 lines
Diff to previous 1.8 (colored)
remove old lint annotations
Revision 1.8 / (download) - annotate - [select for diffs], Thu Dec 3 12:22:51 2015 UTC (8 years, 6 months ago) by dlg
Branch: MAIN
Changes since 1.7: +0 -2 lines
Diff to previous 1.7 (colored)
rework if_start to allow nics to provide an mpsafe start routine. existing start routines will still be called under the kernel lock and at IPL_NET. mpsafe start routines will be serialised so only one instance of each interfaces function will be running in the kernel at any point in time. this guarantees packets will be dequeued in order, and the start routines dont have to lock against themselves because if_start does it for them. the code to do that is based on the scsi runqueue code. this also provides an if_start_barrier() function that should wait until any currently running instances of if_start have finished. a driver can opt in to the mpsafe if_start call by doing the following: 1. setting ifp->if_xflags = IFXF_MPSAFE 2. only calling if_start() instead of its own start routine 3. clearing IFF_RUNNING before calling if_start_barrier() on its way down 4. only using IFQ_DEQUEUE (not ifq_deq_begin/commit/rollback) to simplify the implementation the tx mitigation code has been removed. tested by several ok mpi@ jmatthew@
Revision 1.7 / (download) - annotate - [select for diffs], Mon Jul 20 21:16:39 2015 UTC (8 years, 10 months ago) by rzalamena
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE,
OPENBSD_5_8
Changes since 1.6: +0 -4 lines
Diff to previous 1.6 (colored)
Kill NETISR_MPLS, from now on we will use interface input handlers to deal with MPLS packets. ok mpi@, claudio@
Revision 1.6 / (download) - annotate - [select for diffs], Fri Dec 19 17:14:40 2014 UTC (9 years, 5 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE,
OPENBSD_5_7
Changes since 1.5: +0 -2 lines
Diff to previous 1.5 (colored)
unifdef INET in net code as a precursor to removing the pretend option. long live the one true internet. ok henning mikeb
Revision 1.5 / (download) - annotate - [select for diffs], Fri Jul 11 21:54:38 2014 UTC (9 years, 11 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE,
OPENBSD_5_6
Changes since 1.4: +0 -6 lines
Diff to previous 1.4 (colored)
"It's not the years, honey; it's the mileage." bluetooth support doesn't work and isn't going anywhere. the current design is a dead end, and should not be the basis for any future support. general consensus says to whack it so as to not mislead the unwary.
Revision 1.4 / (download) - annotate - [select for diffs], Wed Jan 22 04:03:06 2014 UTC (10 years, 4 months ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_5_5_BASE,
OPENBSD_5_5
Changes since 1.3: +10 -6 lines
Diff to previous 1.3 (colored)
do the tx and pfsync handlers only once on the way out of netisr instead of in every loop. tested for a long time on many machines at work. ok henning@
Revision 1.3 / (download) - annotate - [select for diffs], Tue Aug 20 09:14:24 2013 UTC (10 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.2: +0 -4 lines
Diff to previous 1.2 (colored)
tedu netnatm and ueagle(4). ok mikeb@, sthen@, tedu@ (implied), doc bits ok jmc@
Revision 1.2 / (download) - annotate - [select for diffs], Sat Jul 9 00:47:18 2011 UTC (12 years, 11 months ago) by henning
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE,
OPENBSD_5_4,
OPENBSD_5_3_BASE,
OPENBSD_5_3,
OPENBSD_5_2_BASE,
OPENBSD_5_2,
OPENBSD_5_1_BASE,
OPENBSD_5_1,
OPENBSD_5_0_BASE,
OPENBSD_5_0
Changes since 1.1: +0 -4 lines
Diff to previous 1.1 (colored)
begone, fucking rotten appletalk shit. ok room
Revision 1.1 / (download) - annotate - [select for diffs], Tue Dec 21 14:56:24 2010 UTC (13 years, 5 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE,
OPENBSD_4_9
Convert netisr to a normal soft interrupt instead of hanving MD code for it. This makes the netisr a real C function which will help further development. No noticable performance change on i386 and amd64. With input from kettenis@ and miod@ additional OKs mikeb@ and henning@