Implement OFPC_FRAG_DROP fragment handling policy.
[sliver-openvswitch.git] / include / vlog.h
index 63a0c41..f2641b0 100644 (file)
@@ -63,23 +63,32 @@ enum vlog_facility vlog_get_facility_val(const char *name);
 #define VLOG_MODULES                            \
         VLOG_MODULE(chain)                      \
         VLOG_MODULE(controller)                 \
-        VLOG_MODULE(controller_connection)      \
         VLOG_MODULE(ctlpath)                    \
+        VLOG_MODULE(daemon)                     \
         VLOG_MODULE(datapath)                   \
+        VLOG_MODULE(dhcp)                       \
+        VLOG_MODULE(dhcp_client)                \
         VLOG_MODULE(dpif)                       \
         VLOG_MODULE(dpctl)                      \
         VLOG_MODULE(fault)                      \
         VLOG_MODULE(flow)                       \
+        VLOG_MODULE(learning_switch)            \
+        VLOG_MODULE(mac_learning)               \
         VLOG_MODULE(netdev)                     \
         VLOG_MODULE(netlink)                    \
+        VLOG_MODULE(ofp_discover)               \
         VLOG_MODULE(poll_loop)                  \
         VLOG_MODULE(secchan)                    \
+        VLOG_MODULE(rconn)                      \
         VLOG_MODULE(switch)                     \
         VLOG_MODULE(socket_util)                \
         VLOG_MODULE(vconn_netlink)              \
         VLOG_MODULE(vconn_tcp)                  \
         VLOG_MODULE(vconn_ssl)                  \
+        VLOG_MODULE(vconn_stream)               \
+        VLOG_MODULE(vconn_unix)                 \
         VLOG_MODULE(vconn)                      \
+        VLOG_MODULE(vlog)                       \
 
 /* VLM_ constant for each vlog module. */
 enum vlog_module {
@@ -98,6 +107,7 @@ enum vlog_level vlog_get_level(enum vlog_module, enum vlog_facility);
 void vlog_set_levels(enum vlog_module, enum vlog_facility, enum vlog_level);
 char *vlog_set_levels_from_string(const char *);
 char *vlog_get_levels(void);
+bool vlog_is_enabled(enum vlog_module, enum vlog_level);
 void vlog_set_verbosity(const char *arg);
 
 /* Function for actual logging. */
@@ -109,7 +119,7 @@ void vlog(enum vlog_module, enum vlog_level, const char *format, ...)
 /* Convenience macros.  To use these, define THIS_MODULE as a macro that
  * expands to the module used by the current source file, e.g.
  *      #include "vlog.h"
- *      #define THIS_MODULE VLM_NETLINK
+ *      #define THIS_MODULE VLM_netlink
  * Guaranteed to preserve errno.
  */
 #define VLOG_EMER(...) vlog(THIS_MODULE, VLL_EMER, __VA_ARGS__)
@@ -117,4 +127,12 @@ void vlog(enum vlog_module, enum vlog_level, const char *format, ...)
 #define VLOG_WARN(...) vlog(THIS_MODULE, VLL_WARN, __VA_ARGS__)
 #define VLOG_DBG(...) vlog(THIS_MODULE, VLL_DBG, __VA_ARGS__)
 
+/* More convenience macros, for testing whether a given level is enabled in
+ * THIS_MODULE.  When constructing a log message is expensive, this enables it
+ * to be skipped. */
+#define VLOG_IS_EMER_ENABLED() true
+#define VLOG_IS_ERR_ENABLED() vlog_is_enabled(THIS_MODULE, VLL_EMER)
+#define VLOG_IS_WARN_ENABLED() vlog_is_enabled(THIS_MODULE, VLL_WARN)
+#define VLOG_IS_DBG_ENABLED() vlog_is_enabled(THIS_MODULE, VLL_DBG)
+
 #endif /* vlog.h */