git://scm.lunaixsky.com
/
lunaix-os.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add locks to the shared objects of ext2 fs
[lunaix-os.git]
/
lunaix-os
/
kernel
/
fs
/
ext2
/
mount.c
diff --git
a/lunaix-os/kernel/fs/ext2/mount.c
b/lunaix-os/kernel/fs/ext2/mount.c
index 05fbdce029ea6243dd0f6c6fbde4b6bd1b2be01a..0d328e796df31a079cdc820391eeea9dd68ac66b 100644
(file)
--- a/
lunaix-os/kernel/fs/ext2/mount.c
+++ b/
lunaix-os/kernel/fs/ext2/mount.c
@@
-170,6
+170,8
@@
ext2_mount(struct v_superblock* vsb, struct v_dnode* mnt)
ext2sb->raw = rawsb;
ext2sb->all_feature = __translate_feature(rawsb);
ext2sb->raw = rawsb;
ext2sb->all_feature = __translate_feature(rawsb);
+ mutex_init(&ext2sb->lock);
+
fsapi_set_vsb_ops(vsb, &vsb_ops);
fsapi_complete_vsb_setup(vsb, ext2sb);
fsapi_set_vsb_ops(vsb, &vsb_ops);
fsapi_complete_vsb_setup(vsb, ext2sb);
@@
-188,6
+190,9
@@
ext2_mount(struct v_superblock* vsb, struct v_dnode* mnt)
ext2sb->raw = offset(blkbuf_data(buf), EXT2_BASE_BLKSZ);
}
ext2sb->raw = offset(blkbuf_data(buf), EXT2_BASE_BLKSZ);
}
+ ext2sb->raw->s_mnt_cnt++;
+ ext2sb->raw->s_mtime = clock_unixtime();
+
ext2sb->buf = buf;
vfree(rawsb);
return 0;
ext2sb->buf = buf;
vfree(rawsb);
return 0;