Commit Graph

294 Commits

Author SHA1 Message Date
rtr
d54d7ab24a * split PRU_CONTROL functionality out of xxx_userreq() switches and place
into separate xxx_ioctl() functions.
* place KASSERT(req != PRU_CONTROL) inside xxx_userreq() as it is now
  inappropriate for req = PRU_CONTROL in xxx_userreq().
* replace calls to pr_generic() with req = PRU_CONTROL with pr_ioctl().
* remove & fixup references to PRU_CONTROL xxx_userreq() function comments.
* fix various comments references for xxx_userreq() that mentioned
  PRU_CONTROL as xxx_userreq() no longer handles the request.

a further change will follow to fix parameter and naming inconsistencies
retained from original code.

Reviewed by rmind@
2014-06-22 08:10:18 +00:00
rmind
60d350cf6d - Implement pktqueue interface for lockless IP input queue.
- Replace ipintrq and ip6intrq with the pktqueue mechanism.
- Eliminate kernel-lock from ipintr() and ip6intr().
- Some preparation work to push softnet_lock out of ipintr().

Discussed on tech-net.
2014-06-05 23:48:16 +00:00
justin
129ca10eeb Add missing __diagused in rump code 2014-05-28 20:57:22 +00:00
rmind
4ae03c1815 - Split off PRU_ATTACH and PRU_DETACH logic into separate functions.
- Replace malloc with kmem and eliminate M_PCB while here.
- Sprinkle more asserts.
2014-05-19 02:51:24 +00:00
rmind
37af0cc75d Fix RUMP build. 2014-05-18 17:57:44 +00:00
pooka
75b2fca271 comment meets reality 2014-05-09 06:12:48 +00:00
pooka
cd5f3c7d0b Move a few stubs to where they really belong; allows us to create
them as strong instead of weak symbols.
2014-04-26 11:23:03 +00:00
njoly
744fc7ad3b No lint for rumpnet npf library. 2014-04-04 13:57:33 +00:00
pooka
271d5dd119 use if_initname() instead of homegrown sprintf 2014-04-02 19:44:15 +00:00
christos
c1ae06abab kill sprintf 2014-03-20 20:42:08 +00:00
riastradh
6cb10275d0 Merge riastradh-drm2 to HEAD. 2014-03-18 18:20:35 +00:00
pooka
c310bd104c Trim alignment out of packet length before passing it up. 2014-03-18 18:10:08 +00:00
pooka
b649a59f0c Remember to bump revision for the "int my time VIF_DYING" change yesterday. 2014-03-14 10:06:22 +00:00
pooka
bfdd7f7dd6 No reason to attach if_virt as a RUMP_COMPONENT(), simply use MODULE(). 2014-03-13 21:11:12 +00:00
pooka
253367bf89 remove unnecessary header inclusions 2014-03-13 20:59:12 +00:00
pooka
c284920659 allow VIF_DYING() implementation to protest 2014-03-13 20:55:26 +00:00
pooka
be1e2f2afe Rename rumpcomp_user.c -> virtif_user.c
Convert to new-style RUMPCOMP_USER_SRCS in Makefile.
2014-03-13 18:14:13 +00:00
pooka
3d3f829e6e rename component.c -> netinet6_component.c 2014-03-13 02:08:44 +00:00
pooka
c26312e1c9 rename component.c -> bridge_component.c 2014-03-13 02:08:24 +00:00
pooka
8e9b788b4d rename component.c -> shmif_component.c 2014-03-13 02:08:04 +00:00
pooka
5c81644c6d rename component.c -> netinet_component.c 2014-03-13 02:07:42 +00:00
pooka
6f134b415a rename component.c -> npf_component.c 2014-03-13 02:07:24 +00:00
pooka
d9186bd3ba rename component.c -> agr_component.c 2014-03-13 02:07:03 +00:00
pooka
9fa21880a4 rename component.c -> net_component.c 2014-03-13 02:06:32 +00:00
pooka
2531d6c274 rename component.c -> netbt_component.c 2014-03-13 02:06:16 +00:00
pooka
ab22d87541 rename component.c -> sockin_component.c 2014-03-13 02:05:49 +00:00
pooka
a2cb21d6b1 rename component.c -> netmpls_component.c 2014-03-13 02:05:29 +00:00
pooka
6427e8d3c9 rename component.c -> local_component.c 2014-03-13 02:04:59 +00:00
pooka
d1665e5a2e rename rumpcomp_user.* -> shmif_user.* 2014-03-13 01:42:59 +00:00
pooka
00328592e2 rename rumpcomp_user.* -> sockin_user.* 2014-03-13 01:40:30 +00:00
pooka
b05100a488 component.c -> virtif_component.c, just to decrease risk of conflicts.
No runtime change.
2014-03-12 23:42:33 +00:00
pooka
01c3a6e39b Separate common bits for all interfaces implementing virtif hypercalls
from Makefile to Makefile.virtif.  The latter is meant to be .included.
2014-03-12 23:40:58 +00:00
pooka
30baf09a3c When sending, only load mbufs which have a length. This is especially
useful for fragmented datagrams where the tail of the first packet is
full of nothing.
2014-03-12 17:49:13 +00:00
pooka
da53b95428 also include bsd.own.mk, so value for RUMP_NPF_TESTING can come from mk.conf 2014-03-03 19:09:52 +00:00
pooka
ddbee4681a For now, make it possible to not specify -D_NPF_TESTING by compiling
with RUMP_NPF_TESTING_=no.  This in turn makes it possible to use npf
in a rump kernel for real packet filtering instead of just testing.

