]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
fat: fix stack frame size warnings in KUnit tests
authorChristian Brauner <brauner@kernel.org>
Wed, 25 Mar 2026 16:34:00 +0000 (17:34 +0100)
committerChristian Brauner <brauner@kernel.org>
Thu, 26 Mar 2026 13:36:03 +0000 (14:36 +0100)
commit94505767bd32f8a240cf3590776b16a12d75d98e
tree3d9cc28d26371e80f93a40882d75b5daeea75a84
parent4bbf3f58e00f8671eb384c7df6983d803058b204
fat: fix stack frame size warnings in KUnit tests

The kernel test robot reported that on hexagon with clang, several test
functions in fat_test.c exceed the 1280-byte stack frame limit.

The root cause is the compound literal assignment in
fat_test_set_time_offset():

  *sbi = (struct msdos_sb_info){};

struct msdos_sb_info contains two hash tables of 256 hlist_head entries
(FAT_HASH_SIZE), making it several kilobytes. The compound literal
creates a temporary on the stack, and when clang inlines
fat_test_set_time_offset() into each test function, the large temporary
inflates every caller's stack frame beyond the limit.

Replace the compound literal with memset() which zeroes the struct
in-place without a stack temporary.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202603251755.4UYY1Rcd-lkp@intel.com/
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/fat/fat_test.c