LinuxPPC-Dev Archive on lore.kernel.org
 help / color / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Alastair D'Silva <alastair@au1.ibm.com>
Cc: "Oscar Salvador" <osalvador@suse.com>,
	"Michal Hocko" <mhocko@suse.com>,
	"David Hildenbrand" <david@redhat.com>,
	"Alexey Kardashevskiy" <aik@ozlabs.ru>,
	"Wei Yang" <richard.weiyang@gmail.com>,
	"Mahesh Salgaonkar" <mahesh@linux.vnet.ibm.com>,
	"Masahiro Yamada" <yamada.masahiro@socionext.com>,
	"Paul Mackerras" <paulus@samba.org>,
	"Ira Weiny" <ira.weiny@intel.com>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Pavel Tatashin" <pasha.tatashin@soleen.com>,
	"Dave Jiang" <dave.jiang@intel.com>,
	linux-nvdimm@lists.01.org,
	"Vishal Verma" <vishal.l.verma@intel.com>,
	"Krzysztof Kozlowski" <krzk@kernel.org>,
	alastair@d-silva.org, "Andrew Donnellan" <ajd@linux.ibm.com>,
	"Arnd Bergmann" <arnd@arndb.de>, "Greg Kurz" <groug@kaod.org>,
	"Nicholas Piggin" <npiggin@gmail.com>, "Qian Cai" <cai@lca.pw>,
	"Cédric Le Goater" <clg@kaod.org>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Hari Bathini" <hbathini@linux.ibm.com>,
	"David Gibson" <david@gibson.dropbear.id.au>,
	"Keith Busch" <keith.busch@intel.com>,
	kbuild-all@lists.01.org, linux-mm@kvack.org,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org,
	"Frederic Barrat" <fbarrat@linux.ibm.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH 08/10] nvdimm: Add driver for OpenCAPI Storage Class Memory
Date: Mon, 28 Oct 2019 06:53:34 +0800
Message-ID: <201910280616.xMDgVa1e%lkp@intel.com> (raw)
In-Reply-To: <20191025044721.16617-9-alastair@au1.ibm.com>

