Linux-NVDIMM Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Pankaj Gupta <pagupta@redhat.com>
To: kbuild test robot <lkp@intel.com>
Cc: kbuild-all@01.org, linux-nvdimm@lists.01.org
Subject: Re: [linux-nvdimm:libnvdimm-for-next 5/15] drivers/s390//block/dcssblk.c:681:22: error: too few arguments to function 'alloc_dax'
Date: Thu, 20 Jun 2019 05:23:21 -0400 (EDT)	[thread overview]
Message-ID: <1639475107.36240838.1561022601447.JavaMail.zimbra@redhat.com> (raw)
In-Reply-To: <201906201556.Q1WxNSWK%lkp@intel.com>


Thanks for the email. Apologies for s390 build failure.
Below patch(untested) should fix this.

Thanks,
Pankaj

> 
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm.git
> libnvdimm-for-next
> head:   3b6047778c09037615e7b919c922081ef1a37a7f
> commit: fee8be32c5bab110c34884dfc4a68dd0105d2607 [5/15] libnvdimm: add
> dax_dev sync flag
> config: s390-debug_defconfig (attached as .config)
> compiler: s390-linux-gcc (GCC) 7.4.0
> reproduce:
>         wget
>         https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross
>         -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         git checkout fee8be32c5bab110c34884dfc4a68dd0105d2607
>         # save the attached .config to linux build tree
>         GCC_VERSION=7.4.0 make.cross ARCH=s390
> 
> If you fix the issue, kindly add following tag
> Reported-by: kbuild test robot <lkp@intel.com>

+++ b/drivers/s390/block/dcssblk.c
@@ -679,7 +679,7 @@ dcssblk_add_store(struct device *dev, struct device_attribute *attr, const char
                goto put_dev;
 
        dev_info->dax_dev = alloc_dax(dev_info, dev_info->gd->disk_name,
-                       &dcssblk_dax_ops);
+                       &dcssblk_dax_ops, DAXDEV_F_SYNC);


