2022-06-30 18:02:50

by Jane Chu

[permalink] [raw]
Subject: [PATCH] pmem: fix a name collision

Kernel test robot detected name collision when compiled on 'um'
architecture. Rename "to_phys()" to "_to_phys()".

>> drivers/nvdimm/pmem.c:48:20: error: conflicting types for 'to_phys'; have 'phys_addr_t(struct pmem_device *, phys_addr_t)' {aka 'long long unsigned int(struct pmem_device *, long long unsigned int)'}
48 | static phys_addr_t to_phys(struct pmem_device *pmem, phys_addr_t offset)
| ^~~~~~~
In file included from arch/um/include/asm/page.h:98,
from arch/um/include/asm/thread_info.h:15,
from include/linux/thread_info.h:60,
from include/asm-generic/preempt.h:5,
from ./arch/um/include/generated/asm/preempt.h:1,

arch/um/include/shared/mem.h:12:29: note: previous definition of 'to_phys' with type 'long unsigned int(void *)'
12 | static inline unsigned long to_phys(void *virt)
| ^~~~~~~

vim +48 drivers/nvdimm/pmem.c
47
> 48 static phys_addr_t to_phys(struct pmem_device *pmem, phys_addr_t offset)
49 {
50 return pmem->phys_addr + offset;
51 }
52

Fixes: 9409c9b6709e (pmem: refactor pmem_clear_poison())
Reported-by: kernel test robot <[email protected]>
Signed-off-by: Jane Chu <[email protected]>
---
drivers/nvdimm/pmem.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/nvdimm/pmem.c b/drivers/nvdimm/pmem.c
index 629d10fcf53b..26c81ed7c0fe 100644
--- a/drivers/nvdimm/pmem.c
+++ b/drivers/nvdimm/pmem.c
@@ -45,7 +45,7 @@ static struct nd_region *to_region(struct pmem_device *pmem)
return to_nd_region(to_dev(pmem)->parent);
}

-static phys_addr_t to_phys(struct pmem_device *pmem, phys_addr_t offset)
+static phys_addr_t _to_phys(struct pmem_device *pmem, phys_addr_t offset)
{
return pmem->phys_addr + offset;
}
@@ -63,7 +63,7 @@ static phys_addr_t to_offset(struct pmem_device *pmem, sector_t sector)
static void pmem_mkpage_present(struct pmem_device *pmem, phys_addr_t offset,
unsigned int len)
{
- phys_addr_t phys = to_phys(pmem, offset);
+ phys_addr_t phys = _to_phys(pmem, offset);
unsigned long pfn_start, pfn_end, pfn;

/* only pmem in the linear map supports HWPoison */
@@ -97,7 +97,7 @@ static void pmem_clear_bb(struct pmem_device *pmem, sector_t sector, long blks)
static long __pmem_clear_poison(struct pmem_device *pmem,
phys_addr_t offset, unsigned int len)
{
- phys_addr_t phys = to_phys(pmem, offset);
+ phys_addr_t phys = _to_phys(pmem, offset);
long cleared = nvdimm_clear_poison(to_dev(pmem), phys, len);

if (cleared > 0) {
--
2.18.4


2022-06-30 18:13:46

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH] pmem: fix a name collision

On Thu, Jun 30, 2022 at 11:51:55AM -0600, Jane Chu wrote:
> -static phys_addr_t to_phys(struct pmem_device *pmem, phys_addr_t offset)
> +static phys_addr_t _to_phys(struct pmem_device *pmem, phys_addr_t offset)

I'd rather call this pmem_to_phys as that is a much nicer name.

2022-06-30 18:23:19

by Jane Chu

[permalink] [raw]
Subject: Re: [PATCH] pmem: fix a name collision

On 6/30/2022 11:04 AM, Christoph Hellwig wrote:
> On Thu, Jun 30, 2022 at 11:51:55AM -0600, Jane Chu wrote:
>> -static phys_addr_t to_phys(struct pmem_device *pmem, phys_addr_t offset)
>> +static phys_addr_t _to_phys(struct pmem_device *pmem, phys_addr_t offset)
>
> I'd rather call this pmem_to_phys as that is a much nicer name.

Okay, thanks!

-jane