From 7c1810e1ae9268581de6bec30cdb696c25bae030 Mon Sep 17 00:00:00 2001 From: Robert Morris Date: Tue, 23 Aug 2022 12:26:26 -0400 Subject: tolerate running out of inodes --- kernel/fs.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'kernel/fs.c') diff --git a/kernel/fs.c b/kernel/fs.c index b220491..dea5864 100644 --- a/kernel/fs.c +++ b/kernel/fs.c @@ -193,7 +193,8 @@ static struct inode* iget(uint dev, uint inum); // Allocate an inode on device dev. // Mark it as allocated by giving it type type. -// Returns an unlocked but allocated and referenced inode. +// Returns an unlocked but allocated and referenced inode, +// or NULL if there is no free inode.. struct inode* ialloc(uint dev, short type) { @@ -213,7 +214,8 @@ ialloc(uint dev, short type) } brelse(bp); } - panic("ialloc: no inodes"); + printf("ialloc: no inodes\n"); + return 0; } // Copy a modified in-memory inode to disk. -- cgit v1.2.3