Re: [PATCH] mm: Provide consistent declaration for num_poisoned_pages

From: David Rientjes
Date: Mon Feb 26 2018 - 18:57:39 EST


On Mon, 26 Feb 2018, Guenter Roeck wrote:

> clang reports the following compile warning.
>
> In file included from mm/vmscan.c:56:
> ./include/linux/swapops.h:327:22: warning:
> section attribute is specified on redeclared variable [-Wsection]
> extern atomic_long_t num_poisoned_pages __read_mostly;
> ^
> ./include/linux/mm.h:2585:22: note: previous declaration is here
> extern atomic_long_t num_poisoned_pages;
> ^
>
> Let's use __read_mostly everywhere.
>
> Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> Cc: Matthias Kaehlcke <mka@xxxxxxxxxxxx>
> ---
> include/linux/mm.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/mm.h b/include/linux/mm.h
> index ad06d42adb1a..bd4bd59f02c1 100644
> --- a/include/linux/mm.h
> +++ b/include/linux/mm.h
> @@ -2582,7 +2582,7 @@ extern int get_hwpoison_page(struct page *page);
> extern int sysctl_memory_failure_early_kill;
> extern int sysctl_memory_failure_recovery;
> extern void shake_page(struct page *p, int access);
> -extern atomic_long_t num_poisoned_pages;
> +extern atomic_long_t num_poisoned_pages __read_mostly;
> extern int soft_offline_page(struct page *page, int flags);
>
>

No objection to the patch, of course, but I'm wondering if it's (1) the
only such clang compile warning for mm/, and (2) if the re-declaration in
mm.h could be avoided by including swapops.h?