lkml.org 
[lkml]   [2021]   [Dec]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH V2 1/2] kobject: don't delay to cleanup module kobject
Hi Ming,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on driver-core/driver-core-testing]
[also build test ERROR on v5.16-rc4 next-20211207]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url: https://github.com/0day-ci/linux/commits/Ming-Lei/kobject-avoid-to-cleanup-kobject-after-module-is-unloaded/20211129-114940
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git 2043727c2882928a10161ddee52b196b7db402fd
config: s390-randconfig-r033-20211207 (https://download.01.org/0day-ci/archive/20211207/202112072131.XiIJR8RS-lkp@intel.com/config)
compiler: s390-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/39e48129051282ab6eff0746002e84cf56218bd7
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Ming-Lei/kobject-avoid-to-cleanup-kobject-after-module-is-unloaded/20211129-114940
git checkout 39e48129051282ab6eff0746002e84cf56218bd7
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=s390 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

lib/kobject.c: In function 'kobject_release':
>> lib/kobject.c:741:29: error: 'module_ktype' undeclared (first use in this function); did you mean 'module_state'?
741 | if (kobj->ktype == &module_ktype)
| ^~~~~~~~~~~~
| module_state
lib/kobject.c:741:29: note: each undeclared identifier is reported only once for each function it appears in


vim +741 lib/kobject.c

725
726 static void kobject_release(struct kref *kref)
727 {
728 struct kobject *kobj = container_of(kref, struct kobject, kref);
729 #ifdef CONFIG_DEBUG_KOBJECT_RELEASE
730 unsigned long delay = HZ + HZ * (get_random_int() & 0x3);
731
732 /*
733 * Don't delay to release module kobject so that we can detect late
734 * kobject release more effectively because module unloading waits
735 * for completion of module kobject release, see mod_kobject_put.
736 *
737 * Meantime mod_kobject_put() always waits for completion of module
738 * kobject's release, CONFIG_DEBUG_KOBJECT_RELEASE is basically
739 * useless for debugging module kobject's release.
740 */
> 741 if (kobj->ktype == &module_ktype)
742 delay = 0;
743
744 pr_info("kobject: '%s' (%p): %s, parent %p (delayed %ld)\n",
745 kobject_name(kobj), kobj, __func__, kobj->parent, delay);
746 INIT_DELAYED_WORK(&kobj->release, kobject_delayed_cleanup);
747
748 schedule_delayed_work(&kobj->release, delay);
749 #else
750 kobject_cleanup(kobj);
751 #endif
752 }
753

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

\
 
 \ /
  Last update: 2021-12-07 14:59    [W:0.483 / U:0.392 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site