2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-31 14:25:26 +00:00
Commit Graph

383 Commits

Author SHA1 Message Date
Jesse Gross
7507ec485f autoconf: Tolerate missing file when grepping.
Currently we die when grepping for compatibility strings if the
file does not exist.  Since this can be a valid situation when
files are added in later versions, we shouldn't kill the build.
Instead, note that the file doesn't exist but otherwise treat it
as if the string was not found.
2010-11-02 17:23:22 -07:00
Jesse Gross
e215ebca67 datapath: Check for backported __wsum and __sum16.
Reported-by: Alexey I. Froloff <raorn@altlinux.org>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>
2010-09-08 10:24:42 -07:00
Jesse Gross
d43e8ef3f4 datapath: Remove netdev_alloc_skb_ip_align() compat code.
We don't actually use this function anymore so there isn't a
point in having a configure test for it.
2010-08-02 11:51:53 -07:00
Alexey I. Froloff
55cc89d6b4 datapath: Fix build with backported netdev_alloc_skb_ip_align()
Signed-off-by: Alexey I. Froloff <raorn@altlinux.org>
2010-08-02 10:20:57 -07:00
Ben Pfaff
f5fb5de6be configure: Add --with-l26-source option to specify source dir explicitly.
OVS can usually find the kernel source itself, but when it can't it's
handy if the user can just specify it on the "configure" command line.

Signed-off-by: Ian Campbell <Ian.Campbell@citrix.com>.
Signed-off-by: Ben Pfaff <blp@nicira.com>
Reported-by: Jad Naous <jnaous@gmail.com>
2010-07-13 13:13:20 -07:00
Ben Pfaff
4eb26d3cd4 datapath: Check for skb_cow_head(), not skb_cow().
skb_cow() has been present since 2.6.12 or earlier, but skb_cow_head() was
added only in 2.6.23, so we were checking for the wrong identifier here.
2010-05-27 15:38:56 -07:00
Jesse Gross
2158888d8d patch: Remove veth driver.
Now that we have a new patch implementation, remove the veth driver
and its userspace components.  Then rename 'patchnew' to 'patch'.
The new implementation is a drop-in replacement for the old one.
2010-05-18 12:57:25 -07:00
Justin Pettit
488a9d1703 datapath: Fix build with backported dev_get_stats().
An upcoming backport adds dev_get_stats() to a pre-2.6.29 Linux kernel, so we
have to check for the presence of an dev_get_stats() definition instead of for
the particular kernel version.
2010-05-17 15:07:10 -07:00
Ben Pfaff
85444c3f79 datapath: Fix build with backported skb_dst().
An upcoming backport adds skb_dst() to a pre-2.6.31 Linux kernel, so we
have to check for the presence of an skb_dst() definition instead of for
the particular kernel version.
2010-05-17 09:35:31 -07:00
Ben Pfaff
4aa13c0c34 acinclude.m4: Reorganize checks for kernel identifiers.
These were getting to be hard to read, so I put them into alphabetical
groups by file and then sorted by identifier within a file.
2010-05-17 09:35:31 -07:00
Jesse Gross
090847a35f datapath: Break out test for dev_disable_lro().
It seems that dev_disable_lro() and skb_warn_if_lro() are not always
defined at the same time, despite the fact that they are typically
used together.  This independently tests for them.
2010-05-06 15:28:46 -07:00
Jesse Gross
14cf356bf2 datapath: Add configure test for skb_warn_if_lro().
Some distributions backport this function, so use a configure
test instead of a version check.

CC: Alexey I. Froloff <raorn@altlinux.org>
2010-05-06 13:15:21 -07:00
Justin Pettit
ea32310720 datapath: Define kmemdup() for kernels older than 2.6.19
The new GRE code requires the kmemdup function, but it's not available
on 2.6.18 kernels.  It has been backported to Xen, so only define it for
non-Xen kernels older than 2.6.19.
2010-04-22 03:37:45 -07:00
Jesse Gross
6f643e4946 tunneling: Remove old GRE implementation.
The new GRE implementation provides a complete drop in replacement
for the old Linux based implementation.  Therefore, remove the
old implementation and rename "grenew" to "gre".
2010-04-19 09:11:58 -04:00
Ben Pfaff
0b6d72fc77 configure: Convert --with-l26=<dir> argument to absolute path.
If the argument to --with-l26 is given as a relative pathname, then if
configuration succeeds, the build will fail, because the current directory
during the kernel build is different from that at configuration time.
Avoid the problem by converting the argument to an absolute path if
necessary.
2010-04-14 10:25:27 -07:00
Ben Pfaff
e0510a6c9b datapath: Support 2.6.33 kernel layout in build system.
The 2.6.33 kernel moves generated header files to include/generated, so
we need to look for autoconf.h there.

