From bec3ebf0063ba1a55c4f1b585b4e0c67d59fa2c1 Mon Sep 17 00:00:00 2001 From: Thomas Schoebel-Theuer Date: Wed, 12 Jan 2022 15:06:10 +0100 Subject: [PATCH] infra: fix potential endless loop Thisd unlikely, but may happen when /mars is defective. --- kernel/sy_old/sy_generic.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/kernel/sy_old/sy_generic.c b/kernel/sy_old/sy_generic.c index f136e0b9..2161b305 100644 --- a/kernel/sy_old/sy_generic.c +++ b/kernel/sy_old/sy_generic.c @@ -1091,6 +1091,7 @@ int ordered_symlink(const char *oldpath, { char *dir_path = NULL; int dir_len; + int nr_retry = 0; int status; retry: @@ -1118,7 +1119,9 @@ int ordered_symlink(const char *oldpath, if (check >= 0) { brick_string_free(dir_path); dir_path = NULL; - goto retry; + if (nr_retry++ < 3) + goto retry; + break; } } brick_string_free(dir_path);