Re: [PATCH] ext4: Log inode exhaustion to dmesg
From: Theodore Ts'o <tytso@mit.edu>
Date: 2017-10-23 12:04:46
Also in:
lkml
Hi, The Signed-off-by needs to contain your real name (sorry, no pseudonyms or anonymous contributions.) That's because it has a formal legal meaning. See Section 11: "Sign your work - the Developer’s Certificate of Origin" of the Submitting Patches docuementation: https://www.kernel.org/doc/html/latest/process/submitting-patches.html (Also, you should use ext4_warning() and not a bare printk). - Ted On Mon, Oct 23, 2017 at 05:32:47PM +0530, Team Athena wrote:
quoted hunk ↗ jump to hunk
Make a log in dmesg when file creation fails due to no free inodes. The error code for both "out of disk space" and "out of inode" is the same. This is misleading to the user. Logging the exact reason helps to find and correct the issue from the users' side. Fix bug 197335 - https://bugzilla.kernel.org/show_bug.cgi?id=197335 Signed-off-by: Team Athena <redacted> --- fs/ext4/namei.c | 2 ++ 1 file changed, 2 insertions(+)diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c index c1cf020d..c3990d2d 100644 --- a/fs/ext4/namei.c +++ b/fs/ext4/namei.c@@ -2463,6 +2463,8 @@ static int ext4_create(struct inode *dir, struct dentry *dentry, umode_t mode, ext4_journal_stop(handle); if (err == -ENOSPC && ext4_should_retry_alloc(dir->i_sb, &retries)) goto retry; + else if (err == -ENOSPC && printk_ratelimited()) + printk(pr_warning "ext4: No space on disk, inode usage full"); return err; }-- 2.11.0