no change to default
2014-03-03 14:01:30 +00:00
pooka
c40bbed43a Pull in the changes from the dpdk, netmap and snabb switch repos.
There are two major changes:

1) All thread context policy is pushed down to the hypercalls.
   This is meant to help performance-mongering implementations be
   able to control packet scheduling better (e.g. pin down packet
   reception to certain physical cores).
2) Generalize linkstr, meaning that the interface can now take an
   arbitrary string which is passed to the create() hypercall.  This can
   be used to map backend device characteristics to the rump kernel
   interface instance.
2014-03-03 13:56:40 +00:00
pooka
711a488a45 Run constructor as part of network faction bootstrap, not device
(rumpdev no longer necessary)
2014-02-26 02:39:29 +00:00
skrll
d44a8024fa Fix typo in fix for PR/48606 2014-02-21 08:33:51 +00:00
christos
7d843710ef PR/48606: Lloyd Parkes: Drivers not using ifp->if_input but using ether_input
directly.
2014-02-21 02:10:40 +00:00
pooka
459f46c52b Register netisr's from component constructors instead of via a hardcoded
global list.
2014-02-14 01:43:13 +00:00
pooka
b50bd486cc OpenBSD has kqueue 2014-01-08 11:06:33 +00:00
pooka
acb676442c Allow kernels compiled with INET+INET6 to be booted as IPv4-only or IPv6-only. 2014-01-02 18:29:01 +00:00
pooka
1150b99ea3 use _KERNEL_RCSID only in _KERNEL, _RCSID elsewhere 2013-12-20 10:00:59 +00:00
pooka
1a7f9ac66c header massage, mostly improves portability 2013-12-20 09:06:35 +00:00
rmind
4db7db6b0f Move rumpnet_bpfjit under MKSLJIT as well. 2013-11-16 14:00:57 +00:00
rmind
6e88b59054 Build rumpkern_sljit and rumpnet_bpfjit; include them into the sets. 2013-11-16 01:39:17 +00:00
rmind
80f3a45395 Add rumpkern_sljit and rumpnet_bpfjit modules. 2013-11-16 01:23:37 +00:00
joerg
5dce7f2a9f Fix syntax for undefined HAVE_GCC. 2013-11-11 00:56:20 +00:00
rmind
a79812ea10 NPF: add support for specifying the interfaces before they are attached.
If an interface is or gets detached, all associated rules and connections
will be deactivated (it might be useful to have an option to invalidate
the associated connections).  Once the interface is reattached they will
become active.

Bump NPF_VERSION.
2013-11-08 00:38:26 +00:00
christos
c2157dc68c avoid gcc bug on sh3 2013-11-07 21:30:58 +00:00