[ovs-git] Open vSwitch: configure: Run sparse automatically if C=1 specified on "make" command. (master)

dev at openvswitch.org dev at openvswitch.org
Mon May 16 20:50:30 UTC 2011


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Open vSwitch".

The branch, master has been updated
       via  29d935d631c522c5e5915d6c0cb9a8af3a1f2390 (commit)
       via  6506f45c0818618e96deb858bbabdf2cc90eb2df (commit)
       via  c4cac9abf211b74c777b86ad7281e7b0f42a3a39 (commit)
       via  eeba8e4fd3b9ae3c69fbf3ae9ef28a55184ac12a (commit)
       via  6879df6b58388ef7dbd8f27c9c152a2df902773d (commit)
       via  0b9275b2c7ed2f88491898345e03618dbfbf4b0f (commit)
       via  f4070db7e5ae7727876d6cc318fba10033dc2c85 (commit)
       via  2932bd0512422ca9540a9a99c57c3a7f60d22df0 (commit)
       via  d84d4b88d26e3f37ce24f1d3eebe0d70ef264f73 (commit)
       via  5eba3806a3a6e0531297e3cd763e23e8c1355abb (commit)
       via  dbba996be2f0d96f4d2999d51c4ef1d16809bad9 (commit)
       via  118c46769fce3be2c70dae494b02753c1db1780d (commit)
       via  e3c17733704fd54fa937ed5e1e8c4b51e00961f1 (commit)
       via  1102893de4f14a2d184afc640c9a1edf778c6a93 (commit)
       via  d3d8f1f7e51c1808471e081c46ec631af7375272 (commit)
       via  805e8f4e2723cc0849bdb17fb81665ea4515fa45 (commit)
       via  9219e45404792b2e0a55e799f8353c63073dce4a (commit)
       via  c5530655f33f066150294fb12e7a73992edd4188 (commit)
      from  35fe11834c85bf7fd86fa1a71f5415c2ca1d64d0 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 29d935d631c522c5e5915d6c0cb9a8af3a1f2390
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=29d935d631c522c5e5915d6c0cb9a8af3a1f2390
Author: Ben Pfaff <blp at nicira.com>
		
configure: Run sparse automatically if C=1 specified on "make" command.
		
The C=1 convention matches the kernel's convention, so running "make C=1"
will now get sparse results for both userspace and kernel compiles.


commit 6506f45c0818618e96deb858bbabdf2cc90eb2df
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=6506f45c0818618e96deb858bbabdf2cc90eb2df
Author: Ben Pfaff <blp at nicira.com>
		
Make the source tree sparse clean.
		
With this commit, the tree compiles clean with sparse commit 87f4a7fda3d
"Teach 'already_tokenized()' to use the stream name hash table" with patch
"evaluate: Allow sizeof(_Bool) to succeed" available at
http://permalink.gmane.org/gmane.comp.parsers.sparse/2461 applied, as long
as the "include/sparse" directory is included for use by sparse (only),
e.g.:
     make CC="CHECK='sparse -I../include/sparse' cgcc"


commit c4cac9abf211b74c777b86ad7281e7b0f42a3a39
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=c4cac9abf211b74c777b86ad7281e7b0f42a3a39
Author: Ben Pfaff <blp at nicira.com>
		
test-sha1: Suppress sparse warning.
		
Otherwise sparse warns: warning: memset with byte count of 1000000


commit eeba8e4fd3b9ae3c69fbf3ae9ef28a55184ac12a
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=eeba8e4fd3b9ae3c69fbf3ae9ef28a55184ac12a
Author: Ben Pfaff <blp at nicira.com>
		
Fix up usage of flow_wildcards_t.
		
The flow_wildcards_t type is defined as a distinct type from sparse's
perspective (with __attribute__((bitwise))) so that we don't accidentally
mix it with only-partially-compatible OFPFW_* flags.  But we were weren't
using it quite right in a few plces.  This fixes it up.


