tree:
git://git.infradead.org/users/hch/block.git block-fs.h-cleanup
head: 1261c655dd25c5a21aafc9912a2b09a4956cf818
commit: 1261c655dd25c5a21aafc9912a2b09a4956cf818 [10/10] block: move struct block_device
to blk_types.h
config: s390-allyesconfig (attached as .config)
compiler: s390-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 1261c655dd25c5a21aafc9912a2b09a4956cf818
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=s390
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>, old ones prefixed by <<):
In file included from drivers/s390/block/dasd_ioctl.c:25:
> include/linux/dasd_mod.h:7:36: warning: 'struct gendisk'
declared inside parameter list will not be visible outside of this definition or
declaration
7 | extern int dasd_biodasdinfo(struct gendisk *disk,
dasd_information2_t *info);
| ^~~~~~~
drivers/s390/block/dasd_ioctl.c:684:5: error: conflicting types for
'dasd_biodasdinfo'
684 | int dasd_biodasdinfo(struct gendisk *disk, struct dasd_information2_t *info)
| ^~~~~~~~~~~~~~~~
In file included from drivers/s390/block/dasd_ioctl.c:25:
include/linux/dasd_mod.h:7:12: note: previous declaration of 'dasd_biodasdinfo'
was here
7 | extern int dasd_biodasdinfo(struct gendisk *disk, dasd_information2_t *info);
| ^~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from include/linux/interrupt.h:6,
from drivers/s390/block/dasd_ioctl.c:15:
drivers/s390/block/dasd_ioctl.c:700:19: error: conflicting types for
'dasd_biodasdinfo'
700 | EXPORT_SYMBOL_GPL(dasd_biodasdinfo);
| ^~~~~~~~~~~~~~~~
include/linux/export.h:98:21: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym; | ^~~
include/linux/export.h:155:34: note: in expansion of macro '__EXPORT_SYMBOL'
155 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
| ^~~~~~~~~~~~~~~
include/linux/export.h:159:33: note: in expansion of macro '_EXPORT_SYMBOL'
159 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
| ^~~~~~~~~~~~~~
> drivers/s390/block/dasd_ioctl.c:700:1: note: in expansion of
macro 'EXPORT_SYMBOL_GPL'
700 | EXPORT_SYMBOL_GPL(dasd_biodasdinfo);
| ^~~~~~~~~~~~~~~~~
In file included from drivers/s390/block/dasd_ioctl.c:25:
include/linux/dasd_mod.h:7:12: note: previous declaration of 'dasd_biodasdinfo'
was here
7 | extern int dasd_biodasdinfo(struct gendisk *disk, dasd_information2_t *info);
| ^~~~~~~~~~~~~~~~
--
In file included from block/partitions/ibm.c:17:
> include/linux/dasd_mod.h:7:36: warning: 'struct gendisk'
declared inside parameter list will not be visible outside of this definition or
declaration
7 | extern int dasd_biodasdinfo(struct gendisk *disk,
dasd_information2_t *info);
| ^~~~~~~
block/partitions/ibm.c: In function 'ibm_partition':
> block/partitions/ibm.c:307:5: error: assignment to 'int
(*)(struct gendisk *, dasd_information2_t *)' {aka 'int (*)(struct gendisk *,
struct dasd_information2_t *)'} from incompatible pointer type 'int (*)(struct
gendisk *, dasd_information2_t *)' {aka 'int (*)(struct gendisk *, struct
dasd_information2_t *)'} [-Werror=incompatible-pointer-types]
307 | fn =
symbol_get(dasd_biodasdinfo);
| ^
cc1: some warnings being treated as errors
vim +307 block/partitions/ibm.c
46e8894786327c Stefan Weinhuber 2012-08-31 285
46e8894786327c Stefan Weinhuber 2012-08-31 286
46e8894786327c Stefan Weinhuber 2012-08-31 287 /*
46e8894786327c Stefan Weinhuber 2012-08-31 288 * This is the main function, called by
check.c
46e8894786327c Stefan Weinhuber 2012-08-31 289 */
46e8894786327c Stefan Weinhuber 2012-08-31 290 int ibm_partition(struct
parsed_partitions *state)
46e8894786327c Stefan Weinhuber 2012-08-31 291 {
26d7e28e38206b Stefan Haberland 2020-05-19 292 int (*fn)(struct gendisk *disk,
dasd_information2_t *info);
46e8894786327c Stefan Weinhuber 2012-08-31 293 struct block_device *bdev =
state->bdev;
26d7e28e38206b Stefan Haberland 2020-05-19 294 struct gendisk *disk =
bdev->bd_disk;
46e8894786327c Stefan Weinhuber 2012-08-31 295 int blocksize, res;
46e8894786327c Stefan Weinhuber 2012-08-31 296 loff_t i_size, offset, size;
46e8894786327c Stefan Weinhuber 2012-08-31 297 dasd_information2_t *info;
46e8894786327c Stefan Weinhuber 2012-08-31 298 struct hd_geometry *geo;
46e8894786327c Stefan Weinhuber 2012-08-31 299 char type[5] = {0,};
46e8894786327c Stefan Weinhuber 2012-08-31 300 char name[7] = {0,};
46e8894786327c Stefan Weinhuber 2012-08-31 301 sector_t labelsect;
46e8894786327c Stefan Weinhuber 2012-08-31 302 union label_t *label;
46e8894786327c Stefan Weinhuber 2012-08-31 303
46e8894786327c Stefan Weinhuber 2012-08-31 304 res = 0;
26d7e28e38206b Stefan Haberland 2020-05-19 305 if (!disk->fops->getgeo)
26d7e28e38206b Stefan Haberland 2020-05-19 306 goto out_exit;
26d7e28e38206b Stefan Haberland 2020-05-19 @307 fn = symbol_get(dasd_biodasdinfo);
:::::: The code at line 307 was first introduced by commit
:::::: 26d7e28e38206b1b3207af1409eee2269ab36f82 s390/dasd: remove ioctl_by_bdev calls
:::::: TO: Stefan Haberland <sth(a)linux.ibm.com>
:::::: CC: Jens Axboe <axboe(a)kernel.dk>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org