Fixes bug in cpu_relax_vc()
[akaros.git] / kern / include / assert.h
index de94831..b04306e 100644 (file)
@@ -8,7 +8,13 @@ void ( _panic)(const char* NTS, int, const char* NTS, ...)
     __attribute__((noreturn));
 
 #define warn(...) _warn(__FILE__, __LINE__, __VA_ARGS__)
+#define warn_once(...) run_once_racy(warn(__VA_ARGS__))
 #define panic(...) _panic(__FILE__, __LINE__, __VA_ARGS__)
+#define exhausted(...) _panic(__FILE__, __LINE__, __VA_ARGS__)
+
+
+#define check(x)               \
+       do { if (!(x)) warn("warning failed: %s", #x); } while (0)
 
 #define assert(x)              \
        do { if (!(x)) panic("assertion failed: %s", #x); } while (0)