commit 6879df6b58388ef7dbd8f27c9c152a2df902773d
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=6879df6b58388ef7dbd8f27c9c152a2df902773d
Author: Ben Pfaff <blp at nicira.com>
		
csum: Annotate byte order to match actual usage.
		
The IP checksum algorithm yields identical results regardless of whether
arithmetic little-endian or big-endian, but in practice OVS only passes in
big-endian data, so it seems reasonable to annotate these functions that
way.


commit 0b9275b2c7ed2f88491898345e03618dbfbf4b0f
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=0b9275b2c7ed2f88491898345e03618dbfbf4b0f
Author: Ben Pfaff <blp at nicira.com>
		
util: Suppress build assertions when building with sparse.
		
sparse simply doesn't like our build assertions on packed structures.
It seems that its ideas about struct packing are different from GCC's:

../lib/cfm.h:50:1: error: invalid bitfield width, -1.
../lib/packets.h:206:1: error: invalid bitfield width, -1.
../lib/packets.h:213:1: error: invalid bitfield width, -1.
../lib/packets.h:367:1: error: invalid bitfield width, -1.

sparse isn't generating code so we don't really care how it lays out
structures.  We might as well just skip the assertions, as done here.


commit f4070db7e5ae7727876d6cc318fba10033dc2c85
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=f4070db7e5ae7727876d6cc318fba10033dc2c85
Author: Ben Pfaff <blp at nicira.com>
		
Suppress sparse warnings for global variables initialized in headers.
		
sparse warns if a non-static variable with external linkage has an
initializer at first declaration, because it suspects that it should be
static instead.  Generally it's correct, but not in these cases, so add
a redundant declaration to suppress the warning.

The suppress warnings look like:
../ofproto/connmgr.c:40:1: warning: symbol 'VLM_connmgr' was not declared. Should it be static?
../ofproto/collectors.c:31:1: warning: symbol 'vlog_module_ptr_collectors' was not declared. Should it be static?
../ofproto/connmgr.c:43:1: warning: symbol 'counter_ofconn_stuck' was not declared. Should it be static?


commit 2932bd0512422ca9540a9a99c57c3a7f60d22df0
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=2932bd0512422ca9540a9a99c57c3a7f60d22df0
Author: Ben Pfaff <blp at nicira.com>
		
compiler: Suppress sparse complaints about function attributes.
		
GCC allows __attribute__s to be included in function prototypes and
then omitted later on the function definition, but sparse complains about
this.  Furthermore, sparse doesn't like the placement of the __attribute__s
that we tend to use in OVS.

I don't see any value in "fixing" these to suit sparse so it seems better
to just omit them.


commit d84d4b88d26e3f37ce24f1d3eebe0d70ef264f73
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=d84d4b88d26e3f37ce24f1d3eebe0d70ef264f73
Author: Ben Pfaff <blp at nicira.com>
		
Fix incorrect byte order annotations.
		
These are not actual bugs, just deceptive use of the wrong function or
type.

Found by sparse.


commit 5eba3806a3a6e0531297e3cd763e23e8c1355abb
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=5eba3806a3a6e0531297e3cd763e23e8c1355abb
Author: Ben Pfaff <blp at nicira.com>
		
openflow: Change types from uint<N>_t to ovs_be<N>.
		
I've been reluctant in the past to make wholesale changes to openflow.h
because it would be a divergence from upstream that would make comparisons
and merges more difficult.  But, in practice, no one does such comparisons
and no merges happen (because OpenFlow 1.0 is not changing).  I'd still be
inclined to resist, except that in this series I'm adding actual checking
for byte order conventions (as opposed to just documentation).


commit dbba996be2f0d96f4d2999d51c4ef1d16809bad9
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=dbba996be2f0d96f4d2999d51c4ef1d16809bad9
Author: Ben Pfaff <blp at nicira.com>
		
