summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGustav Sörnäs <gustav@sornas.net>2021-03-15 12:48:23 +0100
committerGustav Sörnäs <gustav@sornas.net>2021-03-15 12:48:23 +0100
commit76c779bd706836859305f7f17fc989ad2e3b7b94 (patch)
tree9271a411aa77ccd7124e344d7b4510a4d3607f5a
parente7ab517c36247ef9dcef234b350939c993bd2c63 (diff)
downloadpintos-76c779bd706836859305f7f17fc989ad2e3b7b94.tar.gz
also lock when removing from open_inodes
-rw-r--r--src/filesys/inode.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/filesys/inode.c b/src/filesys/inode.c
index 78c1972..494143b 100644
--- a/src/filesys/inode.c
+++ b/src/filesys/inode.c
@@ -184,7 +184,9 @@ inode_close (struct inode *inode)
if (--inode->open_cnt == 0)
{
/* Remove from inode list and release lock. */
+ lock_acquire (&open_inodes_lock);
list_remove (&inode->elem);
+ lock_release (&open_inodes_lock);
/* Deallocate blocks if removed. */
if (inode->removed)