]> Zhao Yanbai Git Server - minix.git/commit
VFS: change 'last_dir' to match locking assumption
authorThomas Veerman <thomas@minix3.org>
Tue, 20 Nov 2012 13:14:31 +0000 (13:14 +0000)
committerThomas Veerman <thomas@minix3.org>
Mon, 26 Nov 2012 15:20:18 +0000 (15:20 +0000)
commitde83b2a9d9cb8f97d731db4814869534755dd016
tree200e460a4f684acd429996edf741f6a799224f25
parentd67db9b39c41758d9bdbd447f574796be15666b3
VFS: change 'last_dir' to match locking assumption

new_node makes the assumption that when it does last_dir on a path, a
successive advance would not yield a lock on a vmnt, because last_dir
already locked the vmnt. This is true except when last_dir resolves
to a directory on the parent vmnt of the file that was the result of
advance. For example,
 # cd /
 # echo foo > home
where home is on a different (sub) partition than / is (default
install). last_dir would resolve to / and advance would resolve to
/home.

With this change, last_dir resolves to the root node on the /home
partition, making the assumption valid again.
servers/vfs/open.c
servers/vfs/path.c