Convert remaining network-byte-order "uint<N>_t"s into "ovs_be<N>"s.
		
I looked at almost every uint<N>_t in the tree to determine whether it was
really in network byte order, and converted the ones that were.

The only remaining ones, modulo my mistakes, are in openflow.h.  I'm not
sure whether we should convert those, because there might be some value
in remaining close to upstream for this header.


commit 118c46769fce3be2c70dae494b02753c1db1780d
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=118c46769fce3be2c70dae494b02753c1db1780d
Author: Ben Pfaff <blp at nicira.com>
		
ofproto: Maintain ofp_phy_port for each ofport in network byte order.
		
It's rather confusing to have an instance of a whole structure in an
unexpected byte order.  This commit gets rid of that oddity.


commit e3c17733704fd54fa937ed5e1e8c4b51e00961f1
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=e3c17733704fd54fa937ed5e1e8c4b51e00961f1
Author: Ben Pfaff <blp at nicira.com>
		
Consistently write null pointer constants as NULL instead of 0.
		
Found with sparse.


commit 1102893de4f14a2d184afc640c9a1edf778c6a93
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=1102893de4f14a2d184afc640c9a1edf778c6a93
Author: Ben Pfaff <blp at nicira.com>
		
ofproto: Drop duplicate "const" in parameter declaration.
		
Found by sparse.


commit d3d8f1f7e51c1808471e081c46ec631af7375272
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=d3d8f1f7e51c1808471e081c46ec631af7375272
Author: Ben Pfaff <blp at nicira.com>
		
Add missing "static" keywords.
		
Found by sparse.


commit 805e8f4e2723cc0849bdb17fb81665ea4515fa45
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=805e8f4e2723cc0849bdb17fb81665ea4515fa45
Author: Ben Pfaff <blp at nicira.com>
		
Remove unnecessary #include directives.
		


commit 9219e45404792b2e0a55e799f8353c63073dce4a
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=9219e45404792b2e0a55e799f8353c63073dce4a
Author: Ben Pfaff <blp at nicira.com>
		
ofproto: Fix ofproto_send_packet() treatment of vlan_tci parameter.
		
ofproto_send_packet() seems very confused about whether vlan_tci is in
host or network byte order.  But the callers always pass 0 anyway, so we
might as well remove it.


commit c5530655f33f066150294fb12e7a73992edd4188
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=c5530655f33f066150294fb12e7a73992edd4188
Author: Ben Pfaff <blp at nicira.com>
		
stream-ssl: Fix call to accept().
		
GCC and glibc conspire to allow struct sockaddr_in * to be passed in
place of struct sockaddr *, but that's non-standard and we're better
off not taking advantage of it.

Found by sparse.


-----------------------------------------------------------------------

