> On Jun 11, 2015, at 5:58 PM, Jarno Rajahalme <jrajaha...@nicira.com> wrote: > > >> On Jun 11, 2015, at 5:51 PM, Gurucharan Shetty <shet...@nicira.com> wrote: >> >> On Thu, Jun 11, 2015 at 5:07 PM, Jarno Rajahalme <jrajaha...@nicira.com> >> wrote: >>> >>> >>>> On Jun 11, 2015, at 16:53, Ben Pfaff <b...@nicira.com> wrote: >>>> >>>>> On Thu, Jun 11, 2015 at 04:45:31PM -0700, Jarno Rajahalme wrote: >>>>> Also, avoid using type larger than int in an enum, as it is not >>>>> portable C. >>>> >>>> Did we establish that that was the problem? >>> >>> Haven't heard from Guru yet, took your word for it. Anyway, with this it >>> will be easy to change the version to uint32_t for testing purposes, if the >>> change from enum to a macro was not the fix. >> >> Looks like this patch does help in reducing the number of crashes. But >> there are a lot more tests that still crash with the series. The >> bundle related tests fail too. I will try to get more backtraces. > > > Try this on top and tell if it makes any difference: > > --- a/lib/classifier.h > +++ b/lib/classifier.h > @@ -326,12 +326,12 @@ struct cls_trie { > rcu_trie_ptr root; /* NULL if none. */ > }; > > -typedef uint64_t cls_version_t; > +typedef uint32_t cls_version_t; > > #define CLS_NO_VERSION 0 > #define CLS_MIN_VERSION 1 /* Default version number to use. > */ > -#define CLS_MAX_VERSION (UINT64_MAX - 1) > -#define CLS_NOT_REMOVED_VERSION UINT64_MAX > +#define CLS_MAX_VERSION (UINT32_MAX - 1) > +#define CLS_NOT_REMOVED_VERSION UINT32_MAX > > enum { > CLS_MAX_INDICES = 3, /* Maximum number of lookup indices per subtable. > */ >
For what it’s worth, on Linux 32-bit build (gcc -m32) master, this patch, and this patch with the above incremental all successfully pass the test suite. Jarno >>> >>> Jarno >>> _______________________________________________ >>> dev mailing list >>> dev@openvswitch.org >>> http://openvswitch.org/mailman/listinfo/dev > _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev