linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 6.2 073/211] swiotlb: mark swiotlb_memblock_alloc() as __init
       [not found] <20230310133718.689332661@linuxfoundation.org>
@ 2023-03-10 13:37 ` Greg Kroah-Hartman
  2023-03-14  8:54   ` Alexey Kardashevskiy
  0 siblings, 1 reply; 3+ messages in thread
From: Greg Kroah-Hartman @ 2023-03-10 13:37 UTC (permalink / raw)
  To: stable
  Cc: Greg Kroah-Hartman, patches, Randy Dunlap, Alexey Kardashevskiy,
	Christoph Hellwig, iommu, Mike Rapoport, linux-mm, Sasha Levin

From: Randy Dunlap <rdunlap@infradead.org>

[ Upstream commit 9b07d27d0fbb7f7441aa986859a0f53ec93a0335 ]

swiotlb_memblock_alloc() calls memblock_alloc(), which calls
(__init) memblock_alloc_try_nid(). However, swiotlb_membloc_alloc()
can be marked as __init since it is only called by swiotlb_init_remap(),
which is already marked as __init. This prevents a modpost build
warning/error:

WARNING: modpost: vmlinux.o: section mismatch in reference: swiotlb_memblock_alloc (section: .text) -> memblock_alloc_try_nid (section: .init.text)
WARNING: modpost: vmlinux.o: section mismatch in reference: swiotlb_memblock_alloc (section: .text) -> memblock_alloc_try_nid (section: .init.text)

This fixes the build warning/error seen on ARM64, PPC64, S390, i386,
and x86_64.

Fixes: 8d58aa484920 ("swiotlb: reduce the swiotlb buffer size on allocation failure")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Cc: Alexey Kardashevskiy <aik@amd.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: iommu@lists.linux.dev
Cc: Mike Rapoport <rppt@kernel.org>
Cc: linux-mm@kvack.org
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 kernel/dma/swiotlb.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
index a34c38bbe28f1..ef3bc3a5bbed3 100644
--- a/kernel/dma/swiotlb.c
+++ b/kernel/dma/swiotlb.c
@@ -300,7 +300,8 @@ static void swiotlb_init_io_tlb_mem(struct io_tlb_mem *mem, phys_addr_t start,
 	return;
 }
 
