qemu/default-configs
Scott Feldman dc488f8880 rocker: add new rocker switch device
Rocker is a simulated ethernet switch device.  The device supports up to 62
front-panel ports and supports L2 switching and L3 routing functions, as well
as L2/L3/L4 ACLs.  The device presents a single PCI device for each switch,
with a memory-mapped register space for device driver access.

Rocker device is invoked with -device, for example a 4-port switch:

  -device rocker,name=sw1,len-ports=4,ports[0]=dev0,ports[1]=dev1, \
         ports[2]=dev2,ports[3]=dev3

Each port is a netdev and can be paired with using -netdev id=<port name>.

Signed-off-by: Scott Feldman <sfeldma@gmail.com>
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Acked-by: Scott Feldman <sfeldma@gmail.com>
Acked-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David Ahern <dsahern@gmail.com>
Message-id: 1426306173-24884-7-git-send-email-sfeldma@gmail.com

rocker: fix clang compiler errors

Consolidate all forward typedef declarations to rocker.h.

Signed-off-by: David Ahern <dsahern@gmail.com>
Acked-by: Scott Feldman <sfeldma@gmail.com>
Acked-by: Jiri Pirko <jiri@resnulli.us>

rocker: add support for flow modification

We had support for flow add/del.  This adds support for flow mod.  I needed
this for L3 support where an existing route is modified using NLM_F_REPLACE.
For example:

  ip route add 12.0.0.0/30 nexthop via 11.0.0.1 dev swp1
  ip route change 12.0.0.0/30 nexthop via 11.0.0.9 dev swp2

The first cmd adds the route.  The second cmd changes the existing route by
changing its nexthop info.

In the device, a mod operation results in the matching flow enty being modified
with the new settings.  This is atomic to the device.

