From 36d52e89e78de227025e9222b2015a1b76c17142 Mon Sep 17 00:00:00 2001 From: cshore Date: Mon, 12 Jul 2010 16:35:39 +0000 Subject: [PATCH] [package]: block-mount: Fixed two bugs in fstab.init. /etc/fstab was used where /tmp/fstab should have been, and locking was insufficiently careful and was such that it could result in deadlock when hotplug was in use. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22148 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/block-mount/files/fstab.init | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/package/block-mount/files/fstab.init b/package/block-mount/files/fstab.init index d755eccf08..fdcd4f52a2 100644 --- a/package/block-mount/files/fstab.init +++ b/package/block-mount/files/fstab.init @@ -41,9 +41,13 @@ do_swapoff() { start() { config_load fstab mkdir -p /var/lock - lock /var/lock/fstab.lck - echo '# WARNING: this is an auto generated file, please use uci to set defined filesystems' > /etc/fstab - lock -u /var/lock/fstab.lck + lock -w /var/lock/fstab.lck && { + lock /var/lock/fstab.lck + [ -e /tmp/fstab ] || { + echo '# WARNING: this is an auto generated file, please use uci to set defined filesystems' > /tmp/fstab + } + lock -u /var/lock/fstab.lck + } config_foreach do_swapon swap config_foreach do_mount mount } -- 2.11.0