From jonathan at FreeBSD.org Mon Jun 9 11:40:04 2014 From: jonathan at FreeBSD.org (Jonathan Anderson) Date: Mon, 9 Jun 2014 11:40:04 GMT Subject: PERFORCE change 1196340 for review Message-ID: <201406091140.s59Be4q6060159@skunkworks.freebsd.org> http://p4web.freebsd.org/@@1196340?ac=10 Change 1196340 by jonathan at jonathan-on-zenith on 2014/06/09 11:39:36 Add the TESLA_ALL kernel configuration: like TESLA_ND_ALL, but not ND (No Debug). Affected files ... .. //depot/projects/ctsrd/tesla/src/share/mk/bsd.prog.mk#18 edit .. //depot/projects/ctsrd/tesla/src/sys/contrib/tesla/include/libtesla.h#15 edit .. //depot/projects/ctsrd/tesla/src/sys/contrib/tesla/libtesla/tesla_dtrace.c#14 edit .. //depot/projects/ctsrd/tesla/src/sys/contrib/tesla/libtesla/tesla_internal.h#17 edit .. //depot/projects/ctsrd/tesla/src/sys/contrib/tesla/libtesla/tesla_notification.c#20 edit Differences ... ==== //depot/projects/ctsrd/tesla/src/share/mk/bsd.prog.mk#18 (text+ko) ==== @@ -101,7 +101,7 @@ .if ${MK_TESLA} != "no" && !defined(EARLY_BUILD) tesla.manifest: ${TESLA_FILES} - cat ${TESLA_FILES} > ${.TARGET} + ${TESLA} cat ${TESLA_FILES} -o ${.TARGET} DPADD+= ${LIBTESLA} LDADD+= -ltesla ==== //depot/projects/ctsrd/tesla/src/sys/contrib/tesla/include/libtesla.h#15 (text+ko) ==== @@ -92,12 +92,12 @@ * * Input alphabet symbols are integers in the range [0,alphabet_size]. */ - const int32_t ta_alphabet_size; + const uint32_t ta_alphabet_size; /** * The symbol number used to signal cleanup. */ - const int32_t ta_cleanup_symbol; + const uint32_t ta_cleanup_symbol; /** * Transitions that will be taken in response to events. @@ -136,7 +136,7 @@ const char *tle_repr; /** The length of @ref #tle_repr. */ - const int32_t tle_length; + const uint32_t tle_length; /** * A precomputed hash of @ref #tle_repr. @@ -147,7 +147,7 @@ * All clients should be consistent, however; the TESLA instrumenter * uses SuperFastHash. */ - const int32_t tle_hash; + const uint32_t tle_hash; }; @@ -346,15 +346,15 @@ /** No @ref tesla_class instance was found to match a @ref tesla_key. */ typedef void (*tesla_ev_no_instance)(struct tesla_class *, - int32_t symbol, const struct tesla_key *); + uint32_t symbol, const struct tesla_key *); /** A @ref tesla_instance is not in the right state to take a transition. */ typedef void (*tesla_ev_bad_transition)(struct tesla_class *, - struct tesla_instance *, int32_t symbol); + struct tesla_instance *, uint32_t symbol); /** Generic error handler. */ typedef void (*tesla_ev_error)(const struct tesla_automaton *, - int32_t symbol, int32_t errnum, const char *message); + uint32_t symbol, int32_t errnum, const char *message); /** A @ref tesla_instance has accepted a sequence of events. */ typedef void (*tesla_ev_accept)(struct tesla_class *, @@ -362,7 +362,7 @@ /** An event is being ignored. */ typedef void (*tesla_ev_ignored)(const struct tesla_class *, - int32_t symbol, const struct tesla_key *); + uint32_t symbol, const struct tesla_key *); /** A vector of event handlers. */ struct tesla_event_handlers { ==== //depot/projects/ctsrd/tesla/src/sys/contrib/tesla/libtesla/tesla_dtrace.c#14 (text+ko) ==== @@ -51,17 +51,17 @@ "struct tesla_class *", "struct tesla_instance *", "struct tesla_instance *", "struct tesla_transition *"); SDT_PROBE_DEFINE4(tesla, automata, fail, no_instance, no-instance-match, - "struct tesla_class *", "const char *", "int32_t", + "struct tesla_class *", "const char *", "uint32_t", "struct tesla_transitions *"); SDT_PROBE_DEFINE3(tesla, automata, fail, bad_transition, bad-transition, "struct tesla_class *", "struct tesla_instance *", - "int32_t"); + "uint32_t"); SDT_PROBE_DEFINE4(tesla, automata, fail, other_err, other-error, - "struct tesla_class *", "int32_t", "int", "const char *"); + "struct tesla_class *", "uint32_t", "int32_t", "const char *"); SDT_PROBE_DEFINE2(tesla, automata, success, accept, accept, "struct tesla_class *", "struct tesla_instance *"); SDT_PROBE_DEFINE3(tesla, automata, event, ignored, ignored-event, - "struct tesla_class *", "int32_t", "struct tesla_key *"); + "struct tesla_class *", "uint32_t", "struct tesla_key *"); static void sunrise(enum tesla_context c, const struct tesla_lifetime *tl) @@ -101,7 +101,7 @@ } static void -no_instance(struct tesla_class *tcp, int32_t symbol, +no_instance(struct tesla_class *tcp, uint32_t symbol, const struct tesla_key *tkp) { char instbuf[200]; @@ -130,7 +130,7 @@ static void bad_transition(struct tesla_class *tcp, struct tesla_instance *tip, - int32_t symbol) + uint32_t symbol) { SDT_PROBE(tesla, automata, fail, bad_transition, tcp, tip, symbol, @@ -138,7 +138,7 @@ } static void -err(const struct tesla_automaton *tap, int32_t symbol, int32_t errnum, +err(const struct tesla_automaton *tap, uint32_t symbol, int32_t errnum, const char *message) { @@ -154,7 +154,7 @@ } static void -ignored(const struct tesla_class *tcp, int32_t symbol, +ignored(const struct tesla_class *tcp, uint32_t symbol, const struct tesla_key *tkp) { ==== //depot/projects/ctsrd/tesla/src/sys/contrib/tesla/libtesla/tesla_internal.h#17 (text+ko) ==== @@ -416,14 +416,14 @@ const struct tesla_transition *); void ev_clone(struct tesla_class *, struct tesla_instance *orig, struct tesla_instance *copy, const struct tesla_transition *); -void ev_no_instance(struct tesla_class *, int32_t symbol, +void ev_no_instance(struct tesla_class *, uint32_t symbol, const struct tesla_key *); void ev_bad_transition(struct tesla_class *, struct tesla_instance *, - int32_t symbol); + uint32_t symbol); void ev_err(const struct tesla_automaton *, int symbol, int errnum, const char *); void ev_accept(struct tesla_class *, struct tesla_instance *); -void ev_ignored(const struct tesla_class *, int32_t symbol, +void ev_ignored(const struct tesla_class *, uint32_t symbol, const struct tesla_key *); /* ==== //depot/projects/ctsrd/tesla/src/sys/contrib/tesla/libtesla/tesla_notification.c#20 (text+ko) ==== @@ -159,7 +159,7 @@ } void -ev_no_instance(struct tesla_class *tcp, int32_t symbol, +ev_no_instance(struct tesla_class *tcp, uint32_t symbol, const struct tesla_key *tkp) { @@ -168,7 +168,7 @@ void ev_bad_transition(struct tesla_class *tcp, struct tesla_instance *tip, - int32_t symbol) + uint32_t symbol) { FOREACH_ERROR_HANDLER(teh_bad_transition, tcp, tip, symbol); @@ -190,7 +190,7 @@ } void -ev_ignored(const struct tesla_class *tcp, int32_t symbol, +ev_ignored(const struct tesla_class *tcp, uint32_t symbol, const struct tesla_key *tkp) { @@ -266,7 +266,7 @@ } static void -print_no_instance(struct tesla_class *tcp, int32_t symbol, +print_no_instance(struct tesla_class *tcp, uint32_t symbol, const struct tesla_key *tkp) { @@ -293,7 +293,7 @@ static void print_bad_transition(struct tesla_class *tcp, struct tesla_instance *tip, - int32_t symbol) + uint32_t symbol) { assert(tcp != NULL); @@ -326,7 +326,7 @@ } static void -print_error(const struct tesla_automaton *a, int symbol, int errnum, +print_error(const struct tesla_automaton *a, uint32_t symbol, int32_t errnum, const char *message) { @@ -345,7 +345,7 @@ } static void -print_ignored(const struct tesla_class *tcp, int32_t symbol, +print_ignored(const struct tesla_class *tcp, uint32_t symbol, __unused const struct tesla_key *tkp) { const struct tesla_automaton *a = tcp->tc_automaton; @@ -385,7 +385,7 @@ * Wrappers that panic on failure: */ static void -panic_no_instance(struct tesla_class *tcp, int32_t symbol, +panic_no_instance(struct tesla_class *tcp, uint32_t symbol, __unused const struct tesla_key *tkp) { const char *event_name = tcp->tc_automaton->ta_symbol_names[symbol]; @@ -396,7 +396,7 @@ static void panic_bad_transition(struct tesla_class *tcp, - __unused struct tesla_instance *tip, int32_t symbol) + __unused struct tesla_instance *tip, uint32_t symbol) { const char *event_name = tcp->tc_automaton->ta_symbol_names[symbol]; @@ -405,7 +405,7 @@ } static void -panic_error(const struct tesla_automaton *a, int symbol, int errnum, +panic_error(const struct tesla_automaton *a, uint32_t symbol, int32_t errnum, const char *message) {