[LEDE-DEV] [PATCH mountd 2/3] mount: remove directory if mounting fails

Rafał Miłecki zajec5 at gmail.com
Wed Jan 3 02:31:22 PST 2018


From: Rafał Miłecki <rafal at milecki.pl>

Aside from just cleaning up mountd's tmp dir it's also important for
autofs support. With such an empty directory autofs_process_request
believed device is mounted and it kept replying AUTOFS_IOC_READY to the
kernel. It was causing a log storm like:
mountd[1015]: Got a autofs packet
mountd[1015]: kernel is requesting a mount -> sda1
mountd[1015]: Got a autofs packet
mountd[1015]: kernel is requesting a mount -> sda1
mountd[1015]: Got a autofs packet
mountd[1015]: kernel is requesting a mount -> sda1

Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
---
 mount.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/mount.c b/mount.c
index 803acc1..a88ca6d 100644
--- a/mount.c
+++ b/mount.c
@@ -292,8 +292,10 @@ int mount_new(char *path, char *dev)
 	pid = waitpid(pid, &ret, 0);
 	ret = WEXITSTATUS(ret);
 	log_printf("----------> mount ret = %d\n", ret);
-	if(ret && (ret != 0xff))
+	if (ret && ret != 0xff) {
+		rmdir(tmp);
 		return -1;
+	}
 	if(mount_wait_for_disc(mount->dev) == 0)
 	{
 		mount->mounted = 1;
-- 
2.11.0




More information about the Lede-dev mailing list