lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202311041434.t4sfa6ou-lkp@intel.com>
Date:   Sat, 4 Nov 2023 14:31:20 +0800
From:   kernel test robot <lkp@...el.com>
To:     Randy Dunlap <rdunlap@...radead.org>
Cc:     oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
        Luis Chamberlain <mcgrof@...nel.org>
Subject: lib/test_kmod.c:134: warning: Function parameter or member
 'thread_mutex' not described in 'kmod_test_device'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2c40c1c6adab90ee4660caf03722b3a3ec67767b
commit: c093a74dac1c008daee92d6d613e9e3fe20b6585 test_kmod: stop kernel-doc warnings
date:   9 months ago
config: nios2-allyesconfig (https://download.01.org/0day-ci/archive/20231104/202311041434.t4sfa6ou-lkp@intel.com/config)
compiler: nios2-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231104/202311041434.t4sfa6ou-lkp@intel.com/reproduce)

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 <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202311041434.t4sfa6ou-lkp@intel.com/

All warnings (new ones prefixed by >>):

   lib/test_kmod.c:67: warning: Enum value '__TEST_KMOD_INVALID' not described in enum 'kmod_test_case'
   lib/test_kmod.c:67: warning: Enum value '__TEST_KMOD_MAX' not described in enum 'kmod_test_case'
   lib/test_kmod.c:100: warning: Function parameter or member 'task_sync' not described in 'kmod_test_device_info'
>> lib/test_kmod.c:134: warning: Function parameter or member 'thread_mutex' not described in 'kmod_test_device'


vim +134 lib/test_kmod.c

d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   51  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   52  /**
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   53   * enum kmod_test_case - linker table test case
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   54   * @TEST_KMOD_DRIVER: stress tests request_module()
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   55   * @TEST_KMOD_FS_TYPE: stress tests get_fs_type()
c093a74dac1c008 Randy Dunlap      2023-01-02   56   *
c093a74dac1c008 Randy Dunlap      2023-01-02   57   * If you add a  test case, please be sure to review if you need to set
c093a74dac1c008 Randy Dunlap      2023-01-02   58   * @need_mod_put for your tests case.
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   59   */
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   60  enum kmod_test_case {
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   61  	__TEST_KMOD_INVALID = 0,
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   62  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   63  	TEST_KMOD_DRIVER,
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   64  	TEST_KMOD_FS_TYPE,
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   65  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   66  	__TEST_KMOD_MAX,
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  @67  };
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   68  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   69  struct test_config {
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   70  	char *test_driver;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   71  	char *test_fs;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   72  	unsigned int num_threads;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   73  	enum kmod_test_case test_case;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   74  	int test_result;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   75  };
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   76  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   77  struct kmod_test_device;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   78  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   79  /**
c093a74dac1c008 Randy Dunlap      2023-01-02   80   * struct kmod_test_device_info - thread info
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   81   *
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   82   * @ret_sync: return value if request_module() is used, sync request for
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   83   * 	@TEST_KMOD_DRIVER
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   84   * @fs_sync: return value of get_fs_type() for @TEST_KMOD_FS_TYPE
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   85   * @thread_idx: thread ID
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   86   * @test_dev: test device test is being performed under
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   87   * @need_mod_put: Some tests (get_fs_type() is one) requires putting the module
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   88   *	(module_put(fs_sync->owner)) when done, otherwise you will not be able
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   89   *	to unload the respective modules and re-test. We use this to keep
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   90   *	accounting of when we need this and to help out in case we need to
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   91   *	error out and deal with module_put() on error.
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   92   */
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   93  struct kmod_test_device_info {
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   94  	int ret_sync;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   95  	struct file_system_type *fs_sync;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   96  	struct task_struct *task_sync;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   97  	unsigned int thread_idx;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   98  	struct kmod_test_device *test_dev;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14   99  	bool need_mod_put;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  100  };
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  101  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  102  /**
c093a74dac1c008 Randy Dunlap      2023-01-02  103   * struct kmod_test_device - test device to help test kmod
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  104   *
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  105   * @dev_idx: unique ID for test device
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  106   * @config: configuration for the test
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  107   * @misc_dev: we use a misc device under the hood
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  108   * @dev: pointer to misc_dev's own struct device
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  109   * @config_mutex: protects configuration of test
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  110   * @trigger_mutex: the test trigger can only be fired once at a time
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  111   * @thread_lock: protects @done count, and the @info per each thread
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  112   * @done: number of threads which have completed or failed
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  113   * @test_is_oom: when we run out of memory, use this to halt moving forward
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  114   * @kthreads_done: completion used to signal when all work is done
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  115   * @list: needed to be part of the reg_test_devs
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  116   * @info: array of info for each thread
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  117   */
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  118  struct kmod_test_device {
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  119  	int dev_idx;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  120  	struct test_config config;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  121  	struct miscdevice misc_dev;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  122  	struct device *dev;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  123  	struct mutex config_mutex;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  124  	struct mutex trigger_mutex;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  125  	struct mutex thread_mutex;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  126  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  127  	unsigned int done;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  128  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  129  	bool test_is_oom;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  130  	struct completion kthreads_done;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  131  	struct list_head list;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  132  
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  133  	struct kmod_test_device_info *info;
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14 @134  };
d9c6a72d6fa29d3 Luis R. Rodriguez 2017-07-14  135  

:::::: The code at line 134 was first introduced by commit
:::::: d9c6a72d6fa29d3a7999dda726577e5d1fccafa5 kmod: add test driver to stress test the module loader

:::::: TO: Luis R. Rodriguez <mcgrof@...nel.org>
:::::: CC: Linus Torvalds <torvalds@...ux-foundation.org>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