Commit Graph

123 Commits

Author SHA1 Message Date
pooka
962bc2f851 reset wrap where necessary 2010-08-15 21:41:39 +00:00
pooka
50fa67ff5f Move the lockops together with the interface -- they are needed
only at runtime.
2010-08-15 18:55:03 +00:00
pooka
9ae53a340e Take kernel lock before passing data to if_input. This is in line
with IPL_NET interrupts generally not being MPSAFE.
2010-08-15 18:48:38 +00:00
pooka
dc24e61692 introduce a sleep to trying to grab the bus 2010-08-15 18:47:38 +00:00
pooka
b1559dbb99 Don't do timestamping with buslock held. it's the little things ... 2010-08-15 18:40:41 +00:00
pooka
86d75f6695 truncate pcap output file 2010-08-13 11:45:47 +00:00
pooka
b97bdf9424 Include a timestamp in the frame header. When converting to pcap,
it can give some idea of when packets were sent.

nb. it's the sending host's timestamp, not an observer timestamp
like in the typical pcap case.
2010-08-13 10:13:44 +00:00
pooka
ce68b7ae71 Include a pointer to the beginning of the buffer and add support
to the packet dumper.  This helps in situations where the juicy
details are in a bus multiple generations old.
2010-08-12 21:41:47 +00:00
pooka
38800eaa1c further simplify & fix calculations 2010-08-12 18:39:54 +00:00
pooka
6461f6dd05 Recognize ``-'' for stdout. allows piping output to tcpdump -r - 2010-08-12 18:22:40 +00:00
pooka
d5a83df798 * include a magic number in the bus format
* simplify offset calculations by making them start from beginning of data
2010-08-12 18:17:23 +00:00
pooka
36e63e6874 Make shmif memory access slightly more sane. Create a header which
is shared by the interface and the bus analyzer.
2010-08-12 17:33:55 +00:00
pooka
3b2b85fd24 pass Wall 2010-08-12 17:00:41 +00:00
pooka
65028c6bf3 Add a little utility to convert shmif bus traffic to a pcap file
which can be then examined with tcpdump -r, wireshark, etc.
2010-08-11 12:41:09 +00:00
pooka
e2f111efb1 * remove some magic numbers from the code
* include bus version number in header just in case we want to examine
  bus traffic at some point in the future
2010-08-11 12:10:39 +00:00
pooka
855ec3e9a1 Change bus header a little: reserve only 32bits for the lock and
use 32bit atomic ops to handle it.  Begin data from 0x10 instead
of 0x14.
2010-08-11 10:30:30 +00:00
pooka
6fe4bb4ba8 Support carp. It would be nice to support this as its own component,
but there's about 1000 lines of #ifdef which disagree with my wish.
2010-08-10 21:50:10 +00:00
pooka
10881f3354 Attach 1 loop instead of 0.
not tested on animals
2010-08-10 21:48:23 +00:00
pooka
066824f414 * use atomic ops instead of __cpu_simple_luck
* this interface is un-IFF_SIMPLEX
2010-08-10 18:17:12 +00:00
pooka
8a20e6b473 * improve diagnostic print
* deal with a tap quirk when it returns 0 bytes
2010-08-10 18:06:10 +00:00
pooka
316bb4eafe * print interface number, backend path and ethernet address for dmesg
* make kassert more demanding
2010-07-29 22:48:11 +00:00
pooka
334470517a * increase bus size so that we don't wrap so quickly when NFS
flushes writes
* verbosize debug print a bit
2010-07-29 18:30:39 +00:00
rmind
bcc65ff09f Split-off IPv4 re-assembly mechanism into a separate module. Abstract
into ip_reass_init(), ip_reass_lookup(), etc (note: abstraction is not
yet complete).  No functional changes to the actual mechanism.