Reported-by: Brandon Heller <brandonh@stanford.edu>
2010-03-23 12:09:02 -07:00
Justin Pettit
a4af00400a Merge branch 'master' into next
Conflicts:
	COPYING
	datapath/datapath.h
	lib/automake.mk
	lib/dpif-provider.h
	lib/dpif.c
	lib/hmap.h
	lib/netdev-provider.h
	lib/netdev.c
	lib/stream-ssl.h
	ofproto/executer.c
	ofproto/ofproto.c
	ofproto/ofproto.h
	tests/automake.mk
	utilities/ovs-ofctl.c
	utilities/ovs-vsctl.in
	vswitchd/ovs-vswitchd.conf.5.in
	xenserver/etc_init.d_vswitch
	xenserver/etc_xensource_scripts_vif
	xenserver/opt_xensource_libexec_interface-reconfigure
2010-02-05 17:14:55 -08:00
Ben Pfaff
5819a7cdcf configure: Silence check for broken strtok_r().
The check for strtok_r() prints a line of text on stdout as part of its
run.  This is noticeable when running "configure", especially with -q.
This commit fixes it.

(The apparent alternative of not printing anything at all seems like a bad
idea because this might encourage the compiler to completely optimize
everything out of main().)
2010-01-26 10:55:16 -08:00
Ben Pfaff
b57f675ce5 datapath: Add a find the kernel source directory for Debian 2.6.32+.
Debian's kernel-headers packages starting from 2.6.32 (or thereabouts) put
links to the kernel build and source directories at the same level, named
"build" and "source" respectively.  Add support for this structure.
2010-01-08 13:09:10 -08:00
Justin Pettit
8f3a29be91 datapath: Add missing definitions for building GRE on older kernels 2010-01-04 14:07:26 -08:00
Ben Pfaff
c72e245a0e Add InMon's sFlow Agent library to the build system.
The C source and header files added in this commit is covered under the
InMon sFlow license at http://www.inmon.com/technology/sflowlicense.txt

The library requires -Wno-unused to compile without warnings, so this
commit adds that for building the sFlow code only.  Automake can only
change compiler flags on a per-library or per-program basis, so sFlow
is built as a separate library.

The library will be used in upcoming commits.
2009-12-21 13:18:35 -08:00
Jesse Gross
c3e3d2a1e7 gre: Add kernel GRE support.
This implements the kernel portion of GRE on Linux.  It consists
of a backported module that provides the GRE capabilities of 2.6.32
plus bug fixes to kernels 2.6.18+.
2009-12-07 12:48:03 -08:00
Ben Pfaff
d161c09927 Move C compiler warning (-W) flags from CFLAGS to AM_CFLAGS.
C compiler warning options added by the "configure" script have until
now been put into CFLAGS.  However that option is supposed to be reserved
for the user under Automake rules, so move them to AM_CFLAGS.

Besides increased adherence to Automake rules, this is useful because
AM_CFLAGS can be overridden on a per-target (e.g. program or library)
basis, whereas CFLAGS cannot.  In turn, building the sFlow library (which
will be added in an upcoming commit) requires overriding the compiler
flags to avoid some warning messages.  (By modifying the warning flags, we
avoid the need to modify the sFlow library in any way.)
2009-11-23 11:34:54 -08:00
Ben Pfaff
83f6c0502c acinclude.m4: Fix inconsistency.
Both ; and : are valid shell commands here, but one branch of the "if"
uses one and the other branch uses the other.  Use the same one, for
consistency's sake.
2009-11-23 11:34:54 -08:00
Ben Pfaff
6a33828dbc datapath: Check for proto_data_valid member instead of kernel version.
Commit 5ef800a69 "datapath: Copy Xen's checksumming fields when doing
skb_copy" should copy proto_data_valid between sk_buffs when that field
is present.  However the check for CONFIG_XEN plus kernel version 2.6.18
isn't sufficient, because SLES 11 kernels are version 2.6.27 but do have
this field.

