#define NFTA_LOG_MAX           (__NFTA_LOG_MAX - 1)
 
 /**
- * LOGLEVEL_AUDIT - a pseudo log level enabling audit logging
- */
-#define LOGLEVEL_AUDIT         8
+ * enum nft_log_level - nf_tables log levels
+ *
+ * @NFT_LOGLEVEL_EMERG: system is unusable
+ * @NFT_LOGLEVEL_ALERT: action must be taken immediately
+ * @NFT_LOGLEVEL_CRIT: critical conditions
+ * @NFT_LOGLEVEL_ERR: error conditions
+ * @NFT_LOGLEVEL_WARNING: warning conditions
+ * @NFT_LOGLEVEL_NOTICE: normal but significant condition
+ * @NFT_LOGLEVEL_INFO: informational
+ * @NFT_LOGLEVEL_DEBUG: debug-level messages
+ * @NFT_LOGLEVEL_AUDIT: enabling audit logging
+ */
+enum nft_log_level {
+       NFT_LOGLEVEL_EMERG,
+       NFT_LOGLEVEL_ALERT,
+       NFT_LOGLEVEL_CRIT,
+       NFT_LOGLEVEL_ERR,
+       NFT_LOGLEVEL_WARNING,
+       NFT_LOGLEVEL_NOTICE,
+       NFT_LOGLEVEL_INFO,
+       NFT_LOGLEVEL_DEBUG,
+       NFT_LOGLEVEL_AUDIT,
+       __NFT_LOGLEVEL_MAX
+};
+#define NFT_LOGLEVEL_MAX       (__NFT_LOGLEVEL_MAX + 1)
 
 /**
  * enum nft_queue_attributes - nf_tables queue expression netlink attributes
 
        const struct nft_log *priv = nft_expr_priv(expr);
 
        if (priv->loginfo.type == NF_LOG_TYPE_LOG &&
-           priv->loginfo.u.log.level == LOGLEVEL_AUDIT) {
+           priv->loginfo.u.log.level == NFT_LOGLEVEL_AUDIT) {
                nft_log_eval_audit(pkt);
                return;
        }
                        li->u.log.level =
                                ntohl(nla_get_be32(tb[NFTA_LOG_LEVEL]));
                } else {
-                       li->u.log.level = LOGLEVEL_WARNING;
+                       li->u.log.level = NFT_LOGLEVEL_WARNING;
                }
-               if (li->u.log.level > LOGLEVEL_AUDIT) {
+               if (li->u.log.level > NFT_LOGLEVEL_AUDIT) {
                        err = -EINVAL;
                        goto err1;
                }
                break;
        }
 
-       if (li->u.log.level == LOGLEVEL_AUDIT)
+       if (li->u.log.level == NFT_LOGLEVEL_AUDIT)
                return 0;
 
        err = nf_logger_find_get(ctx->family, li->type);
        if (priv->prefix != nft_log_null_prefix)
                kfree(priv->prefix);
 
-       if (li->u.log.level == LOGLEVEL_AUDIT)
+       if (li->u.log.level == NFT_LOGLEVEL_AUDIT)
                return;
 
        nf_logger_put(ctx->family, li->type);