From 9c0ae789c8badada00d76041e01989f3bdca479f Mon Sep 17 00:00:00 2001 From: wangxiaomeng Date: Thu, 26 Mar 2026 10:18:28 +0800 Subject: [PATCH] nl-cls-delete: tolerate NLE_OBJ_NOTFOUND from cascaded kernel deletion --- src/nl-cls-delete.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/nl-cls-delete.c b/src/nl-cls-delete.c index ca8e370bf..686eb5ad1 100644 --- a/src/nl-cls-delete.c +++ b/src/nl-cls-delete.c @@ -54,9 +54,17 @@ static void delete_cb(struct nl_object *obj, void *arg) if (interactive && !nl_cli_confirm(obj, ¶ms, default_yes)) return; - if ((err = rtnl_cls_delete(sock, cls, 0)) < 0) - nl_cli_fatal(err, "Unable to delete classifier: %s\n", - nl_geterror(err)); + if ((err = rtnl_cls_delete(sock, cls, 0)) < 0) { + if (err == -NLE_OBJ_NOTFOUND) { + if (!quiet) { + printf("Already removed (cascaded) "); + nl_object_dump(obj, ¶ms); + } + return; + } + nl_cli_fatal(err, "Unable to delete classifier: %s\n", + nl_geterror(err)); + } if (!quiet) { printf("Deleted ");