This commit adds a configure-time check for the presence of the member
instead of attempting to guess based on the kernel version.

Thanks to Ian Campbell for reporting this problem.

CC: <Ian.Campbell@citrix.com>
2009-11-18 15:19:50 -08:00
Ben Pfaff
7c9e113b71 datapath: Fix build with kernel header layout recently adopted by Debian.
Recent Debian kernel-header packages divide kernel headers into two
directories: the "common" headers that are not architecture-specific,
which go in a directory named like
    /usr/src/kernel-headers-2.6.31-1-common,
and architecture-specific headers in a directory named, e.g.
    /usr/src/kernel-headers-2.6.31-1-686.
OVS needs to look at the ones in the "common" directory as part of its
configuration process, but the build directory provided on --with-l26 is
the architecture-specific directory.  We also need the
architecture-specific directory, since it is the one that we use as part
of the "make", so we can't simply make the user specify the common
directory on --with-l26.  Furthermore, there is no easy-to-see link
between the two directories, except as part of the text in a Makefile,
which is not the easiest language to parse.

This commit attempts to kluge around the problem by using the Debian
directory naming.  If the build directory does not contain the headers,
then we replace the last component of its name by "-common" and check
for the headers there.  This is not ideal, but it does solve the actual
problem at hand.

Tested with Debian's linux-headers-2.6.31-1-686 and with a few older
sets of headers that do not use this scheme.
2009-11-18 13:03:46 -08:00
Ben Pfaff
3f355f47f8 Merge "citrix" into "master".
This merge took a little bit of care due to two issues:

    - Crossport of "interface-reconfigure" fixes from master back to
      citrix that had happened and needed to be canceled out of the merge.

    - New script "refresh-xs-network-uuids" added on citrix branch that
      needed to be moved from /root/vswitch/scripts to
      /usr/share/vswitch/scripts.
2009-10-22 17:43:28 -07:00
Ben Pfaff
aed944953b datapath: Fix build with Centos 5.3 kernel.
Centos 5.3 backports more functions from later kernel versions to 2.6.18,
so the kernel version number is no longer a reliable way to check for these
functions.  Thus, add a "configure" test for them.

Reported-by: Paulo Cravero <pcravero@as2594.net>
2009-10-09 09:44:51 -07:00
Ben Pfaff
31a7c9e776 Remove --disable-userspace "configure" option, since it breaks "make dist".
I had thought that Automake was smart enough to ignore conditionals around
EXTRA_DIST, so that all files always got distributed regardless of whether
Automake conditionals were set.  I was wrong.

This commit removes the --disable-userspace option to "configure", which
put a conditional around most of Makefile.am and thus unintentionally
caused most of the distribution to be left out if --disable-userspace was
specified.  The alternative (fixing --disable-userspace) seems like too
much work--it would require pushing "if ENABLE_USERSPACE" down into lots
of subdirectory--and would be difficult to maintain.
2009-07-29 16:48:45 -07:00
Ben Pfaff
a14bc59fb8 Update primary code license to Apache 2.0. 2009-06-15 15:11:30 -07:00
Ben Pfaff
e50097d233 Fix glibc 2.7 strtok_r() bug in a more permanent fashion.
The glibc 2.7 headers contain a bug that causes strtok_r() to segfault
in some circumstances.  Until now, we have been working around this
problem at each invocation, but this depends on the programmer to remember
to do so each time.

This commit instead adds a shim that adds a work-around to the string.h
header itself, so that it is much more difficult to miss the workaround.
2009-06-10 15:31:20 -07:00
Ben Pfaff
8833d73dea Remove "dpkg-buildpackage" test from "make distcheck".
Now the Debian packaging is regularly tested via the autobuilder, so there
is less need to do it from "make distcheck", and not doing it saves time
there.
2009-06-09 14:22:52 -07:00
Ben Pfaff
064af42167 Import from old repository commit 61ef2b42a9c4ba8e1600f15bb0236765edc2ad45. 2009-07-08 13:19:16 -07:00