OK matt@
2010-07-13 22:16:10 +00:00
pooka
c0f3dfaa52 Fix pointer assignment in previous commit (test compile works better
when you do it with the #defines which actually compile the code
in question).
2010-07-04 15:44:46 +00:00
pooka
54c71dee8c Use a bit more than 1 byte of space for routing messages. 2010-07-04 15:31:04 +00:00
kefren
826653c190 Add MPLS support, proposed on tech-net@ a couple of days ago
Welcome to 5.99.33
2010-06-26 14:24:27 +00:00
pooka
977a0ef122 Dump rump kernel bootstrap time. 2010-05-31 23:13:17 +00:00
pooka
99d0de7a5e Remove bpf modload code. With the current state of affairs, the
kernel module either be autoloaded from the host or the kernel
module ABI is not supported on the given arch.
2010-04-30 21:05:52 +00:00
joerg
936abdd9c5 Fix typo 2010-04-05 16:35:30 +00:00
joerg
58e867556f Push the bpf_ops usage back into bpf.h. Push the common ifp->if_bpf
check into the inline functions as well the fourth argument for
bpf_attach.
2010-04-05 07:19:28 +00:00
pooka
a183ecd06c Remove unused opt_bluetooth.h
plunky: "feel free"
2010-03-26 18:15:15 +00:00
pooka
5f0c4c358e bluetooth stack component for rump 2010-03-22 12:08:44 +00:00
pooka
510a73e003 Introduce RUMP_COMPONENT. It behaves mostly like a simplified
module which is linked into the kernel and cannot be unloaded.
The main purpose is to get the proper constructors run and create
any /dev nodes necessary for said component.  Once more of the
kernel (e.g. networking stack and device drivers) are converted to
MODULE and devfs pops up from somewhere, rump components can be
retired.
2010-03-01 13:12:19 +00:00
pooka
643ba90bf0 Globally define -Wno-pointer-sign, as it has become a pointless
exercise of "add it to every Makefile individually".

XXX: should autosynchronize with the rest of the kernel buildflags
in sys/conf/Makefile.kern.inc.
2010-02-16 20:42:44 +00:00
pooka
9d22319fa9 Move the net80211 support component into the proper place in "net"
and install as rumpnet_net80211.
2010-02-05 22:01:38 +00:00
pooka
ffdaceb3e7 * add comment explaining why we randomize the last source ip octet
* fix bug in randomization (well, at least with the current configuration ..)
2010-01-29 12:34:17 +00:00
martti
40b313cfaa Use tabs instead of 8 spaces. 2010-01-27 13:30:45 +00:00
pooka
c52d5453ad support bpf from sockin too (i.e. DLT_NULL/AF_UNSPEC) 2010-01-26 17:52:21 +00:00
pooka
3694a1482e support bpf 2010-01-26 17:41:20 +00:00
pooka
daa3b2e4c7 need rumpvfs for etfs_register() and sys_mknod() 2010-01-25 22:26:19 +00:00
pooka
d70c91c8de In case opening /dev/bpf fails, try to load bpf kmod and try again. 2010-01-25 22:25:38 +00:00
pooka
89a3fc440c Add components necessary for bpf support (commented out just for
the sheer heck of it).
2010-01-19 22:47:46 +00:00
pooka
b014350f7f Redefine bpf linkage through an always present op vector, i.e.
#if NBPFILTER is no longer required in the client.  This change
doesn't yet add support for loading bpf as a module, since drivers
can register before bpf is attached.  However, callers of bpf can
now be modularized.

Dynamically loadable bpf could probably be done fairly easily with
coordination from the stub driver and the real driver by registering
attachments in the stub before the real driver is loaded and doing
a handoff.  ... and I'm not going to ponder the depths of unload
here.

Tested with i386/MONOLITHIC, modified MONOLITHIC without bpf and rump.
2010-01-19 22:08:16 +00:00
pooka
23a987d2a2 Make build with PF_INET-is-the-"NIC" support again. 2010-01-19 17:51:03 +00:00
pooka
fe3e79c05a * add option to use bpf to dump response
* randomize local address to avoid poor confused peers due to us
  "rebooting" quite rapidly when testing.
2010-01-16 20:47:01 +00:00
pooka
c3ac0e0ea8 move bpfilter.h to a more central location 2010-01-16 18:02:19 +00:00
pooka
29ca934b44 support bpf 2010-01-16 17:55:50 +00:00
pooka
435aa34303 print mbuf statistics a few times. incidentally, can be used to
test percpu.
2010-01-15 18:38:16 +00:00
pooka
fbc989bbef Use linker script to make __start/stop_link_set_modules be present
in libs built with binutils >=2.19.  This is a less error-prone
method than the previous where components had to be tagged in the
Makefile as modules (and if they weren't, things broke.  and vice
versa).
2009-12-12 17:10:19 +00:00
pooka
eede817dfd Include component.c instead of dummy.c so that domain constructors
get properly called.
2009-12-11 16:34:50 +00:00