Re: [PATCH 1/2] mfd: mfd-core: Add mechanism for removal of a subset of children

From: kbuild test robot
Date: Mon May 11 2020 - 17:58:41 EST


Hi Charles,

I love your patch! Perhaps something to improve:

[auto build test WARNING on ljones-mfd/for-mfd-next]
[also build test WARNING on v5.7-rc5 next-20200511]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url: https://github.com/0day-ci/linux/commits/Charles-Keepax/mfd-mfd-core-Add-mechanism-for-removal-of-a-subset-of-children/20200512-032030
base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next
config: s390-randconfig-r034-20200511 (attached as .config)
compiler: s390-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=s390

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All warnings (new ones prefixed by >>):

drivers/mfd/mfd-core.c: In function 'mfd_remove_devices_fn':
>> drivers/mfd/mfd-core.c:290:12: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
290 | int tag = (int)data;
| ^
drivers/mfd/mfd-core.c: In function 'mfd_remove_devices_by_tag':
>> drivers/mfd/mfd-core.c:310:40: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
310 | device_for_each_child_reverse(parent, (void *)tag,
| ^

vim +290 drivers/mfd/mfd-core.c

285
286 static int mfd_remove_devices_fn(struct device *dev, void *data)
287 {
288 struct platform_device *pdev;
289 const struct mfd_cell *cell;
> 290 int tag = (int)data;
291
292 if (dev->type != &mfd_dev_type)
293 return 0;
294
295 pdev = to_platform_device(dev);
296 cell = mfd_get_cell(pdev);
297
298 if (tag && cell->tag != tag)
299 return 0;
300
301 regulator_bulk_unregister_supply_alias(dev, cell->parent_supplies,
302 cell->num_parent_supplies);
303
304 platform_device_unregister(pdev);
305 return 0;
306 }
307
308 void mfd_remove_devices_by_tag(struct device *parent, int tag)
309 {
> 310 device_for_each_child_reverse(parent, (void *)tag,
311 mfd_remove_devices_fn);
312 }
313 EXPORT_SYMBOL(mfd_remove_devices_by_tag);
314

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

Attachment: .config.gz
Description: application/gzip