> 
> All errors (new ones prefixed by >>):
> 
>    drivers/s390//block/dcssblk.c: In function 'dcssblk_add_store':
> >> drivers/s390//block/dcssblk.c:681:22: error: too few arguments to function
> >> 'alloc_dax'
>      dev_info->dax_dev = alloc_dax(dev_info, dev_info->gd->disk_name,
>                          ^~~~~~~~~
>    In file included from drivers/s390//block/dcssblk.c:23:0:
>    include/linux/dax.h:43:20: note: declared here
>     struct dax_device *alloc_dax(void *private, const char *host,
>                        ^~~~~~~~~
> 
> vim +/alloc_dax +681 drivers/s390//block/dcssblk.c
> 
> b2300b9efe Hongjie Yang          2008-10-10  542
> b2300b9efe Hongjie Yang          2008-10-10  543  /*
> ^1da177e4c Linus Torvalds        2005-04-16  544   * device attribute for
> adding devices
> ^1da177e4c Linus Torvalds        2005-04-16  545   */
> ^1da177e4c Linus Torvalds        2005-04-16  546  static ssize_t
> e404e274f6 Yani Ioannou          2005-05-17  547  dcssblk_add_store(struct
> device *dev, struct device_attribute *attr, const char *buf, size_t count)
> ^1da177e4c Linus Torvalds        2005-04-16  548  {
> b2300b9efe Hongjie Yang          2008-10-10  549  	int rc, i, j,
> num_of_segments;
> ^1da177e4c Linus Torvalds        2005-04-16  550  	struct dcssblk_dev_info
> *dev_info;
> b2300b9efe Hongjie Yang          2008-10-10  551  	struct segment_info
> *seg_info, *temp;
> ^1da177e4c Linus Torvalds        2005-04-16  552  	char *local_buf;
> ^1da177e4c Linus Torvalds        2005-04-16  553  	unsigned long
> seg_byte_size;
> ^1da177e4c Linus Torvalds        2005-04-16  554
> ^1da177e4c Linus Torvalds        2005-04-16  555  	dev_info = NULL;
> b2300b9efe Hongjie Yang          2008-10-10  556  	seg_info = NULL;
> ^1da177e4c Linus Torvalds        2005-04-16  557  	if (dev !=
> dcssblk_root_dev) {
> ^1da177e4c Linus Torvalds        2005-04-16  558  		rc = -EINVAL;
> ^1da177e4c Linus Torvalds        2005-04-16  559  		goto out_nobuf;
> ^1da177e4c Linus Torvalds        2005-04-16  560  	}
> b2300b9efe Hongjie Yang          2008-10-10  561  	if ((count < 1) || (buf[0]
> == '\0') || (buf[0] == '\n')) {
> b2300b9efe Hongjie Yang          2008-10-10  562  		rc = -ENAMETOOLONG;
> b2300b9efe Hongjie Yang          2008-10-10  563  		goto out_nobuf;
> b2300b9efe Hongjie Yang          2008-10-10  564  	}
> b2300b9efe Hongjie Yang          2008-10-10  565
> ^1da177e4c Linus Torvalds        2005-04-16  566  	local_buf = kmalloc(count
> + 1, GFP_KERNEL);
> ^1da177e4c Linus Torvalds        2005-04-16  567  	if (local_buf == NULL) {
> ^1da177e4c Linus Torvalds        2005-04-16  568  		rc = -ENOMEM;
> ^1da177e4c Linus Torvalds        2005-04-16  569  		goto out_nobuf;
> ^1da177e4c Linus Torvalds        2005-04-16  570  	}
> b2300b9efe Hongjie Yang          2008-10-10  571
> ^1da177e4c Linus Torvalds        2005-04-16  572  	/*
> ^1da177e4c Linus Torvalds        2005-04-16  573  	 * parse input
> ^1da177e4c Linus Torvalds        2005-04-16  574  	 */
> b2300b9efe Hongjie Yang          2008-10-10  575  	num_of_segments = 0;
> 3a9f9183bd Ameen Ali             2015-02-24  576  	for (i = 0; (i < count &&
> (buf[i] != '\0') && (buf[i] != '\n')); i++) {
> 42cfc6b590 Martin Schwidefsky    2015-08-19  577  		for (j = i; j < count &&
> 42cfc6b590 Martin Schwidefsky    2015-08-19  578  			(buf[j] != ':') &&
> b2300b9efe Hongjie Yang          2008-10-10  579  			(buf[j] != '\0') &&
> 42cfc6b590 Martin Schwidefsky    2015-08-19  580  			(buf[j] != '\n'); j++) {
> b2300b9efe Hongjie Yang          2008-10-10  581  			local_buf[j-i] =
> toupper(buf[j]);
> b2300b9efe Hongjie Yang          2008-10-10  582  		}
> b2300b9efe Hongjie Yang          2008-10-10  583  		local_buf[j-i] = '\0';
> b2300b9efe Hongjie Yang          2008-10-10  584  		if (((j - i) == 0) || ((j
> - i) > 8)) {
> ^1da177e4c Linus Torvalds        2005-04-16  585  			rc = -ENAMETOOLONG;
> b2300b9efe Hongjie Yang          2008-10-10  586  			goto seg_list_del;
> ^1da177e4c Linus Torvalds        2005-04-16  587  		}
> b2300b9efe Hongjie Yang          2008-10-10  588
> b2300b9efe Hongjie Yang          2008-10-10  589  		rc =
> dcssblk_load_segment(local_buf, &seg_info);
> b2300b9efe Hongjie Yang          2008-10-10  590  		if (rc < 0)
> b2300b9efe Hongjie Yang          2008-10-10  591  			goto seg_list_del;
> ^1da177e4c Linus Torvalds        2005-04-16  592  		/*
> ^1da177e4c Linus Torvalds        2005-04-16  593  		 * get a struct
> dcssblk_dev_info
> ^1da177e4c Linus Torvalds        2005-04-16  594  		 */
> b2300b9efe Hongjie Yang          2008-10-10  595  		if (num_of_segments == 0)
> {
> b2300b9efe Hongjie Yang          2008-10-10  596  			dev_info =
> kzalloc(sizeof(struct dcssblk_dev_info),
> b2300b9efe Hongjie Yang          2008-10-10  597  					GFP_KERNEL);
> ^1da177e4c Linus Torvalds        2005-04-16  598  			if (dev_info == NULL) {
> ^1da177e4c Linus Torvalds        2005-04-16  599  				rc = -ENOMEM;
> ^1da177e4c Linus Torvalds        2005-04-16  600  				goto out;
> ^1da177e4c Linus Torvalds        2005-04-16  601  			}
> ^1da177e4c Linus Torvalds        2005-04-16  602
> 			strcpy(dev_info->segment_name, local_buf);
> b2300b9efe Hongjie Yang          2008-10-10  603  			dev_info->segment_type =
> seg_info->segment_type;
> b2300b9efe Hongjie Yang          2008-10-10  604
> 			INIT_LIST_HEAD(&dev_info->seg_list);
> b2300b9efe Hongjie Yang          2008-10-10  605  		}
> b2300b9efe Hongjie Yang          2008-10-10  606
> 		list_add_tail(&seg_info->lh, &dev_info->seg_list);
> b2300b9efe Hongjie Yang          2008-10-10  607  		num_of_segments++;
> b2300b9efe Hongjie Yang          2008-10-10  608  		i = j;
> b2300b9efe Hongjie Yang          2008-10-10  609
> b2300b9efe Hongjie Yang          2008-10-10  610  		if ((buf[j] == '\0') ||
> (buf[j] == '\n'))
> b2300b9efe Hongjie Yang          2008-10-10  611  			break;
> b2300b9efe Hongjie Yang          2008-10-10  612  	}
> b2300b9efe Hongjie Yang          2008-10-10  613
> b2300b9efe Hongjie Yang          2008-10-10  614  	/* no trailing colon at
> the end of the input */
> b2300b9efe Hongjie Yang          2008-10-10  615  	if ((i > 0) && (buf[i-1]
> == ':')) {
> b2300b9efe Hongjie Yang          2008-10-10  616  		rc = -ENAMETOOLONG;
> b2300b9efe Hongjie Yang          2008-10-10  617  		goto seg_list_del;
> b2300b9efe Hongjie Yang          2008-10-10  618  	}
> b2300b9efe Hongjie Yang          2008-10-10  619  	strlcpy(local_buf, buf, i
> + 1);
> b2300b9efe Hongjie Yang          2008-10-10  620  	dev_info->num_of_segments
> = num_of_segments;
> b2300b9efe Hongjie Yang          2008-10-10  621  	rc =
> dcssblk_is_continuous(dev_info);
> b2300b9efe Hongjie Yang          2008-10-10  622  	if (rc < 0)
> b2300b9efe Hongjie Yang          2008-10-10  623  		goto seg_list_del;
> b2300b9efe Hongjie Yang          2008-10-10  624
> b2300b9efe Hongjie Yang          2008-10-10  625  	dev_info->start =
> dcssblk_find_lowest_addr(dev_info);
> b2300b9efe Hongjie Yang          2008-10-10  626  	dev_info->end =
> dcssblk_find_highest_addr(dev_info);
> b2300b9efe Hongjie Yang          2008-10-10  627
> ef283688f5 Kees Cook             2014-06-10  628
> 	dev_set_name(&dev_info->dev, "%s", dev_info->segment_name);
> ^1da177e4c Linus Torvalds        2005-04-16  629  	dev_info->dev.release =
> dcssblk_release_segment;
> 521b3d790c Sebastian Ott         2012-10-01  630  	dev_info->dev.groups =
> dcssblk_dev_attr_groups;
> ^1da177e4c Linus Torvalds        2005-04-16  631
> 	INIT_LIST_HEAD(&dev_info->lh);
> ^1da177e4c Linus Torvalds        2005-04-16  632  	dev_info->gd =
> alloc_disk(DCSSBLK_MINORS_PER_DISK);
> ^1da177e4c Linus Torvalds        2005-04-16  633  	if (dev_info->gd == NULL)
> {
> ^1da177e4c Linus Torvalds        2005-04-16  634  		rc = -ENOMEM;
> b2300b9efe Hongjie Yang          2008-10-10  635  		goto seg_list_del;
> ^1da177e4c Linus Torvalds        2005-04-16  636  	}
> ^1da177e4c Linus Torvalds        2005-04-16  637  	dev_info->gd->major =
> dcssblk_major;
> ^1da177e4c Linus Torvalds        2005-04-16  638  	dev_info->gd->fops =
> &dcssblk_devops;
> ^1da177e4c Linus Torvalds        2005-04-16  639  	dev_info->dcssblk_queue =
> blk_alloc_queue(GFP_KERNEL);
> ^1da177e4c Linus Torvalds        2005-04-16  640  	dev_info->gd->queue =
> dev_info->dcssblk_queue;
> ^1da177e4c Linus Torvalds        2005-04-16  641  	dev_info->gd->private_data
> = dev_info;
> c5411dba58 Heiko Carstens        2008-02-05  642
> 	blk_queue_make_request(dev_info->dcssblk_queue, dcssblk_make_request);
> e1defc4ff0 Martin K. Petersen    2009-05-22  643
> 	blk_queue_logical_block_size(dev_info->dcssblk_queue, 4096);
> 8b904b5b6b Bart Van Assche       2018-03-07  644
> 	blk_queue_flag_set(QUEUE_FLAG_DAX, dev_info->dcssblk_queue);
> b2300b9efe Hongjie Yang          2008-10-10  645
> ^1da177e4c Linus Torvalds        2005-04-16  646  	seg_byte_size =
> (dev_info->end - dev_info->start + 1);
> ^1da177e4c Linus Torvalds        2005-04-16  647  	set_capacity(dev_info->gd,
> seg_byte_size >> 9); // size in sectors
> 93098bf015 Hongjie Yang          2008-12-25  648  	pr_info("Loaded %s with
> total size %lu bytes and capacity %lu "
> 93098bf015 Hongjie Yang          2008-12-25  649  		"sectors\n", local_buf,
> seg_byte_size, seg_byte_size >> 9);
> ^1da177e4c Linus Torvalds        2005-04-16  650
> ^1da177e4c Linus Torvalds        2005-04-16  651  	dev_info->save_pending =
> 0;
> ^1da177e4c Linus Torvalds        2005-04-16  652  	dev_info->is_shared = 1;
> ^1da177e4c Linus Torvalds        2005-04-16  653  	dev_info->dev.parent =
> dcssblk_root_dev;
> ^1da177e4c Linus Torvalds        2005-04-16  654
> ^1da177e4c Linus Torvalds        2005-04-16  655  	/*
> ^1da177e4c Linus Torvalds        2005-04-16  656  	 *get minor, add to list
> ^1da177e4c Linus Torvalds        2005-04-16  657  	 */
> ^1da177e4c Linus Torvalds        2005-04-16  658
> 	down_write(&dcssblk_devices_sem);
> b2300b9efe Hongjie Yang          2008-10-10  659  	if
> (dcssblk_get_segment_by_name(local_buf)) {
> 04f64b5756 Gerald Schaefer       2008-08-21  660  		rc = -EEXIST;
> b2300b9efe Hongjie Yang          2008-10-10  661  		goto release_gd;
> 04f64b5756 Gerald Schaefer       2008-08-21  662  	}
> ^1da177e4c Linus Torvalds        2005-04-16  663  	rc =
> dcssblk_assign_free_minor(dev_info);
> b2300b9efe Hongjie Yang          2008-10-10  664  	if (rc)
> b2300b9efe Hongjie Yang          2008-10-10  665  		goto release_gd;
> ^1da177e4c Linus Torvalds        2005-04-16  666
> 	sprintf(dev_info->gd->disk_name, "dcssblk%d",
> d0591485e1 Gerald Schaefer       2009-06-12  667
> 		dev_info->gd->first_minor);
> ^1da177e4c Linus Torvalds        2005-04-16  668
> 	list_add_tail(&dev_info->lh, &dcssblk_devices);
> ^1da177e4c Linus Torvalds        2005-04-16  669
> ^1da177e4c Linus Torvalds        2005-04-16  670  	if
> (!try_module_get(THIS_MODULE)) {
> ^1da177e4c Linus Torvalds        2005-04-16  671  		rc = -ENODEV;
> b2300b9efe Hongjie Yang          2008-10-10  672  		goto dev_list_del;
> ^1da177e4c Linus Torvalds        2005-04-16  673  	}
> ^1da177e4c Linus Torvalds        2005-04-16  674  	/*
> ^1da177e4c Linus Torvalds        2005-04-16  675  	 * register the device
> ^1da177e4c Linus Torvalds        2005-04-16  676  	 */
> ^1da177e4c Linus Torvalds        2005-04-16  677  	rc =
> device_register(&dev_info->dev);
> ^1da177e4c Linus Torvalds        2005-04-16  678  	if (rc)
> 521b3d790c Sebastian Ott         2012-10-01  679  		goto put_dev;
> ^1da177e4c Linus Torvalds        2005-04-16  680
> 7a2765f6e8 Dan Williams          2017-01-26 @681  	dev_info->dax_dev =
> alloc_dax(dev_info, dev_info->gd->disk_name,
> 7a2765f6e8 Dan Williams          2017-01-26  682  			&dcssblk_dax_ops);
> 7a2765f6e8 Dan Williams          2017-01-26  683  	if (!dev_info->dax_dev) {
> 7a2765f6e8 Dan Williams          2017-01-26  684  		rc = -ENOMEM;
> 7a2765f6e8 Dan Williams          2017-01-26  685  		goto put_dev;
> 7a2765f6e8 Dan Williams          2017-01-26  686  	}
> 7a2765f6e8 Dan Williams          2017-01-26  687
> 521b3d790c Sebastian Ott         2012-10-01  688
> 	get_device(&dev_info->dev);
> fef912bf86 Hannes Reinecke       2018-09-28  689
> 	device_add_disk(&dev_info->dev, dev_info->gd, NULL);
> 436d1bc7fe Christian Borntraeger 2007-12-04  690
> ^1da177e4c Linus Torvalds        2005-04-16  691  	switch
> (dev_info->segment_type) {
> ^1da177e4c Linus Torvalds        2005-04-16  692  		case SEG_TYPE_SR:
> ^1da177e4c Linus Torvalds        2005-04-16  693  		case SEG_TYPE_ER:
> ^1da177e4c Linus Torvalds        2005-04-16  694  		case SEG_TYPE_SC:
> ^1da177e4c Linus Torvalds        2005-04-16  695
> 			set_disk_ro(dev_info->gd,1);
> ^1da177e4c Linus Torvalds        2005-04-16  696  			break;
> ^1da177e4c Linus Torvalds        2005-04-16  697  		default:
> ^1da177e4c Linus Torvalds        2005-04-16  698
> 			set_disk_ro(dev_info->gd,0);
> ^1da177e4c Linus Torvalds        2005-04-16  699  			break;
> ^1da177e4c Linus Torvalds        2005-04-16  700  	}
> ^1da177e4c Linus Torvalds        2005-04-16  701
> 	up_write(&dcssblk_devices_sem);
> ^1da177e4c Linus Torvalds        2005-04-16  702  	rc = count;
> ^1da177e4c Linus Torvalds        2005-04-16  703  	goto out;
> ^1da177e4c Linus Torvalds        2005-04-16  704
> 521b3d790c Sebastian Ott         2012-10-01  705  put_dev:
> ^1da177e4c Linus Torvalds        2005-04-16  706  	list_del(&dev_info->lh);
> 1312f40e11 Al Viro               2006-03-12  707
> 	blk_cleanup_queue(dev_info->dcssblk_queue);
> ^1da177e4c Linus Torvalds        2005-04-16  708  	dev_info->gd->queue =
> NULL;
> ^1da177e4c Linus Torvalds        2005-04-16  709  	put_disk(dev_info->gd);
> b2300b9efe Hongjie Yang          2008-10-10  710
> 	list_for_each_entry(seg_info, &dev_info->seg_list, lh) {
> b2300b9efe Hongjie Yang          2008-10-10  711
> 		segment_unload(seg_info->segment_name);
> b2300b9efe Hongjie Yang          2008-10-10  712  	}
> ^1da177e4c Linus Torvalds        2005-04-16  713
> 	put_device(&dev_info->dev);
> ^1da177e4c Linus Torvalds        2005-04-16  714
> 	up_write(&dcssblk_devices_sem);
> ^1da177e4c Linus Torvalds        2005-04-16  715  	goto out;
> b2300b9efe Hongjie Yang          2008-10-10  716  dev_list_del:
> ^1da177e4c Linus Torvalds        2005-04-16  717  	list_del(&dev_info->lh);
> b2300b9efe Hongjie Yang          2008-10-10  718  release_gd:
> 1312f40e11 Al Viro               2006-03-12  719
> 	blk_cleanup_queue(dev_info->dcssblk_queue);
> ^1da177e4c Linus Torvalds        2005-04-16  720  	dev_info->gd->queue =
> NULL;
> ^1da177e4c Linus Torvalds        2005-04-16  721  	put_disk(dev_info->gd);
> b2300b9efe Hongjie Yang          2008-10-10  722
> 	up_write(&dcssblk_devices_sem);
> b2300b9efe Hongjie Yang          2008-10-10  723  seg_list_del:
> b2300b9efe Hongjie Yang          2008-10-10  724  	if (dev_info == NULL)
> b2300b9efe Hongjie Yang          2008-10-10  725  		goto out;
> b2300b9efe Hongjie Yang          2008-10-10  726
> 	list_for_each_entry_safe(seg_info, temp, &dev_info->seg_list, lh) {
> b2300b9efe Hongjie Yang          2008-10-10  727  		list_del(&seg_info->lh);
> b2300b9efe Hongjie Yang          2008-10-10  728
> 		segment_unload(seg_info->segment_name);
> b2300b9efe Hongjie Yang          2008-10-10  729  		kfree(seg_info);
> b2300b9efe Hongjie Yang          2008-10-10  730  	}
> ^1da177e4c Linus Torvalds        2005-04-16  731  	kfree(dev_info);
> ^1da177e4c Linus Torvalds        2005-04-16  732  out:
> ^1da177e4c Linus Torvalds        2005-04-16  733  	kfree(local_buf);
> ^1da177e4c Linus Torvalds        2005-04-16  734  out_nobuf:
> ^1da177e4c Linus Torvalds        2005-04-16  735  	return rc;
> ^1da177e4c Linus Torvalds        2005-04-16  736  }
> ^1da177e4c Linus Torvalds        2005-04-16  737
> 
> :::::: The code at line 681 was first introduced by commit
> :::::: 7a2765f6e82063f348ebce78c28eceff741689d4 dcssblk: add dax_operations
> support
> 
> :::::: TO: Dan Williams <dan.j.williams@intel.com>
> :::::: CC: Dan Williams <dan.j.williams@intel.com>
> 
> ---
> 0-DAY kernel test infrastructure                Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
> 
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm

      reply	other threads:[~2019-06-20  9:23 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-20  7:07 [linux-nvdimm:libnvdimm-for-next 5/15] drivers/s390//block/dcssblk.c:681:22: error: too few arguments to function 'alloc_dax' kbuild test robot
2019-06-20  9:23 ` Pankaj Gupta [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1639475107.36240838.1561022601447.JavaMail.zimbra@redhat.com \
    --to=pagupta@redhat.com \
    --cc=kbuild-all@01.org \
    --cc=linux-nvdimm@lists.01.org \
    --cc=lkp@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox