fs: ext4fs: Fix: Data abort in ext4fs_log_gdt()

Return ENOMEM in ext4fs_log_gdt when number of blocks per gdt is more than
number of allocated journal entries.

Signed-off-by: Tony Dinh <mibodhi@gmail.com>
This commit is contained in:
Tony Dinh
2025-06-02 21:50:22 -07:00
committed by Tom Rini
parent b40d7b8f72
commit 29cb98d515

View File

@@ -131,6 +131,13 @@ int ext4fs_log_gdt(char *gd_table)
struct ext_filesystem *fs = get_fs();
short i;
long int var = fs->gdtable_blkno;
/* Make sure there is enough journal entries */
if (fs->no_blk_pergdt > MAX_JOURNAL_ENTRIES) {
log_err("*** Not enough journal entries allocated\n");
return -ENOMEM;
}
for (i = 0; i < fs->no_blk_pergdt; i++) {
journal_ptr[gindex]->buf = zalloc(fs->blksz);
if (!journal_ptr[gindex]->buf)