2021-07-26 13:10:38

by Jason Wang

[permalink] [raw]
Subject: [PATCH] x86/mm: use WARN_ONCE

printk + WARN_ON_ONCE can be just WARN_ONCE.

Signed-off-by: Jason Wang <[email protected]>
---
arch/x86/mm/ioremap.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c
index 60ade7dd71bd..3e57035ef9e3 100644
--- a/arch/x86/mm/ioremap.c
+++ b/arch/x86/mm/ioremap.c
@@ -195,9 +195,8 @@ __ioremap_caller(resource_size_t phys_addr, unsigned long size,
return NULL;

if (!phys_addr_valid(phys_addr)) {
- printk(KERN_WARNING "ioremap: invalid physical address %llx\n",
- (unsigned long long)phys_addr);
- WARN_ON_ONCE(1);
+ WARN_ONCE(1, "ioremap: invalid physical address %llx\n",
+ (unsigned long long)phys_addr);
return NULL;
}

--
2.32.0


2021-07-26 20:21:21

by Andy Lutomirski

[permalink] [raw]
Subject: Re: [PATCH] x86/mm: use WARN_ONCE

On 7/26/21 6:08 AM, Jason Wang wrote:
> printk + WARN_ON_ONCE can be just WARN_ONCE.
>
> Signed-off-by: Jason Wang <[email protected]>
> ---
> arch/x86/mm/ioremap.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c
> index 60ade7dd71bd..3e57035ef9e3 100644
> --- a/arch/x86/mm/ioremap.c
> +++ b/arch/x86/mm/ioremap.c
> @@ -195,9 +195,8 @@ __ioremap_caller(resource_size_t phys_addr, unsigned long size,
> return NULL;
>
> if (!phys_addr_valid(phys_addr)) {
> - printk(KERN_WARNING "ioremap: invalid physical address %llx\n",
> - (unsigned long long)phys_addr);
> - WARN_ON_ONCE(1);
> + WARN_ONCE(1, "ioremap: invalid physical address %llx\n",
> + (unsigned long long)phys_addr);
> return NULL;
> }
>
>

This isn't a no-op change. Before, it would KERN_WARNING once per event
and dump a trace once. Now it will only print anything at all once.