From: Michal Suchanek Date: Mon, 10 Dec 2018 21:29:32 +0000 (+0100) Subject: depmod: prevent module dependency files missing during depmod invocation X-Git-Tag: v26~18 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c2996b5fa880e81f63c25e80a4157b2239e32c5d;p=thirdparty%2Fkmod.git depmod: prevent module dependency files missing during depmod invocation depmod deletes the module dependency files before moving the temporary files in their place. This results in user seeing no dependency files while they are updated. Remove the unlink call. The rename call should suffice to move the new file in place and unlink the old one. It should also do both atomically so there is no window when no dependency file exists. Signed-off-by: Michal Suchanek --- diff --git a/tools/depmod.c b/tools/depmod.c index 989d9077..18c0d61b 100644 --- a/tools/depmod.c +++ b/tools/depmod.c @@ -2451,7 +2451,6 @@ static int depmod_output(struct depmod *depmod, FILE *out) break; } - unlinkat(dfd, itr->name, 0); if (renameat(dfd, tmp, dfd, itr->name) != 0) { err = -errno; CRIT("renameat(%s, %s, %s, %s): %m\n",