Hi Mike,
I love your patch! Perhaps something to improve:
[auto build test WARNING on lwn/docs-next] [also build test WARNING on linus/master v5.12-rc3 next-20210316] [cannot apply to soc/for-next] [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/Mike-Leach/CoreSight-configuration-... base: git://git.lwn.net/linux-2.6 docs-next config: arm-randconfig-r035-20210316 (attached as .config) compiler: arm-linux-gnueabi-gcc (GCC) 9.3.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/76d2cecb5af2a820d6910c10996ed1122279... git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Mike-Leach/CoreSight-configuration-management-ETM-strobing/20210317-021436 git checkout 76d2cecb5af2a820d6910c10996ed11222799ce8 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot lkp@intel.com
All warnings (new ones prefixed by >>):
drivers/hwtracing/coresight/coresight-syscfg.c:132:6: warning: no previous prototype for 'cscfg_dev_release' [-Wmissing-prototypes]
132 | void cscfg_dev_release(struct device *dev) | ^~~~~~~~~~~~~~~~~
drivers/hwtracing/coresight/coresight-syscfg.c:139:5: warning: no previous prototype for 'cscfg_create_device' [-Wmissing-prototypes]
139 | int cscfg_create_device(void) | ^~~~~~~~~~~~~~~~~~~
drivers/hwtracing/coresight/coresight-syscfg.c:168:6: warning: no previous prototype for 'cscfg_clear_device' [-Wmissing-prototypes]
168 | void cscfg_clear_device(void) | ^~~~~~~~~~~~~~~~~~
vim +/cscfg_dev_release +132 drivers/hwtracing/coresight/coresight-syscfg.c
130 131 /* Must have a release function or the kernel will complain on module unload */
132 void cscfg_dev_release(struct device *dev)
133 { 134 kfree(cscfg_mgr); 135 cscfg_mgr = NULL; 136 } 137 138 /* a device is needed to "own" some kernel elements such as sysfs entries. */
139 int cscfg_create_device(void)
140 { 141 struct device *dev; 142 int err = -ENOMEM; 143 144 mutex_lock(&cscfg_mutex); 145 if (cscfg_mgr) { 146 err = -EINVAL; 147 goto create_dev_exit_unlock; 148 } 149 150 cscfg_mgr = kzalloc(sizeof(struct cscfg_manager), GFP_KERNEL); 151 if (!cscfg_mgr) 152 goto create_dev_exit_unlock; 153 154 /* setup the device */ 155 dev = cscfg_device(); 156 dev->release = cscfg_dev_release; 157 dev->init_name = "cs_system_cfg"; 158 159 err = device_register(dev); 160 if (err) 161 cscfg_dev_release(dev); 162 163 create_dev_exit_unlock: 164 mutex_unlock(&cscfg_mutex); 165 return err; 166 } 167
168 void cscfg_clear_device(void)
169 { 170 mutex_lock(&cscfg_mutex); 171 device_unregister(cscfg_device()); 172 mutex_unlock(&cscfg_mutex); 173 } 174
--- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org