Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1233882

Re: [PATCH 4/5] kernel/cpu.c: eliminate cpu_*_mask

From Rasmus Villemoes <linux@rasmusvillemoes.dk>
Newsgroups linux.kernel
Subject Re: [PATCH 4/5] kernel/cpu.c: eliminate cpu_*_mask
Date 2015-09-28 08:40 +0200
Message-ID <qdAgq-6c0-11@gated-at.bofh.it> (permalink)
References <qcFUS-VU-15@gated-at.bofh.it> <qdzNn-5Ey-7@gated-at.bofh.it>
Organization D03

Show all headers | View raw


On Mon, Sep 28 2015, kbuild test robot <lkp@intel.com> wrote:

> Hi Rasmus,
>
> [auto build test results on v4.3-rc2 -- if it's inappropriate base, please ignore]
>
> config: powerpc-allyesconfig (attached as .config)
> reproduce:
>   wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
>   chmod +x ~/bin/make.cross
>   git checkout c14fd9e74ebf7540e312ff440343f9843917ec66
>   # save the attached .config to linux build tree
>   make.cross ARCH=powerpc 
>
> All error/warnings (new ones prefixed by >>):
>
>    In file included from include/linux/rcupdate.h:40:0,
>                     from include/linux/idr.h:18,
>                     from include/linux/kernfs.h:14,
>                     from include/linux/sysfs.h:15,
>                     from include/linux/kobject.h:21,
>                     from include/linux/pci.h:28,
>                     from arch/powerpc/kernel/prom.c:25:
>>> include/linux/cpumask.h:93:29: error: expected identifier or '(' before 'const'
>     #define cpu_online_mask   ((const struct cpumask *)&__cpu_online_mask)
>                                 ^

Gah, I didn't check for struct members called cpu_online_mask :(

PPC people: The issue is that I changed cpu_online_mask (and friends)
from being "const struct cpumask *const" exported variables to macros
with the same type and value (after exporting what they pointed to). But
that conflicts with that identifier used in struct
fadump_crash_info_header. Would you be ok with renaming that member to
just "online_mask"? I think it would be

Subject: [PATCH] ppc: rename cpu_online_mask member of struct
 fadump_crash_info_header

As preparation for eliminating the indirect access to the various
global cpu_xyz_bits bitmaps via the pointer variables cpu_xyz_mask,
rename the cpu_online_mask of struct fadump_crash_info_header to
simply online_mask, to allow cpu_online_mask to become a macro.

Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
---
 arch/powerpc/include/asm/fadump.h | 2 +-
 arch/powerpc/kernel/fadump.c      | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/powerpc/include/asm/fadump.h b/arch/powerpc/include/asm/fadump.h
index 493e72f64b35..b4407d0add27 100644
--- a/arch/powerpc/include/asm/fadump.h
+++ b/arch/powerpc/include/asm/fadump.h
@@ -191,7 +191,7 @@ struct fadump_crash_info_header {
 	u64		elfcorehdr_addr;
 	u32		crashing_cpu;
 	struct pt_regs	regs;
-	struct cpumask	cpu_online_mask;
+	struct cpumask	online_mask;
 };
 
 /* Crash memory ranges */
diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c
index 26d091a1a54c..3cb3b02a13dd 100644
--- a/arch/powerpc/kernel/fadump.c
+++ b/arch/powerpc/kernel/fadump.c
@@ -415,7 +415,7 @@ void crash_fadump(struct pt_regs *regs, const char *str)
 	else
 		ppc_save_regs(&fdh->regs);
 
-	fdh->cpu_online_mask = *cpu_online_mask;
+	fdh->online_mask = *cpu_online_mask;
 
 	/* Call ibm,os-term rtas call to trigger firmware assisted dump */
 	rtas_os_term((char *)str);
@@ -646,7 +646,7 @@ static int __init fadump_build_cpu_notes(const struct fadump_mem_struct *fdm)
 		}
 		/* Lower 4 bytes of reg_value contains logical cpu id */
 		cpu = be64_to_cpu(reg_entry->reg_value) & FADUMP_CPU_ID_MASK;
-		if (fdh && !cpumask_test_cpu(cpu, &fdh->cpu_online_mask)) {
+		if (fdh && !cpumask_test_cpu(cpu, &fdh->online_mask)) {
 			SKIP_TO_NEXT_CPU(reg_entry);
 			continue;
 		}
-- 
2.1.3


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH 4/5] kernel/cpu.c: eliminate cpu_*_mask Rasmus Villemoes <linux@rasmusvillemoes.dk> - 2015-09-25 20:30 +0200
  Re: [PATCH 4/5] kernel/cpu.c: eliminate cpu_*_mask Rasmus Villemoes <linux@rasmusvillemoes.dk> - 2015-09-28 08:40 +0200

csiph-web