release the dnode lock after EACCESS in path walk
[lunaix-os.git] / lunaix-os / kernel / fs / twifs / twifs.c
index 8f4ed8d05becfd6dcc290914cdae45af5bf6112b..9d474958bbe10763fc81c4b5d9a599a936ee7dbd 100644 (file)
@@ -18,7 +18,7 @@
 #include <lunaix/mm/valloc.h>
 #include <lunaix/spike.h>
 
-#include <sys/mm/pagetable.h>
+#include <asm/pagetable.h>
 
 static struct twifs_node* fs_root;
 
@@ -58,6 +58,13 @@ __twifs_init_inode(struct v_superblock* vsb, struct v_inode* inode)
 {
     inode->ops = (struct v_inode_ops*)&twifs_inode_ops;
     inode->default_fops = (struct v_file_ops*)&twifs_file_ops;
+
+
+    // we set default access right to be 0660.
+    // TODO need a way to allow this to be changed
+    
+    fsapi_inode_setaccess(inode, FSACL_DEFAULT);
+    fsapi_inode_setowner(inode, 0, 0);
 }
 
 int