Signed-off-by: Scott Feldman <sfeldma@gmail.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2015-05-11 14:49:04 +01:00
..
aarch64-linux-user.mak default-configs: Add config for aarch64-linux-user 2014-01-08 19:07:21 +00:00
aarch64-softmmu.mak default-configs: Add config for aarch64-softmmu 2013-12-17 19:42:31 +00:00
alpha-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
alpha-softmmu.mak pci: Move PCI VGA to pci.mak 2015-02-13 05:46:08 +00:00
arm-linux-user.mak default-configs/: CONFIG_GDBSTUB_XML removed 2013-10-16 18:21:01 +02:00
arm-softmmu.mak hw/usb: Include USB files only if necessary 2015-03-18 11:50:47 +01:00
armeb-linux-user.mak default-configs/: CONFIG_GDBSTUB_XML removed 2013-10-16 18:21:01 +02:00
cris-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
cris-softmmu.mak hw: move NICs to hw/net/, configure via default-configs/ 2013-04-08 18:13:13 +02:00
i386-bsd-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
i386-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
i386-softmmu.mak pci, pc, virtio fixes and cleanups 2015-03-09 09:14:28 +00:00
lm32-softmmu.mak configure: opengl overhaul 2015-03-12 15:49:57 +01:00
m68k-linux-user.mak default-configs/: CONFIG_GDBSTUB_XML removed 2013-10-16 18:21:01 +02:00
m68k-softmmu.mak default-configs/: CONFIG_GDBSTUB_XML removed 2013-10-16 18:21:01 +02:00
microblaze-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
microblaze-softmmu.mak hw: move SSI controllers to hw/ssi/, configure via default-configs/ 2013-04-08 18:13:13 +02:00
microblazeel-linux-user.mak microblaze: Correct copy+paste:o in defconfigs 2011-03-01 22:17:52 +01:00
microblazeel-softmmu.mak defconfigs: Piggyback microblazeel on microblaze 2015-04-30 16:05:48 +03:00
mips64-linux-user.mak linux-user: Add default configs for mips64[el] 2012-02-02 17:51:20 +02:00
mips64-softmmu.mak pci: Move PCI VGA to pci.mak 2015-02-13 05:46:08 +00:00
mips64el-linux-user.mak linux-user: Add default configs for mips64[el] 2012-02-02 17:51:20 +02:00
mips64el-softmmu.mak pci: Move PCI VGA to pci.mak 2015-02-13 05:46:08 +00:00
mips-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
mips-softmmu.mak pci: Move PCI VGA to pci.mak 2015-02-13 05:46:08 +00:00
mipsel-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
mipsel-softmmu.mak pci: Move PCI VGA to pci.mak 2015-02-13 05:46:08 +00:00
mipsn32-linux-user.mak linux-user: Add default-configs for mipsn32[el] 2012-02-02 17:51:20 +02:00
mipsn32el-linux-user.mak linux-user: Add default-configs for mipsn32[el] 2012-02-02 17:51:20 +02:00
moxie-softmmu.mak hw: move MC146818RTC to hw/timer/, configure via default-configs/ 2013-04-08 18:13:13 +02:00
or32-linux-user.mak target-or32: Add linux user support 2012-07-27 21:13:05 +00:00
or32-softmmu.mak target-or32: Add target stubs and QOM cpu 2012-07-27 21:12:55 +00:00
pci.mak rocker: add new rocker switch device 2015-05-11 14:49:04 +01:00
ppc64-linux-user.mak target-ppc: Enable Building of libdecnumber 2014-06-16 13:24:29 +02:00
ppc64-softmmu.mak ppc64-softmmu: Remove duplicated OPENPIC from config 2015-03-09 15:00:07 +01:00
ppc64abi32-linux-user.mak target-ppc: Enable Building of libdecnumber 2014-06-16 13:24:29 +02:00
ppc64le-linux-user.mak target-ppc: Add a new user mode target for little-endian PPC64. 2014-06-16 13:24:40 +02:00
ppc-linux-user.mak target-ppc: Enable Building of libdecnumber 2014-06-16 13:24:29 +02:00
ppc-softmmu.mak PPC: Remove duplicate OPENPIC defines in default-configs 2015-03-09 15:00:07 +01:00
ppcemb-softmmu.mak PPC: Remove duplicate OPENPIC defines in default-configs 2015-03-09 15:00:07 +01:00
s390x-linux-user.mak s390x: build s390x by default 2011-05-20 17:35:12 +02:00
s390x-softmmu.mak s390x/config: Do not include full pci.mak 2015-03-16 10:20:17 +01:00
sh4-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
sh4-softmmu.mak default-configs: add SuperIO to SH4 2013-07-25 08:12:28 -05:00
sh4eb-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
sh4eb-softmmu.mak default-configs: add SuperIO to SH4 2013-07-25 08:12:28 -05:00
sound.mak audio: Enable all cards 2013-05-03 12:04:49 -05:00
sparc32plus-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
sparc64-bsd-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
sparc64-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
sparc64-softmmu.mak pci: Move PCI VGA to pci.mak 2015-02-13 05:46:08 +00:00
sparc-bsd-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
sparc-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
sparc-softmmu.mak sun4m: Add Sun CG3 framebuffer and corresponding OpenBIOS FCode ROM 2014-02-27 10:01:41 +00:00
tricore-softmmu.mak target-tricore: Add initialization for translation and activate target 2014-09-01 14:49:20 +01:00
unicore32-linux-user.mak unicore32: necessary modifications for other files to support unicore32 2011-04-12 18:49:05 +00:00
unicore32-softmmu.mak unicore32-softmmu: Add ps2 support 2012-08-11 09:37:02 +00:00
usb.mak hw/usb: Include USB files only if necessary 2015-03-18 11:50:47 +01:00
x86_64-bsd-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
x86_64-linux-user.mak Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
x86_64-softmmu.mak pci, pc, virtio fixes and cleanups 2015-03-09 09:14:28 +00:00
xtensa-softmmu.mak xtensa_lx60: add FLASH support 2011-11-02 05:05:52 +04:00
xtensaeb-softmmu.mak xtensa_lx60: add FLASH support 2011-11-02 05:05:52 +04:00