* [vishal-nvdimm:for-5.9/firmware-activate 8/10] drivers/nvdimm/region_devs.c:608:8: error: type defaults to 'int' in declaration of 'DEVICE_ATTR_ADMIN_RO'
@ 2020-07-30 8:10 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-07-30 8:10 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 7687 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/vishal/nvdimm.git for-5.9/firmware-activate
head: d62450f8b77310bc62ef67d60db40d1fd3251da9
commit: a54837b604a770f5c485847816bd6c570ab84880 [8/10] libnvdimm: Convert to DEVICE_ATTR_ADMIN_RO()
config: arm64-randconfig-r004-20200729 (attached as .config)
compiler: aarch64-linux-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
git checkout a54837b604a770f5c485847816bd6c570ab84880
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64
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 >>):
>> drivers/nvdimm/region_devs.c:608:8: error: type defaults to 'int' in declaration of 'DEVICE_ATTR_ADMIN_RO' [-Werror=implicit-int]
608 | static DEVICE_ATTR_ADMIN_RO(resource);
| ^~~~~~~~~~~~~~~~~~~~
drivers/nvdimm/region_devs.c:608:1: warning: parameter names (without types) in function declaration
608 | static DEVICE_ATTR_ADMIN_RO(resource);
| ^~~~~~
>> drivers/nvdimm/region_devs.c:640:3: error: 'dev_attr_resource' undeclared here (not in a function); did you mean 'dev_attr_nstype'?
640 | &dev_attr_resource.attr,
| ^~~~~~~~~~~~~~~~~
| dev_attr_nstype
drivers/nvdimm/region_devs.c: In function 'region_visible':
>> drivers/nvdimm/region_devs.c:661:29: error: request for member 'attr' in something not a structure or union
661 | if (a == &dev_attr_resource.attr && !is_memory(dev))
| ^
drivers/nvdimm/region_devs.c:661:8: warning: comparison of distinct pointer types lacks a cast
661 | if (a == &dev_attr_resource.attr && !is_memory(dev))
| ^~
drivers/nvdimm/region_devs.c: At top level:
drivers/nvdimm/region_devs.c:608:8: warning: 'DEVICE_ATTR_ADMIN_RO' declared 'static' but never defined [-Wunused-function]
608 | static DEVICE_ATTR_ADMIN_RO(resource);
| ^~~~~~~~~~~~~~~~~~~~
drivers/nvdimm/region_devs.c:601:16: warning: 'resource_show' defined but not used [-Wunused-function]
601 | static ssize_t resource_show(struct device *dev,
| ^~~~~~~~~~~~~
cc1: some warnings being treated as errors
--
>> drivers/nvdimm/namespace_devs.c:1312:8: error: type defaults to 'int' in declaration of 'DEVICE_ATTR_ADMIN_RO' [-Werror=implicit-int]
1312 | static DEVICE_ATTR_ADMIN_RO(resource);
| ^~~~~~~~~~~~~~~~~~~~
drivers/nvdimm/namespace_devs.c:1312:1: warning: parameter names (without types) in function declaration
1312 | static DEVICE_ATTR_ADMIN_RO(resource);
| ^~~~~~
>> drivers/nvdimm/namespace_devs.c:1614:3: error: 'dev_attr_resource' undeclared here (not in a function); did you mean 'dev_attr_mode'?
1614 | &dev_attr_resource.attr,
| ^~~~~~~~~~~~~~~~~
| dev_attr_mode
drivers/nvdimm/namespace_devs.c: In function 'namespace_visible':
>> drivers/nvdimm/namespace_devs.c:1628:29: error: request for member 'attr' in something not a structure or union
1628 | if (a == &dev_attr_resource.attr && is_namespace_blk(dev))
| ^
drivers/nvdimm/namespace_devs.c:1628:8: warning: comparison of distinct pointer types lacks a cast
1628 | if (a == &dev_attr_resource.attr && is_namespace_blk(dev))
| ^~
drivers/nvdimm/namespace_devs.c: At top level:
drivers/nvdimm/namespace_devs.c:1312:8: warning: 'DEVICE_ATTR_ADMIN_RO' declared 'static' but never defined [-Wunused-function]
1312 | static DEVICE_ATTR_ADMIN_RO(resource);
| ^~~~~~~~~~~~~~~~~~~~
drivers/nvdimm/namespace_devs.c:1291:16: warning: 'resource_show' defined but not used [-Wunused-function]
1291 | static ssize_t resource_show(struct device *dev,
| ^~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +608 drivers/nvdimm/region_devs.c
600
601 static ssize_t resource_show(struct device *dev,
602 struct device_attribute *attr, char *buf)
603 {
604 struct nd_region *nd_region = to_nd_region(dev);
605
606 return sprintf(buf, "%#llx\n", nd_region->ndr_start);
607 }
> 608 static DEVICE_ATTR_ADMIN_RO(resource);
609
610 static ssize_t persistence_domain_show(struct device *dev,
611 struct device_attribute *attr, char *buf)
612 {
613 struct nd_region *nd_region = to_nd_region(dev);
614
615 if (test_bit(ND_REGION_PERSIST_CACHE, &nd_region->flags))
616 return sprintf(buf, "cpu_cache\n");
617 else if (test_bit(ND_REGION_PERSIST_MEMCTRL, &nd_region->flags))
618 return sprintf(buf, "memory_controller\n");
619 else
620 return sprintf(buf, "\n");
621 }
622 static DEVICE_ATTR_RO(persistence_domain);
623
624 static struct attribute *nd_region_attributes[] = {
625 &dev_attr_size.attr,
626 &dev_attr_align.attr,
627 &dev_attr_nstype.attr,
628 &dev_attr_mappings.attr,
629 &dev_attr_btt_seed.attr,
630 &dev_attr_pfn_seed.attr,
631 &dev_attr_dax_seed.attr,
632 &dev_attr_deep_flush.attr,
633 &dev_attr_read_only.attr,
634 &dev_attr_set_cookie.attr,
635 &dev_attr_available_size.attr,
636 &dev_attr_max_available_extent.attr,
637 &dev_attr_namespace_seed.attr,
638 &dev_attr_init_namespaces.attr,
639 &dev_attr_badblocks.attr,
> 640 &dev_attr_resource.attr,
641 &dev_attr_persistence_domain.attr,
642 NULL,
643 };
644
645 static umode_t region_visible(struct kobject *kobj, struct attribute *a, int n)
646 {
647 struct device *dev = container_of(kobj, typeof(*dev), kobj);
648 struct nd_region *nd_region = to_nd_region(dev);
649 struct nd_interleave_set *nd_set = nd_region->nd_set;
650 int type = nd_region_to_nstype(nd_region);
651
652 if (!is_memory(dev) && a == &dev_attr_pfn_seed.attr)
653 return 0;
654
655 if (!is_memory(dev) && a == &dev_attr_dax_seed.attr)
656 return 0;
657
658 if (!is_memory(dev) && a == &dev_attr_badblocks.attr)
659 return 0;
660
> 661 if (a == &dev_attr_resource.attr && !is_memory(dev))
662 return 0;
663
664 if (a == &dev_attr_deep_flush.attr) {
665 int has_flush = nvdimm_has_flush(nd_region);
666
667 if (has_flush == 1)
668 return a->mode;
669 else if (has_flush == 0)
670 return 0444;
671 else
672 return 0;
673 }
674
675 if (a == &dev_attr_persistence_domain.attr) {
676 if ((nd_region->flags & (BIT(ND_REGION_PERSIST_CACHE)
677 | BIT(ND_REGION_PERSIST_MEMCTRL))) == 0)
678 return 0;
679 return a->mode;
680 }
681
682 if (a == &dev_attr_align.attr)
683 return a->mode;
684
685 if (a != &dev_attr_set_cookie.attr
686 && a != &dev_attr_available_size.attr)
687 return a->mode;
688
689 if ((type == ND_DEVICE_NAMESPACE_PMEM
690 || type == ND_DEVICE_NAMESPACE_BLK)
691 && a == &dev_attr_available_size.attr)
692 return a->mode;
693 else if (is_memory(dev) && nd_set)
694 return a->mode;
695
696 return 0;
697 }
698
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 35955 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-07-30 8:10 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-30 8:10 [vishal-nvdimm:for-5.9/firmware-activate 8/10] drivers/nvdimm/region_devs.c:608:8: error: type defaults to 'int' in declaration of 'DEVICE_ATTR_ADMIN_RO' kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.