summaryrefslogtreecommitdiff
path: root/include/linux/automake.mk
Commit message (Collapse)AuthorAgeFilesLines
* make: Remove the Linux datapath.Greg Rose2022-07-151-0/+1
| | | | | | | | | | | | | | | | Update the necessary make and configure files to remove the Linux datapath and then remove the datapath. Move datapath/linux/compat/include/linux/openvswitch.h to include/linux/openvswitch.h because it is needed to generate header files used by the userspace switch. Also remove references to the Linux datapath from auxiliary files and utilities since it is no longer supported. Signed-off-by: Greg Rose <gvrose8192@gmail.com> Reviewed-by: David Marchand <david.marchand@redhat.com> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
* compat: Add gen_stats include to define tc hw stats.Paul Blakey2022-03-041-0/+1
| | | | | | | | | | Update kernel UAPI to support dumping hardware stats of tc filters. Signed-off-by: Paul Blakey <paulb@nvidia.com> Reviewed-by: Roi Dayan <roid@nvidia.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
* compat: Add tc ct action and flower matches defines for older kernelsPaul Blakey2019-12-221-1/+2
| | | | | | | | | Update kernel UAPI to support conntrack matches, and the tc actions ct and goto chain. Signed-off-by: Paul Blakey <paulb@mellanox.com> Reviewed-by: Roi Dayan <roid@mellanox.com> Signed-off-by: Simon Horman <simon.horman@netronome.com>
* tc: Set 'no_percpu' flag for compatible actionsVlad Buslov2019-11-111-0/+1
| | | | | | | | | | | | | | | | | | | | Recent changes in Linux kernel TC action subsystem introduced new TCA_ACT_FLAGS_NO_PERCPU_STATS flag. The purpose of the flag is to request action implementation to skip allocating action stats with expensive percpu allocator and use regular built-in action stats instead. Such approach significantly improves rule insertion rate and reduce memory usage for hardware-offloaded rules that don't need benefits provided by percpu allocated stats (improved software TC fast-path performance). Set the flag for all compatible actions. Modify acinclude.m4 to use OVS-internal pkt_cls.h implementation when TCA_ACT_FLAGS is not defined by kernel headers and to manually define struct nla_bitfield32 in netlink.h (new file) when it is not defined by kernel headers. Signed-off-by: Vlad Buslov <vladbu@mellanox.com> Reviewed-by: Roi Dayan <roid@mellanox.com> Signed-off-by: Simon Horman <simon.horman@netronome.com>
* compat: add compatibility headers for tc mpls actionJohn Hurley2019-08-011-0/+1
| | | | | | | | | | OvS includes compat code for several TC actions including vlan, mirred and tunnel key. MPLS actions have recently been added to TC in the kernel. In preparation for adding TC offload code for MPLS, add the MPLS compat code. Signed-off-by: John Hurley <john.hurley@netronome.com> Reviewed-by: Simon Horman <simon.horman@netronome.com> Signed-off-by: Simon Horman <simon.horman@netronome.com>
* compat: add SCTP netfilter states for older kernelsAaron Conole2019-05-241-0/+1
| | | | | | | | | | | | | Bake in the SCTP states from the kernel UAPI. This means an older revision of the kernel headers won't interfere with the SCTP display enhancement. Additionally, if a newer version is available, or if x-compiling the datapath module we defer to that version (since this is just meant to provide the missing definitions). This will be used in a future commit. Signed-off-by: Aaron Conole <aconole@redhat.com> Signed-off-by: Ben Pfaff <blp@ovn.org>
* compat: add compatibility headers for tc skbedit actionJohn Hurley2019-04-091-0/+1
| | | | | | | | | | OvS includes compat code for several TC actions including vlan, mirred and tunnel key. Add support for using skbedit actions when compiling user-space code against older kernel headers. Signed-off-by: John Hurley <john.hurley@netronome.com> Reviewed-by: Roi Dayan <roid@mellanox.com> Signed-off-by: Simon Horman <simon.horman@netronome.com>
* compat: Add act_pedit compatibility for old kernelsPaul Blakey2017-11-161-0/+1
| | | | | | | | Added compatibility for action pedit. Signed-off-by: Paul Blakey <paulb@mellanox.com> Reviewed-by: Roi Dayan <roid@mellanox.com> Signed-off-by: Simon Horman <simon.horman@netronome.com>
* compat: Add tc compatibility headers for old kernelsPaul Blakey2017-05-301-0/+4
| | | | | | | | | | | | | | Added compatibility headers for actions vlan and tunnel key. Do not use compat code when compiling kernel datapath there is no need for it as TC compatibility is not provided there. In other words, the compat code is only used when compiling user-space code against old kernel headers. Signed-off-by: Paul Blakey <paulb@mellanox.com> Reviewed-by: Roi Dayan <roid@mellanox.com> Acked-by: Flavio Leitner <fbl@sysclose.org> Signed-off-by: Simon Horman <simon.horman@netronome.com>
* Do not seemingly #include Linux-specific headers on other platforms.Ben Pfaff2014-08-041-4/+0
| | | | | | | | | | | | | | | | | | Until now, the OVS source tree has had a whole maze of header files that make "#include <linux/openvswitch.h>" work OK regardless of platform, but this confuses everyone new to the tree, at first glance, and is difficult to understand at second glance too. This commit renames include/linux/openvswitch.h to datapath/linux/compat/include/linux/openvswitch.h without other change, then modifies the userspace build to generate a header that makes sense in portable Open vSwitch userspace from that header. It then removes all the remaining include/linux/* files since they are now unused. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Jesse Gross <jesse@nicira.com>
* datapath: Provide simple version of if_ether.h on non-Linux systems.Jesse Gross2013-03-291-0/+1
| | | | Signed-off-by: Jesse Gross <jesse@nicira.com>
* datapath-protocol: Rename to <linux/openvswitch.h>.Ben Pfaff2011-10-121-1/+3
| | | | | | Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Jesse Gross <jesse@nicira.com> Bug #7559.
* datapath-protocol: Use Linux kernel types directly.Ben Pfaff2011-10-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | We want datapath-protocol.h to be acceptable as a Linux kernel header, so it must use Linux kernel types and must not have references to Open vSwitch symbols or header files. This commit primarily makes that change to datapath-protocol.h. At the same time, at least for now we also want datapath-protocol.h to be usable on non-Linux platforms, so we need some kind of compatiblity. Thus, this commit also introduces a <linux/types.h> header file that defines the necessary Linux kernel types on non-Linux platforms. In turn, this requires openvswitch/types.h to use the Linux types directly for ovs_be<N>; otherwise, sparse complains because now __be<N> and ovs_be<N> are incompatible from its perspective, so this commit makes that change too. I don't have a non-Linux kernel platform readily available, so I only tested the non-Linux part of the linux/types.h substitute by forcing that case to be triggered with #if 0. It worked, except for errors in actual Linux kernel headers included explicitly from OVS source files, so I think it's likely to work in practice. Bug #7559. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Jesse Gross <jesse@nicira.com>
* datapath: Always use generic stats for devices (vports)Pravin Shelar2011-09-151-2/+0
| | | | | | | | | | | | | | | Currently ovs is using device stats for Linux devices and count them itself in other situations. This leads to overlap with hardware stats, inconsistencies, etc. It's much better to just always count the packets flowing through the switch and let userspace do any merging that it wants. Following patch removes vport->get_stats() interface. vport-stat is changed to use new `struct ovs_vport_stat` rather than rtnl_link_stats64. Definitions of rtnl_link_stats64 is removed from OVS. dipf_port->stat is also removed as aggregate stats are only available at netdev layer. Signed-off-by: Pravin B Shelar <pshelar@nicira.com> Acked-by: Jesse Gross <jesse@nicira.com>
* datapath-protocol: Dropped unused __aligned_* types.Jesse Gross2011-02-041-2/+1
| | | | | | | | These types are no longer used, are redundantly defined, and were cluttering our interface header. Signed-off-by: Jesse Gross <jesse@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* Fix "make dist" by adding include/linux/types.h to distribution.Ben Pfaff2010-12-061-1/+3
|
* Fix distribution by adding include/linux/if_link.h to "make dist".Ben Pfaff2010-11-091-0/+1
Why can't I ever get this right the first time?