[thomas-weissschuh:b4/kunit-kselftests 16/21] lib/kunit/kunit-uapi.c:126 kunit_uapi_open_standard_streams() warn: double fget(): 'stdin_fd'

kernel test robot <[email protected]>
Newsgroups dev.linux.lists.oe-kbuild
Message-ID <[email protected]>
BCC: [email protected]
CC: [email protected]
TO: "Thomas Weißschuh" <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/thomas.weissschuh/linux.git b4/kunit-kselftests
head:   72d2e686899cc0b009dcc94460feb2e632a676bd
commit: 86cdb0f09bbab1abe037777efbbec98be7c21cd9 [16/21] kunit: uapi: Forward test executable output to KUnit log
:::::: branch date: 22 hours ago
:::::: commit date: 22 hours ago
config: x86_64-randconfig-r072-20260822 (https://download.01.org/0day-ci/archive/20260822/[email protected]/config)
compiler: clang version 22.1.3 (https://github.com/llvm/llvm-project e9846648fd6183ee6d8cbdb4502213fcf902a211)
smatch: v0.5.0-9187-g5189e3fb

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Reported-by: Dan Carpenter <[email protected]>
| Closes: https://lore.kernel.org/r/[email protected]/

smatch warnings:
lib/kunit/kunit-uapi.c:126 kunit_uapi_open_standard_streams() warn: double fget(): 'stdin_fd'

vim +/stdin_fd +126 lib/kunit/kunit-uapi.c

036564cc93d9e19 Thomas Weißschuh 2024-10-16  100  
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  101  static int kunit_uapi_open_standard_streams(void)
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  102  {
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  103  	struct vfsmount *devtmpfs __free(kern_unmount) = kunit_uapi_mount_fs("devtmpfs");
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  104  	if (IS_ERR(devtmpfs))
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  105  		return PTR_ERR(devtmpfs);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  106  
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  107  	CLASS(get_unused_fd, stdin_fd)(O_RDONLY);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  108  	if (stdin_fd < 0)
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  109  		return stdin_fd;
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  110  
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  111  	CLASS(get_unused_fd, stdout_fd)(O_WRONLY);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  112  	if (stdout_fd < 0)
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  113  		return stdout_fd;
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  114  
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  115  	CLASS(get_unused_fd, stderr_fd)(O_WRONLY);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  116  	if (stderr_fd < 0)
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  117  		return stderr_fd;
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  118  
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  119  	struct file *logfile __free(fput) = file_open_root_mnt(devtmpfs, KUNIT_LOG_DEVICE,
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  120  							       O_RDWR, 0);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  121  	if (IS_ERR(logfile))
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  122  		return PTR_ERR(logfile);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  123  
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  124  	fd_install(stdin_fd, no_free_ptr(logfile));
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  125  	fd_install(stdout_fd, fget(stdin_fd));
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07 @126  	fd_install(stderr_fd, fget(stdin_fd));
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  127  
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  128  	take_fd(stdin_fd);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  129  	take_fd(stdout_fd);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  130  	take_fd(stderr_fd);
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  131  
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  132  	return 0;
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  133  }
86cdb0f09bbab1a Thomas Weißschuh 2026-04-07  134  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.