summaryrefslogtreecommitdiff
path: root/kernel/fs.h
diff options
context:
space:
mode:
authorMole Shang <[email protected]>2024-02-19 14:10:32 +0800
committerMole Shang <[email protected]>2024-02-19 14:36:21 +0800
commitd86118fc80267649b4791c8c0c72ebd60edf1ef2 (patch)
treeb792b617b4df80a5803a9c1164d0e3fdfe9cfe31 /kernel/fs.h
parentb20ef9d0210fd7d9403acde1857eed1b9880c0b2 (diff)
parent0cf897cbe05fd8485162619db4244f4159d0eb52 (diff)
downloadxv6-labs-d86118fc80267649b4791c8c0c72ebd60edf1ef2.tar.gz
xv6-labs-d86118fc80267649b4791c8c0c72ebd60edf1ef2.tar.bz2
xv6-labs-d86118fc80267649b4791c8c0c72ebd60edf1ef2.zip
Merge branch 'fs' into mmap
Conflicts: .gitignore Makefile conf/lab.mk kernel/defs.h user/user.h
Diffstat (limited to 'kernel/fs.h')
-rw-r--r--kernel/fs.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/kernel/fs.h b/kernel/fs.h
index 139dcc9..9ae5ece 100644
--- a/kernel/fs.h
+++ b/kernel/fs.h
@@ -24,8 +24,10 @@ struct superblock {
#define FSMAGIC 0x10203040
-#define NDIRECT 12
-#define NINDIRECT (BSIZE / sizeof(uint))
+#define NDIRECT 11
+#define NSG_INDIRECT (BSIZE / sizeof(uint))
+#define NDB_INDIRECT (NSG_INDIRECT * NSG_INDIRECT)
+#define NINDIRECT (NSG_INDIRECT + NDB_INDIRECT)
#define MAXFILE (NDIRECT + NINDIRECT)
// On-disk inode structure
@@ -35,7 +37,7 @@ struct dinode {
short minor; // Minor device number (T_DEVICE only)
short nlink; // Number of links to inode in file system
uint size; // Size of file (bytes)
- uint addrs[NDIRECT+1]; // Data block addresses
+ uint addrs[NDIRECT+2]; // Data block addresses
};
// Inodes per block.