Summary of changes:
 acinclude.m4                                       |   35 ++++
 configure.ac                                       |    1 +
 include/automake.mk                                |    1 +
 include/openflow/openflow.h                        |  204 ++++++++++----------
 include/openvswitch/types.h                        |    1 -
 vswitchd/xenserver.h => include/sparse/arpa/inet.h |   12 +-
 lib/valgrind.h => include/sparse/assert.h          |   14 +-
 include/sparse/automake.mk                         |    8 +
 include/sparse/math.h                              |  203 +++++++++++++++++++
 include/sparse/netinet/in.h                        |   95 +++++++++
 include/sparse/netinet/ip6.h                       |   61 ++++++
 include/sparse/sys/socket.h                        |  133 +++++++++++++
 lib/route-table.h => include/sparse/sys/wait.h     |   27 ++--
 lib/bond.c                                         |    2 +-
 lib/byte-order.h                                   |   51 +++--
 lib/compiler.h                                     |    4 +-
 lib/coverage.h                                     |    4 +-
 lib/csum.c                                         |   29 ++-
 lib/csum.h                                         |   15 +-
 lib/daemon.h                                       |   12 +-
 lib/dhcp.h                                         |   14 +-
 lib/dpif-linux.c                                   |   10 +-
 lib/dpif-netdev.c                                  |    8 +-
 lib/flow.c                                         |    2 +-
 lib/flow.h                                         |    2 +-
 lib/json.c                                         |    3 +-
 lib/leak-checker.h                                 |    6 +-
 lib/netdev-linux.c                                 |    7 +-
 lib/netdev-provider.h                              |    3 +-
 lib/netdev-vport.c                                 |    2 +-
 lib/netdev.c                                       |    2 +-
 lib/netdev.h                                       |    3 +-
 lib/nx-match.c                                     |    2 +-
 lib/ofp-print.c                                    |    4 +-
 lib/ofp-util.c                                     |   31 +---
 lib/ofp-util.h                                     |    4 +-
 lib/packets.h                                      |    4 +-
 lib/rconn.c                                        |   12 +-
 lib/rconn.h                                        |    9 +-
 lib/rtnetlink.c                                    |    2 +-
 lib/sflow_receiver.c                               |    4 +
 lib/socket-util.c                                  |    6 +-
 lib/socket-util.h                                  |    3 +-
 lib/stream-ssl.c                                   |    2 +-
 lib/stream-ssl.h                                   |    6 +-
 lib/stress.h                                       |    4 +-
 lib/table.h                                        |   12 +-
 lib/unaligned.h                                    |    7 +
 lib/util.h                                         |    5 +-
 lib/vconn.h                                        |    4 +-
 lib/vlog.h                                         |    6 +-
 ofproto/connmgr.c                                  |    5 +-
 ofproto/netflow.c                                  |   42 ++--
 ofproto/ofproto-sflow.c                            |    2 +-
 ofproto/ofproto.c                                  |   85 ++++----
 ofproto/ofproto.h                                  |    2 +-
 ovsdb/execution.c                                  |   12 +-
 ovsdb/jsonrpc-server.c                             |    4 +-
 ovsdb/log.c                                        |    6 +-
 ovsdb/ovsdb-client.c                               |   10 +-
 ovsdb/ovsdb-server.c                               |   22 +-
 ovsdb/ovsdb-tool.c                                 |   10 +-
 ovsdb/ovsdb.c                                      |    2 +-
 ovsdb/table.c                                      |    2 +-
 tests/test-byte-order.c                            |    6 +-
 tests/test-csum.c                                  |   43 ++--
 tests/test-jsonrpc.c                               |    8 +-
 tests/test-lockfile.c                              |    4 +-
 tests/test-ovsdb.c                                 |    8 +-
 tests/test-sha1.c                                  |    7 +-
 tests/test-vconn.c                                 |    6 +-
 utilities/ovs-appctl.c                             |    4 +-
 utilities/ovs-controller.c                         |   28 ++--
 utilities/ovs-dpctl.c                              |   12 +-
 utilities/ovs-ofctl.c                              |   14 +-
 utilities/ovs-openflowd.c                          |   54 +++---
 utilities/ovs-vlan-bug-workaround.c                |    2 +-
 utilities/ovs-vsctl.c                              |   26 ++--
 vswitchd/ovs-brcompatd.c                           |   10 +-
 vswitchd/ovs-vswitchd.c                            |   14 +-
 80 files changed, 1056 insertions(+), 495 deletions(-)
 copy vswitchd/xenserver.h => include/sparse/arpa/inet.h (76%)
 copy lib/valgrind.h => include/sparse/assert.h (71%)
 create mode 100644 include/sparse/automake.mk
 create mode 100644 include/sparse/math.h
 create mode 100644 include/sparse/netinet/in.h
 create mode 100644 include/sparse/netinet/ip6.h
 create mode 100644 include/sparse/sys/socket.h
 copy lib/route-table.h => include/sparse/sys/wait.h (59%)


hooks/post-receive
-- 
Open vSwitch



More information about the git mailing list