[-- Attachment #1: Type: text/plain, Size: 8388 bytes --]

Hi Alastair,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on char-misc/char-misc-testing]
[cannot apply to v5.4-rc5 next-20191025]
[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/Alastair-D-Silva/Add-support-for-OpenCAPI-SCM-devices/20191028-043750
base:   https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git da80d2e516eb858eb5bcca7fa5f5a13ed86930e4
config: x86_64-allyesconfig (attached as .config)
compiler: gcc-7 (Debian 7.4.0-14) 7.4.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/nvdimm/ocxl-scm.c: In function 'scm_register_lpc_mem':
>> drivers/nvdimm/ocxl-scm.c:476:16: error: implicit declaration of function 'of_node_to_nid'; did you mean 'zone_to_nid'? [-Werror=implicit-function-declaration]
     target_node = of_node_to_nid(scm_data->pdev->dev.of_node);
                   ^~~~~~~~~~~~~~
                   zone_to_nid
   cc1: some warnings being treated as errors
--
   drivers/misc/ocxl/main.c: In function 'init_ocxl':
>> drivers/misc/ocxl/main.c:12:7: error: 'tlbie_capable' undeclared (first use in this function); did you mean 'ptracer_capable'?
     if (!tlbie_capable)
          ^~~~~~~~~~~~~
          ptracer_capable
   drivers/misc/ocxl/main.c:12:7: note: each undeclared identifier is reported only once for each function it appears in
--
>> drivers/misc/ocxl/config.c:4:10: fatal error: asm/pnv-ocxl.h: No such file or directory
    #include <asm/pnv-ocxl.h>
             ^~~~~~~~~~~~~~~~
   compilation terminated.
--
>> drivers/misc/ocxl/file.c:9:10: fatal error: asm/reg.h: No such file or directory
    #include <asm/reg.h>
             ^~~~~~~~~~~
   compilation terminated.
--
   drivers/misc/ocxl/mmio.c: In function 'ocxl_global_mmio_read32':
>> drivers/misc/ocxl/mmio.c:20:10: error: implicit declaration of function 'readl_be'; did you mean 'readsb'? [-Werror=implicit-function-declaration]
      *val = readl_be((char *)afu->global_mmio_ptr + offset);
             ^~~~~~~~
             readsb
   drivers/misc/ocxl/mmio.c: In function 'ocxl_global_mmio_read64':
>> drivers/misc/ocxl/mmio.c:45:10: error: implicit declaration of function 'readq_be'; did you mean 'readsb'? [-Werror=implicit-function-declaration]
      *val = readq_be((char *)afu->global_mmio_ptr + offset);
             ^~~~~~~~
             readsb
   drivers/misc/ocxl/mmio.c: In function 'ocxl_global_mmio_write32':
>> drivers/misc/ocxl/mmio.c:70:3: error: implicit declaration of function 'writel_be'; did you mean 'writesb'? [-Werror=implicit-function-declaration]
      writel_be(val, (char *)afu->global_mmio_ptr + offset);
      ^~~~~~~~~
      writesb
   drivers/misc/ocxl/mmio.c: In function 'ocxl_global_mmio_write64':
>> drivers/misc/ocxl/mmio.c:96:3: error: implicit declaration of function 'writeq_be'; did you mean 'writesb'? [-Werror=implicit-function-declaration]
      writeq_be(val, (char *)afu->global_mmio_ptr + offset);
      ^~~~~~~~~
      writesb
   cc1: some warnings being treated as errors
--
>> drivers/misc/ocxl/link.c:7:10: fatal error: asm/copro.h: No such file or directory
    #include <asm/copro.h>
             ^~~~~~~~~~~~~
   compilation terminated.
--
   drivers/misc/ocxl/context.c: In function 'ocxl_context_attach':
>> drivers/misc/ocxl/context.c:82:21: error: 'mm_context_t {aka struct <anonymous>}' has no member named 'id'
      pidr = mm->context.id;
                        ^
--
>> drivers/misc/ocxl/afu_irq.c:4:10: fatal error: asm/pnv-ocxl.h: No such file or directory
    #include <asm/pnv-ocxl.h>
             ^~~~~~~~~~~~~~~~
   compilation terminated.
--
   drivers/misc/ocxl/core.c: In function 'ocxl_function_open':
>> drivers/misc/ocxl/core.c:546:7: error: implicit declaration of function 'radix_enabled'; did you mean 'pat_enabled'? [-Werror=implicit-function-declaration]
     if (!radix_enabled()) {
          ^~~~~~~~~~~~~
          pat_enabled
   cc1: some warnings being treated as errors

vim +476 drivers/nvdimm/ocxl-scm.c

   402	
   403	/**
   404	 * scm_register_lpc_mem() - Discover persistent memory on a device and register it with the NVDIMM subsystem
   405	 * @scm_data: The SCM device data
   406	 * Return: 0 on success
   407	 */
   408	static int scm_register_lpc_mem(struct scm_data *scm_data)
   409	{
   410		struct nd_region_desc region_desc;
   411		struct nd_mapping_desc nd_mapping_desc;
   412		struct resource *lpc_mem;
   413		const struct ocxl_afu_config *config;
   414		const struct ocxl_fn_config *fn_config;
   415		int rc;
   416		unsigned long nvdimm_cmd_mask = 0;
   417		unsigned long nvdimm_flags = 0;
   418		int target_node;
   419		char serial[16+1];
   420	
   421		// Set up the reserved metadata area
   422		rc = ocxl_afu_map_lpc_mem(scm_data->ocxl_afu);
   423		if (rc < 0)
   424			return rc;
   425	
   426		lpc_mem = ocxl_afu_lpc_mem(scm_data->ocxl_afu);
   427		if (lpc_mem == NULL)
   428			return -EINVAL;
   429	
   430		config = ocxl_afu_config(scm_data->ocxl_afu);
   431		fn_config = ocxl_function_config(scm_data->ocxl_fn);
   432	
   433		rc = scm_reserve_metadata(scm_data, lpc_mem);
   434		if (rc)
   435			return rc;
   436	
   437		scm_data->bus_desc.attr_groups = scm_pmem_attribute_groups;
   438		scm_data->bus_desc.provider_name = "scm";
   439		scm_data->bus_desc.ndctl = scm_ndctl;
   440		scm_data->bus_desc.module = THIS_MODULE;
   441	
   442		scm_data->nvdimm_bus = nvdimm_bus_register(&scm_data->dev,
   443				       &scm_data->bus_desc);
   444		if (!scm_data->nvdimm_bus)
   445			return -EINVAL;
   446	
   447		scm_data->scm_res.start = (u64)lpc_mem->start + SCM_LABEL_AREA_SIZE;
   448		scm_data->scm_res.end = (u64)lpc_mem->start + config->lpc_mem_size - 1;
   449		scm_data->scm_res.name = "SCM persistent memory";
   450	
   451		set_bit(ND_CMD_GET_CONFIG_SIZE, &nvdimm_cmd_mask);
   452		set_bit(ND_CMD_GET_CONFIG_DATA, &nvdimm_cmd_mask);
   453		set_bit(ND_CMD_SET_CONFIG_DATA, &nvdimm_cmd_mask);
   454		set_bit(ND_CMD_SMART, &nvdimm_cmd_mask);
   455	
   456		set_bit(NDD_ALIASING, &nvdimm_flags);
   457	
   458		snprintf(serial, sizeof(serial), "%llx", fn_config->serial);
   459		nd_mapping_desc.nvdimm = __nvdimm_create(scm_data->nvdimm_bus, scm_data,
   460					 scm_dimm_attribute_groups,
   461					 nvdimm_flags, nvdimm_cmd_mask,
   462					 0, NULL, serial, &sec_ops);
   463		if (!nd_mapping_desc.nvdimm)
   464			return -ENOMEM;
   465	
   466		if (nvdimm_bus_check_dimm_count(scm_data->nvdimm_bus, 1))
   467			return -EINVAL;
   468	
   469		nd_mapping_desc.start = scm_data->scm_res.start;
   470		nd_mapping_desc.size = resource_size(&scm_data->scm_res);
   471		nd_mapping_desc.position = 0;
   472	
   473		scm_data->nd_set.cookie1 = fn_config->serial + 1; // allow for empty serial
   474		scm_data->nd_set.cookie2 = fn_config->serial + 1;
   475	
 > 476		target_node = of_node_to_nid(scm_data->pdev->dev.of_node);
   477	
   478		memset(&region_desc, 0, sizeof(region_desc));
   479		region_desc.res = &scm_data->scm_res;
   480		region_desc.attr_groups = scm_pmem_region_attribute_groups;
   481		region_desc.numa_node = NUMA_NO_NODE;
   482		region_desc.target_node = target_node;
   483		region_desc.num_mappings = 1;
   484		region_desc.mapping = &nd_mapping_desc;
   485		region_desc.nd_set = &scm_data->nd_set;
   486	
   487		set_bit(ND_REGION_PAGEMAP, &region_desc.flags);
   488		/*
   489		 * NB: libnvdimm copies the data from ndr_desc into it's own
   490		 * structures so passing a stack pointer is fine.
   491		 */
   492		scm_data->nd_region = nvdimm_pmem_region_create(scm_data->nvdimm_bus,
   493				      &region_desc);
   494		if (!scm_data->nd_region)
   495			return -EINVAL;
   496	
   497		dev_info(&scm_data->dev,
   498			 "Onlining %lluMB of persistent memory\n",
   499			 nd_mapping_desc.size / SZ_1M);
   500	
   501		return 0;
   502	}
   503	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 70147 bytes --]

  parent reply index

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-25  4:46 [PATCH 00/10] Add support for OpenCAPI SCM devices Alastair D'Silva
2019-10-25  4:46 ` [PATCH 01/10] memory_hotplug: Add a bounds check to __add_pages Alastair D'Silva
2019-10-25  4:46 ` [PATCH 02/10] nvdimm: remove prototypes for nonexistent functions Alastair D'Silva
2019-10-27 23:41   ` Andrew Donnellan
2019-11-07 17:56   ` Frederic Barrat
2019-11-15  4:30   ` Dan Williams
2019-10-25  4:46 ` [PATCH 03/10] powerpc: Add OPAL calls for LPC memory alloc/release Alastair D'Silva
2019-11-07 17:57   ` Frederic Barrat
2019-10-25  4:46 ` [PATCH 04/10] powerpc: Map & release OpenCAPI LPC memory Alastair D'Silva
2019-10-27 21:24   ` kbuild test robot
2019-10-27 21:59   ` kbuild test robot
2019-10-28  2:34   ` kbuild test robot
2019-10-29  1:49   ` Andrew Donnellan
2019-10-29  2:44     ` Alastair D'Silva
2019-10-29  2:47       ` Andrew Donnellan
2019-11-07 17:59   ` Frederic Barrat
2019-11-11  9:34   ` Aneesh Kumar K.V
2019-10-25  4:47 ` [PATCH 05/10] ocxl: Tally up the LPC memory on a link & allow it to be mapped Alastair D'Silva
2019-11-07 18:02   ` Frederic Barrat
2019-10-25  4:47 ` [PATCH 06/10] ocxl: Add functions to map/unmap LPC memory Alastair D'Silva
2019-11-07 18:05   ` Frederic Barrat
2019-10-25  4:47 ` [PATCH 07/10] ocxl: Save the device serial number in ocxl_fn Alastair D'Silva
2019-11-06  3:10   ` Andrew Donnellan
2019-11-07 18:18   ` Frederic Barrat
2019-10-25  4:47 ` [PATCH 08/10] nvdimm: Add driver for OpenCAPI Storage Class Memory Alastair D'Silva
2019-10-27 22:19   ` kbuild test robot
2019-10-27 22:53   ` kbuild test robot [this message]
2019-10-28  1:12   ` [RFC PATCH] nvdimm: scm_get() can be static kbuild test robot
2019-11-11 11:14   ` [PATCH 08/10] nvdimm: Add driver for OpenCAPI Storage Class Memory Aneesh Kumar K.V
2019-11-12  5:37     ` Dan Williams
2019-11-12  5:41       ` Dan Williams
2019-11-14 13:41   ` Frederic Barrat
2019-11-14 16:35     ` Dan Williams
2019-11-18 23:47       ` Andrew Donnellan
2019-11-19  0:04         ` Dan Williams
2019-11-19  2:48         ` Alastair D'Silva
2019-11-19  3:26           ` Andrew Donnellan
2019-11-19  4:41             ` Dan Williams
2019-11-18 23:01     ` Alastair D'Silva
2019-10-25  4:47 ` [PATCH 09/10] powerpc: Enable OpenCAPI Storage Class Memory driver on bare metal Alastair D'Silva
2019-10-28  2:43   ` Oliver O'Halloran
2019-11-08  7:10   ` Frederic Barrat
2019-11-11  9:46   ` Aneesh Kumar K.V
2019-10-25  4:47 ` [PATCH 10/10] ocxl: Conditionally bind SCM devices to the generic OCXL driver Alastair D'Silva
2019-10-26  6:43   ` Christoph Hellwig
2019-11-06  3:46   ` Andrew Donnellan
2019-11-07 18:08   ` Frederic Barrat
2019-11-08  0:37     ` Alastair D'Silva
2019-10-25  7:57 ` [PATCH 00/10] Add support for OpenCAPI SCM devices Geert Uytterhoeven

Reply instructions:

You may reply publically 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=201910280616.xMDgVa1e%lkp@intel.com \
    --to=lkp@intel.com \
    --cc=aik@ozlabs.ru \
    --cc=ajd@linux.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=alastair@au1.ibm.com \
    --cc=alastair@d-silva.org \
    --cc=arnd@arndb.de \
    --cc=cai@lca.pw \
    --cc=clg@kaod.org \
    --cc=dan.j.williams@intel.com \
    --cc=dave.jiang@intel.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=david@redhat.com \
    --cc=fbarrat@linux.ibm.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=groug@kaod.org \
    --cc=hbathini@linux.ibm.com \
    --cc=ira.weiny@intel.com \
    --cc=kbuild-all@lists.01.org \
    --cc=keith.busch@intel.com \
    --cc=krzk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-nvdimm@lists.01.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mahesh@linux.vnet.ibm.com \
    --cc=mhocko@suse.com \
    --cc=npiggin@gmail.com \
    --cc=osalvador@suse.com \
    --cc=pasha.tatashin@soleen.com \
    --cc=paulus@samba.org \
    --cc=richard.weiyang@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=vishal.l.verma@intel.com \
    --cc=yamada.masahiro@socionext.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

LinuxPPC-Dev Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linuxppc-dev/0 linuxppc-dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linuxppc-dev linuxppc-dev/ https://lore.kernel.org/linuxppc-dev \
		linuxppc-dev@lists.ozlabs.org linuxppc-dev@ozlabs.org
	public-inbox-index linuxppc-dev

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.ozlabs.lists.linuxppc-dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git