lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202111192014.ovWU8BHu-lkp@intel.com>
Date:   Fri, 19 Nov 2021 20:10:24 +0800
From:   kernel test robot <lkp@...el.com>
To:     Justin Ernst <justin.ernst@....com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
        Borislav Petkov <bp@...e.de>, Steve Wahl <steve.wahl@....com>
Subject: arch/x86/platform/uv/bios_uv.c:175:12: sparse: sparse: function
 'uv_bios_get_master_nasid' with external linkage has definition

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4c388a8e740d3235a194f330c8ef327deef710f6
commit: 9a3c425cfdfee169622f1cb1a974b2f287e5560c x86/platform/uv: Add and export uv_bios_* functions
date:   12 months ago
config: x86_64-rhel-8.3-kselftests (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.4-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9a3c425cfdfee169622f1cb1a974b2f287e5560c
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 9a3c425cfdfee169622f1cb1a974b2f287e5560c
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/ drivers/ fs/ lib// net/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>


sparse warnings: (new ones prefixed by >>)
>> arch/x86/platform/uv/bios_uv.c:175:12: sparse: sparse: function 'uv_bios_get_master_nasid' with external linkage has definition
>> arch/x86/platform/uv/bios_uv.c:182:12: sparse: sparse: function 'uv_bios_get_heapsize' with external linkage has definition
>> arch/x86/platform/uv/bios_uv.c:189:12: sparse: sparse: function 'uv_bios_install_heap' with external linkage has definition
>> arch/x86/platform/uv/bios_uv.c:196:12: sparse: sparse: function 'uv_bios_obj_count' with external linkage has definition
>> arch/x86/platform/uv/bios_uv.c:203:12: sparse: sparse: function 'uv_bios_enum_objs' with external linkage has definition
>> arch/x86/platform/uv/bios_uv.c:210:12: sparse: sparse: function 'uv_bios_enum_ports' with external linkage has definition
>> arch/x86/platform/uv/bios_uv.c:217:12: sparse: sparse: function 'uv_bios_get_geoinfo' with external linkage has definition
>> arch/x86/platform/uv/bios_uv.c:223:12: sparse: sparse: function 'uv_bios_get_pci_topology' with external linkage has definition
   arch/x86/platform/uv/bios_uv.c:249:19: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct uv_systab *[addressable] [assigned] [toplevel] uv_systab @@     got void [noderef] __iomem * @@
   arch/x86/platform/uv/bios_uv.c:249:19: sparse:     expected struct uv_systab *[addressable] [assigned] [toplevel] uv_systab
   arch/x86/platform/uv/bios_uv.c:249:19: sparse:     got void [noderef] __iomem *
   arch/x86/platform/uv/bios_uv.c:252:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got struct uv_systab *[addressable] [assigned] [toplevel] uv_systab @@
   arch/x86/platform/uv/bios_uv.c:252:25: sparse:     expected void volatile [noderef] __iomem *addr
   arch/x86/platform/uv/bios_uv.c:252:25: sparse:     got struct uv_systab *[addressable] [assigned] [toplevel] uv_systab
   arch/x86/platform/uv/bios_uv.c:260:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got struct uv_systab *[addressable] [assigned] [toplevel] uv_systab @@
   arch/x86/platform/uv/bios_uv.c:260:25: sparse:     expected void volatile [noderef] __iomem *addr
   arch/x86/platform/uv/bios_uv.c:260:25: sparse:     got struct uv_systab *[addressable] [assigned] [toplevel] uv_systab
   arch/x86/platform/uv/bios_uv.c:261:27: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct uv_systab *[addressable] [assigned] [toplevel] uv_systab @@     got void [noderef] __iomem * @@
   arch/x86/platform/uv/bios_uv.c:261:27: sparse:     expected struct uv_systab *[addressable] [assigned] [toplevel] uv_systab
   arch/x86/platform/uv/bios_uv.c:261:27: sparse:     got void [noderef] __iomem *

vim +/uv_bios_get_master_nasid +175 arch/x86/platform/uv/bios_uv.c

   174	
 > 175	extern s64 uv_bios_get_master_nasid(u64 size, u64 *master_nasid)
   176	{
   177		return uv_bios_call(UV_BIOS_EXTRA, 0, UV_BIOS_EXTRA_MASTER_NASID, 0,
   178					size, (u64)master_nasid);
   179	}
   180	EXPORT_SYMBOL_GPL(uv_bios_get_master_nasid);
   181	
 > 182	extern s64 uv_bios_get_heapsize(u64 nasid, u64 size, u64 *heap_size)
   183	{
   184		return uv_bios_call(UV_BIOS_EXTRA, nasid, UV_BIOS_EXTRA_GET_HEAPSIZE,
   185					0, size, (u64)heap_size);
   186	}
   187	EXPORT_SYMBOL_GPL(uv_bios_get_heapsize);
   188	
 > 189	extern s64 uv_bios_install_heap(u64 nasid, u64 heap_size, u64 *bios_heap)
   190	{
   191		return uv_bios_call(UV_BIOS_EXTRA, nasid, UV_BIOS_EXTRA_INSTALL_HEAP,
   192					0, heap_size, (u64)bios_heap);
   193	}
   194	EXPORT_SYMBOL_GPL(uv_bios_install_heap);
   195	
 > 196	extern s64 uv_bios_obj_count(u64 nasid, u64 size, u64 *objcnt)
   197	{
   198		return uv_bios_call(UV_BIOS_EXTRA, nasid, UV_BIOS_EXTRA_OBJECT_COUNT,
   199					0, size, (u64)objcnt);
   200	}
   201	EXPORT_SYMBOL_GPL(uv_bios_obj_count);
   202	
 > 203	extern s64 uv_bios_enum_objs(u64 nasid, u64 size, u64 *objbuf)
   204	{
   205		return uv_bios_call(UV_BIOS_EXTRA, nasid, UV_BIOS_EXTRA_ENUM_OBJECTS,
   206					0, size, (u64)objbuf);
   207	}
   208	EXPORT_SYMBOL_GPL(uv_bios_enum_objs);
   209	
 > 210	extern s64 uv_bios_enum_ports(u64 nasid, u64 obj_id, u64 size, u64 *portbuf)
   211	{
   212		return uv_bios_call(UV_BIOS_EXTRA, nasid, UV_BIOS_EXTRA_ENUM_PORTS,
   213					obj_id, size, (u64)portbuf);
   214	}
   215	EXPORT_SYMBOL_GPL(uv_bios_enum_ports);
   216	
 > 217	extern s64 uv_bios_get_geoinfo(u64 nasid, u64 size, u64 *buf)
   218	{
   219		return uv_bios_call(UV_BIOS_GET_GEOINFO, nasid, (u64)buf, size, 0, 0);
   220	}
   221	EXPORT_SYMBOL_GPL(uv_bios_get_geoinfo);
   222	
 > 223	extern s64 uv_bios_get_pci_topology(u64 size, u64 *buf)
   224	{
   225		return uv_bios_call(UV_BIOS_GET_PCI_TOPOLOGY, (u64)buf, size, 0, 0, 0);
   226	}
   227	EXPORT_SYMBOL_GPL(uv_bios_get_pci_topology);
   228	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (40941 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