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.

SVN-Revision: 22148
This commit is contained in:
Daniel Dickinson 2010-07-12 16:35:39 +00:00
parent b6d521ea33
commit 117590a2ce

View file

@ -41,9 +41,13 @@ do_swapoff() {
start() { start() {
config_load fstab config_load fstab
mkdir -p /var/lock mkdir -p /var/lock
lock /var/lock/fstab.lck lock -w /var/lock/fstab.lck && {
echo '# WARNING: this is an auto generated file, please use uci to set defined filesystems' > /etc/fstab lock /var/lock/fstab.lck
lock -u /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_swapon swap
config_foreach do_mount mount config_foreach do_mount mount
} }