All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Piyush Malgujar <pmalgujar@marvell.com>,
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org,
	dan.j.williams@intel.com, xueshuai@linux.alibaba.com,
	jaylu102@amd.com, benjamin.cheatham@amd.com, bp@alien8.de,
	tony.luck@intel.com, james.morse@arm.com, lenb@kernel.org,
	rafael@kernel.org
Cc: oe-kbuild-all@lists.linux.dev, jannadurai@marvell.com,
	cchavva@marvell.com, Piyush Malgujar <pmalgujar@marvell.com>
Subject: Re: [PATCH] ACPI: APEI: EINJ: EINJV2 support added
Date: Tue, 9 May 2023 04:27:53 +0800	[thread overview]
Message-ID: <202305090445.WSd683gm-lkp@intel.com> (raw)
In-Reply-To: <20230503143759.10485-1-pmalgujar@marvell.com>

Hi Piyush,

kernel test robot noticed the following build warnings:

[auto build test WARNING on rafael-pm/linux-next]
[also build test WARNING on linus/master v6.4-rc1 next-20230508]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Piyush-Malgujar/ACPI-APEI-EINJ-EINJV2-support-added/20230503-223915
base:   https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git linux-next
patch link:    https://lore.kernel.org/r/20230503143759.10485-1-pmalgujar%40marvell.com
patch subject: [PATCH] ACPI: APEI: EINJ: EINJV2 support added
config: x86_64-randconfig-s022 (https://download.01.org/0day-ci/archive/20230509/202305090445.WSd683gm-lkp@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-12) 11.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.4-39-gce1a6720-dirty
        # https://github.com/intel-lab-lkp/linux/commit/ca5bbbdcc074577ee88ccaa2d078a37eb5eec36f
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Piyush-Malgujar/ACPI-APEI-EINJ-EINJV2-support-added/20230503-223915
        git checkout ca5bbbdcc074577ee88ccaa2d078a37eb5eec36f
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 olddefconfig
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/acpi/apei/ drivers/platform/x86/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202305090445.WSd683gm-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   drivers/acpi/apei/einj.c:247:11: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct vendor_error_type_extension *v @@     got void [noderef] __iomem * @@
   drivers/acpi/apei/einj.c:247:11: sparse:     expected struct vendor_error_type_extension *v
   drivers/acpi/apei/einj.c:247:11: sparse:     got void [noderef] __iomem *
   drivers/acpi/apei/einj.c:255:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __iomem *virt @@     got struct vendor_error_type_extension *v @@
   drivers/acpi/apei/einj.c:255:29: sparse:     expected void [noderef] __iomem *virt
   drivers/acpi/apei/einj.c:255:29: sparse:     got struct vendor_error_type_extension *v
>> drivers/acpi/apei/einj.c:286:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct einjv2_set_error_type *v65param @@     got void [noderef] __iomem * @@
   drivers/acpi/apei/einj.c:286:26: sparse:     expected struct einjv2_set_error_type *v65param
   drivers/acpi/apei/einj.c:286:26: sparse:     got void [noderef] __iomem *
   drivers/acpi/apei/einj.c:295:25: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct set_error_type_with_address *v5param @@     got void [noderef] __iomem * @@
   drivers/acpi/apei/einj.c:295:25: sparse:     expected struct set_error_type_with_address *v5param
   drivers/acpi/apei/einj.c:295:25: sparse:     got void [noderef] __iomem *
   drivers/acpi/apei/einj.c:305:25: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct einj_parameter *v4param @@     got void [noderef] __iomem * @@
   drivers/acpi/apei/einj.c:305:25: sparse:     expected struct einj_parameter *v4param
   drivers/acpi/apei/einj.c:305:25: sparse:     got void [noderef] __iomem *
   drivers/acpi/apei/einj.c:309:45: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __iomem *virt @@     got struct einj_parameter *v4param @@
   drivers/acpi/apei/einj.c:309:45: sparse:     expected void [noderef] __iomem *virt
   drivers/acpi/apei/einj.c:309:45: sparse:     got struct einj_parameter *v4param
   drivers/acpi/apei/einj.c:376:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct acpi_einj_trigger *trigger_tab @@     got void [noderef] __iomem * @@
   drivers/acpi/apei/einj.c:376:21: sparse:     expected struct acpi_einj_trigger *trigger_tab
   drivers/acpi/apei/einj.c:376:21: sparse:     got void [noderef] __iomem *
   drivers/acpi/apei/einj.c:402:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got struct acpi_einj_trigger *trigger_tab @@
   drivers/acpi/apei/einj.c:402:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/acpi/apei/einj.c:402:17: sparse:     got struct acpi_einj_trigger *trigger_tab
   drivers/acpi/apei/einj.c:403:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct acpi_einj_trigger *trigger_tab @@     got void [noderef] __iomem * @@
   drivers/acpi/apei/einj.c:403:21: sparse:     expected struct acpi_einj_trigger *trigger_tab
   drivers/acpi/apei/einj.c:403:21: sparse:     got void [noderef] __iomem *
   drivers/acpi/apei/einj.c:468:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got struct acpi_einj_trigger *trigger_tab @@
   drivers/acpi/apei/einj.c:468:25: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/acpi/apei/einj.c:468:25: sparse:     got struct acpi_einj_trigger *trigger_tab
   drivers/acpi/apei/einj.c:930:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __iomem *virt @@     got void *static [assigned] [toplevel] einj_param @@
   drivers/acpi/apei/einj.c:930:37: sparse:     expected void [noderef] __iomem *virt
   drivers/acpi/apei/einj.c:930:37: sparse:     got void *static [assigned] [toplevel] einj_param

vim +286 drivers/acpi/apei/einj.c

   237	
   238	static void check_vendor_extension(u64 paddr,
   239					   struct set_error_type_with_address *v5param)
   240	{
   241		int	offset = v5param->vendor_extension;
   242		struct	vendor_error_type_extension *v;
   243		u32	sbdf;
   244	
   245		if (!offset)
   246			return;
 > 247		v = acpi_os_map_iomem(paddr + offset, sizeof(*v));
   248		if (!v)
   249			return;
   250		sbdf = v->pcie_sbdf;
   251		sprintf(vendor_dev, "%x:%x:%x.%x vendor_id=%x device_id=%x rev_id=%x\n",
   252			sbdf >> 24, (sbdf >> 16) & 0xff,
   253			(sbdf >> 11) & 0x1f, (sbdf >> 8) & 0x7,
   254			 v->vendor_id, v->device_id, v->rev_id);
   255		acpi_os_unmap_iomem(v, sizeof(*v));
   256	}
   257	
   258	static void *einj_get_parameter_address(void)
   259	{
   260		int i;
   261		u64 pa_v4 = 0, pa_v5 = 0, pa_v65 = 0;
   262		struct acpi_whea_header *entry;
   263	
   264		entry = EINJ_TAB_ENTRY(einj_tab);
   265		for (i = 0; i < einj_tab->entries; i++) {
   266			if (entry->action == ACPI_EINJ_SET_ERROR_TYPE &&
   267			    entry->instruction == ACPI_EINJ_WRITE_REGISTER &&
   268			    entry->register_region.space_id ==
   269			    ACPI_ADR_SPACE_SYSTEM_MEMORY)
   270				pa_v4 = get_unaligned(&entry->register_region.address);
   271			if (entry->action == ACPI_EINJ_SET_ERROR_TYPE_WITH_ADDRESS &&
   272			    entry->instruction == ACPI_EINJ_WRITE_REGISTER &&
   273			    entry->register_region.space_id ==
   274			    ACPI_ADR_SPACE_SYSTEM_MEMORY)
   275				pa_v5 = get_unaligned(&entry->register_region.address);
   276			if (entry->action == ACPI_EINJV2_SET_ERROR_TYPE &&
   277			    entry->instruction == ACPI_EINJ_WRITE_REGISTER &&
   278			    entry->register_region.space_id ==
   279			    ACPI_ADR_SPACE_SYSTEM_MEMORY)
   280				pa_v65 = get_unaligned(&entry->register_region.address);
   281			entry++;
   282		}
   283		if (pa_v65) {
   284			struct einjv2_set_error_type *v65param;
   285	
 > 286			v65param = acpi_os_map_iomem(pa_v65, sizeof(*v65param));
   287			if (v65param) {
   288				einjv2_supp = 1;
   289				return v65param;
   290			}
   291		}
   292		if (pa_v5) {
   293			struct set_error_type_with_address *v5param;
   294	
   295			v5param = acpi_os_map_iomem(pa_v5, sizeof(*v5param));
   296			if (v5param) {
   297				acpi5 = 1;
   298				check_vendor_extension(pa_v5, v5param);
   299				return v5param;
   300			}
   301		}
   302		if (param_extension && pa_v4) {
   303			struct einj_parameter *v4param;
   304	
   305			v4param = acpi_os_map_iomem(pa_v4, sizeof(*v4param));
   306			if (!v4param)
   307				return NULL;
   308			if (v4param->reserved1 || v4param->reserved2) {
   309				acpi_os_unmap_iomem(v4param, sizeof(*v4param));
   310				return NULL;
   311			}
   312			return v4param;
   313		}
   314	
   315		return NULL;
   316	}
   317	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

      parent reply	other threads:[~2023-05-08 20:28 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-03 14:37 [PATCH] ACPI: APEI: EINJ: EINJV2 support added Piyush Malgujar
2023-05-03 16:17 ` Luck, Tony
2023-05-08 20:27 ` kernel test robot [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=202305090445.WSd683gm-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=benjamin.cheatham@amd.com \
    --cc=bp@alien8.de \
    --cc=cchavva@marvell.com \
    --cc=dan.j.williams@intel.com \
    --cc=james.morse@arm.com \
    --cc=jannadurai@marvell.com \
    --cc=jaylu102@amd.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=pmalgujar@marvell.com \
    --cc=rafael@kernel.org \
    --cc=tony.luck@intel.com \
    --cc=xueshuai@linux.alibaba.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 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.