-static void *swiotlb_memblock_alloc(unsigned long nslabs, unsigned int flags,
+static void __init *swiotlb_memblock_alloc(unsigned long nslabs,
+		unsigned int flags,
 		int (*remap)(void *tlb, unsigned long nslabs))
 {
 	size_t bytes = PAGE_ALIGN(nslabs << IO_TLB_SHIFT);
-- 
2.39.2





^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH 6.2 073/211] swiotlb: mark swiotlb_memblock_alloc() as __init
  2023-03-10 13:37 ` [PATCH 6.2 073/211] swiotlb: mark swiotlb_memblock_alloc() as __init Greg Kroah-Hartman
@ 2023-03-14  8:54   ` Alexey Kardashevskiy
  2023-03-15  4:41     ` Randy Dunlap
  0 siblings, 1 reply; 3+ messages in thread
From: Alexey Kardashevskiy @ 2023-03-14  8:54 UTC (permalink / raw)
  To: Randy Dunlap
  Cc: patches, Christoph Hellwig, iommu, Mike Rapoport, linux-mm,
	Sasha Levin, Greg Kroah-Hartman, stable



On 11/3/23 00:37, Greg Kroah-Hartman wrote:
> From: Randy Dunlap <rdunlap@infradead.org>
> 
> [ Upstream commit 9b07d27d0fbb7f7441aa986859a0f53ec93a0335 ]
> 
> swiotlb_memblock_alloc() calls memblock_alloc(), which calls
> (__init) memblock_alloc_try_nid(). However, swiotlb_membloc_alloc()
> can be marked as __init since it is only called by swiotlb_init_remap(),
> which is already marked as __init. This prevents a modpost build
> warning/error:
> 
> WARNING: modpost: vmlinux.o: section mismatch in reference: swiotlb_memblock_alloc (section: .text) -> memblock_alloc_try_nid (section: .init.text)
> WARNING: modpost: vmlinux.o: section mismatch in reference: swiotlb_memblock_alloc (section: .text) -> memblock_alloc_try_nid (section: .init.text)
> 
> This fixes the build warning/error seen on ARM64, PPC64, S390, i386,
> and x86_64.

Did you do something special in your config to get these warnings? Or it 
is your toolchain? I tested with whatever comes with Ubuntu2210 and 
Fedora36 and neither printed the warning and I want to see those :-/ Thanks,


> 
> Fixes: 8d58aa484920 ("swiotlb: reduce the swiotlb buffer size on allocation failure")
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Cc: Alexey Kardashevskiy <aik@amd.com>
> Cc: Christoph Hellwig <hch@lst.de>
> Cc: iommu@lists.linux.dev
> Cc: Mike Rapoport <rppt@kernel.org>
> Cc: linux-mm@kvack.org
> Signed-off-by: Christoph Hellwig <hch@lst.de>
> Signed-off-by: Sasha Levin <sashal@kernel.org>
> ---
>   kernel/dma/swiotlb.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
> index a34c38bbe28f1..ef3bc3a5bbed3 100644
> --- a/kernel/dma/swiotlb.c
> +++ b/kernel/dma/swiotlb.c
> @@ -300,7 +300,8 @@ static void swiotlb_init_io_tlb_mem(struct io_tlb_mem *mem, phys_addr_t start,
>   	return;
>   }
>   
> -static void *swiotlb_memblock_alloc(unsigned long nslabs, unsigned int flags,
> +static void __init *swiotlb_memblock_alloc(unsigned long nslabs,
> +		unsigned int flags,
>   		int (*remap)(void *tlb, unsigned long nslabs))
>   {
>   	size_t bytes = PAGE_ALIGN(nslabs << IO_TLB_SHIFT);

-- 
Alexey


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH 6.2 073/211] swiotlb: mark swiotlb_memblock_alloc() as __init
  2023-03-14  8:54   ` Alexey Kardashevskiy
@ 2023-03-15  4:41     ` Randy Dunlap
  0 siblings, 0 replies; 3+ messages in thread
From: Randy Dunlap @ 2023-03-15  4:41 UTC (permalink / raw)
  To: Alexey Kardashevskiy
  Cc: patches, Christoph Hellwig, iommu, Mike Rapoport, linux-mm,
	Sasha Levin, Greg Kroah-Hartman, stable

Hi,

On 3/14/23 01:54, Alexey Kardashevskiy wrote:
> 
> 
> On 11/3/23 00:37, Greg Kroah-Hartman wrote:
>> From: Randy Dunlap <rdunlap@infradead.org>
>>
>> [ Upstream commit 9b07d27d0fbb7f7441aa986859a0f53ec93a0335 ]
>>
>> swiotlb_memblock_alloc() calls memblock_alloc(), which calls
>> (__init) memblock_alloc_try_nid(). However, swiotlb_membloc_alloc()
>> can be marked as __init since it is only called by swiotlb_init_remap(),
>> which is already marked as __init. This prevents a modpost build
>> warning/error:
>>
>> WARNING: modpost: vmlinux.o: section mismatch in reference: swiotlb_memblock_alloc (section: .text) -> memblock_alloc_try_nid (section: .init.text)
>> WARNING: modpost: vmlinux.o: section mismatch in reference: swiotlb_memblock_alloc (section: .text) -> memblock_alloc_try_nid (section: .init.text)
>>
>> This fixes the build warning/error seen on ARM64, PPC64, S390, i386,
>> and x86_64.
> 
> Did you do something special in your config to get these warnings? Or it is your toolchain? I tested with whatever comes with Ubuntu2210 and Fedora36 and neither printed the warning and I want to see those :-/ Thanks,
> 

I have no idea how I got these build warnings.  I am using gcc-12.2.0.
I don't know what .config file settings that I used.

I just tried about 6 different ARCH builds without this patch applied and I
cannot recreate the build warnings/errors.

Sorry I couldn't help you with this.

> 
>>
>> Fixes: 8d58aa484920 ("swiotlb: reduce the swiotlb buffer size on allocation failure")
>> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
>> Cc: Alexey Kardashevskiy <aik@amd.com>
>> Cc: Christoph Hellwig <hch@lst.de>
>> Cc: iommu@lists.linux.dev
>> Cc: Mike Rapoport <rppt@kernel.org>
>> Cc: linux-mm@kvack.org
>> Signed-off-by: Christoph Hellwig <hch@lst.de>
>> Signed-off-by: Sasha Levin <sashal@kernel.org>
>> ---
>>   kernel/dma/swiotlb.c | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
>> index a34c38bbe28f1..ef3bc3a5bbed3 100644
>> --- a/kernel/dma/swiotlb.c
>> +++ b/kernel/dma/swiotlb.c
>> @@ -300,7 +300,8 @@ static void swiotlb_init_io_tlb_mem(struct io_tlb_mem *mem, phys_addr_t start,
>>       return;
>>   }
>>   -static void *swiotlb_memblock_alloc(unsigned long nslabs, unsigned int flags,
>> +static void __init *swiotlb_memblock_alloc(unsigned long nslabs,
>> +        unsigned int flags,
>>           int (*remap)(void *tlb, unsigned long nslabs))
>>   {
>>       size_t bytes = PAGE_ALIGN(nslabs << IO_TLB_SHIFT);
> 

-- 
~Randy


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-03-15  4:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20230310133718.689332661@linuxfoundation.org>
2023-03-10 13:37 ` [PATCH 6.2 073/211] swiotlb: mark swiotlb_memblock_alloc() as __init Greg Kroah-Hartman
2023-03-14  8:54   ` Alexey Kardashevskiy
2023-03-15  4:41     ` Randy Dunlap

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox