Skip to contentSkip to conversation

ARM: mm/alignment.c: Fix build breakage when CONFIG_PROC_FS is not selected

PATCH New Bjarne Steinsbo 2 participants 4 messages Aug 14, 2011 – Aug 15, 2011 Arm (32-bit)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ARM: mm/alignment.c: Fix build breakage when CONFIG_PROC_FS is not selected

Compiling mm/alignment.c without CONFIG_PROC_FS selected fails with undefined cpu_is_v6_unaligned() and safe_usermode().

Move #ifdef CONFIG_PROC_FS, including definition of usermode_action[], further down to avoid this problem.

---
 arch/arm/mm/alignment.c |   20 ++++++++++----------
 1 files changed, 10 insertions(+), 10 deletions(-)
arch/arm/mm/alignment.c +10 -10
index cfbcf8b..c335c76 100644
@@ -86,16 +86,6 @@ core_param(alignment, ai_usermode, int, 0600);
 #define UM_FIXUP	(1 << 1)
 #define UM_SIGNAL	(1 << 2)
 
-#ifdef CONFIG_PROC_FS
-static const char *usermode_action[] = {
-	"ignored",
-	"warn",
-	"fixup",
-	"fixup+warn",
-	"signal",
-	"signal+warn"
-};
-
 /* Return true if and only if the ARMv6 unaligned access model is in use. */
 static bool cpu_is_v6_unaligned(void)
 {
@@ -123,6 +113,16 @@ static int safe_usermode(int new_usermode, bool warn)
 	return new_usermode;
 }
 
+#ifdef CONFIG_PROC_FS
+static const char *usermode_action[] = {
+	"ignored",
+	"warn",
+	"fixup",
+	"fixup+warn",
+	"signal",
+	"signal+warn"
+};
+
 static int alignment_proc_show(struct seq_file *m, void *v)
 {
 	seq_printf(m, "User:\t\t%lu\n", ai_user);
Signature · 1 line
1.7.1
#1 lore raw

PATCH 1/1 ARM: mm/alignment.c: Fix build breakage when CONFIG_PROC_FS is not selected

Quoted 5 lines · Bjarne Steinsbo

Compiling mm/alignment.c without CONFIG_PROC_FS selected fails with undefined cpu_is_v6_unaligned() and safe_usermode().

Move #ifdef CONFIG_PROC_FS, including definition of usermode_action[], further down to avoid this problem.

Those two functions were never supposed to be inside the #ifdef -- my bad. Thanks for spotting it.

Alternatively, it may be tidier to move cpu_is_v6_unaligned() and safe_usermode() alongside the other static functions, just before do_alignment_finish_ldst().

I leave it up to you to decide whether you prefer that; either fix is valid.

Cheers
---Dave

Quoted 52 lines
---
 arch/arm/mm/alignment.c |   20 ++++++++++----------
 1 files changed, 10 insertions(+), 10 deletions(-)
arch/arm/mm/alignment.c +10 -10
index cfbcf8b..c335c76 100644
@@ -86,16 +86,6 @@ core_param(alignment, ai_usermode, int, 0600);
 #define UM_FIXUP	(1 << 1)
 #define UM_SIGNAL	(1 << 2)
 
-#ifdef CONFIG_PROC_FS
-static const char *usermode_action[] = {
-	"ignored",
-	"warn",
-	"fixup",
-	"fixup+warn",
-	"signal",
-	"signal+warn"
-};
-
 /* Return true if and only if the ARMv6 unaligned access model is in use. */
 static bool cpu_is_v6_unaligned(void)
 {
@@ -123,6 +113,16 @@ static int safe_usermode(int new_usermode, bool warn)
 	return new_usermode;
 }
 
+#ifdef CONFIG_PROC_FS
+static const char *usermode_action[] = {
+	"ignored",
+	"warn",
+	"fixup",
+	"fixup+warn",
+	"signal",
+	"signal+warn"
+};
+
 static int alignment_proc_show(struct seq_file *m, void *v)
 {
 	seq_printf(m, "User:\t\t%lu\n", ai_user);
Signature · 6 lines
1.7.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
#2 lore raw

PATCH 1/1 ARM: mm/alignment.c: Fix build breakage when CONFIG_PROC_FS is not selected

Dave,

If it's up to me, I would say leave it as it is. I'm all for changing the code to logically group similar functions, but I feel that should be a different patch. One for you, maybe?

BR,

Bjarne Steinsbo

a) That would produce a bigger patch, and
b) Moving code around to logically group similar functions is a different patch

Quoted 75 lines · Dave Martin
Quoted 5 lines · Bjarne Steinsbo

Compiling mm/alignment.c without CONFIG_PROC_FS selected fails with undefined cpu_is_v6_unaligned() and safe_usermode().

Move #ifdef CONFIG_PROC_FS, including definition of usermode_action[], further down to avoid this problem.

Those two functions were never supposed to be inside the #ifdef -- my bad. ?Thanks for spotting it.

Alternatively, it may be tidier to move cpu_is_v6_unaligned() and safe_usermode() alongside the other static functions, just before do_alignment_finish_ldst().

I leave it up to you to decide whether you prefer that; either fix is valid.

Cheers
---Dave

Quoted 52 lines

---
?arch/arm/mm/alignment.c | ? 20 ++++++++++---------- ?1 files changed, 10 insertions(+), 10 deletions(-)

arch/arm/mm/alignment.c +0 -10
index cfbcf8b..c335c76 100644
@@ -86,16 +86,6 @@ core_param(alignment, ai_usermode, int, 0600);
 ?#define UM_FIXUP ? ? (1 << 1)
 ?#define UM_SIGNAL ? ?(1 << 2)
 
-#ifdef CONFIG_PROC_FS
-static const char *usermode_action[] = {
- ? ? "ignored",
- ? ? "warn",
- ? ? "fixup",
- ? ? "fixup+warn",
- ? ? "signal",
- ? ? "signal+warn"
-};
-

?/* Return true if and only if the ARMv6 unaligned access model is in use. */ ?static bool cpu_is_v6_unaligned(void)
?{

arch/arm/mm/alignment.c +10 -1
@@ -123,6 +113,16 @@ static int safe_usermode(int new_usermode, bool warn)
 ? ? ? return new_usermode;
 ?}
 
+#ifdef CONFIG_PROC_FS
+static const char *usermode_action[] = {
+ ? ? "ignored",
+ ? ? "warn",
+ ? ? "fixup",
+ ? ? "fixup+warn",
+ ? ? "signal",
+ ? ? "signal+warn"
+};
+
 ?static int alignment_proc_show(struct seq_file *m, void *v)
 ?{
 ? ? ? seq_printf(m, "User:\t\t%lu\n", ai_user);
--

1.7.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

#3 lore raw

PATCH 1/1 ARM: mm/alignment.c: Fix build breakage when CONFIG_PROC_FS is not selected

Quoted 5 lines · Bjarne Steinsbo

Dave,

If it's up to me, I would say leave it as it is. ?I'm all for changing the code to logically group similar functions, but I feel that should be a different patch. ?One for you, maybe?

I'm happy either way, so let's go with your smaller patch.

I won't post an extra patch to move the functions unless I do some future work on that file. I think that a cosmetic thing like this doesn't really merit an extra patch for now.

Thanks again
---Dave

Quoted 85 lines

BR,

Bjarne Steinsbo

a) That would produce a bigger patch, and
b) Moving code around to logically group similar functions is a different patch

Quoted 75 lines · Dave Martin
Quoted 5 lines · Bjarne Steinsbo

Compiling mm/alignment.c without CONFIG_PROC_FS selected fails with undefined cpu_is_v6_unaligned() and safe_usermode().

Move #ifdef CONFIG_PROC_FS, including definition of usermode_action[], further down to avoid this problem.

Those two functions were never supposed to be inside the #ifdef -- my bad. ?Thanks for spotting it.

Alternatively, it may be tidier to move cpu_is_v6_unaligned() and safe_usermode() alongside the other static functions, just before do_alignment_finish_ldst().

I leave it up to you to decide whether you prefer that; either fix is valid.

Cheers
---Dave

Quoted 52 lines

---
?arch/arm/mm/alignment.c | ? 20 ++++++++++---------- ?1 files changed, 10 insertions(+), 10 deletions(-)

arch/arm/mm/alignment.c +0 -10
index cfbcf8b..c335c76 100644
@@ -86,16 +86,6 @@ core_param(alignment, ai_usermode, int, 0600);
 ?#define UM_FIXUP ? ? (1 << 1)
 ?#define UM_SIGNAL ? ?(1 << 2)
 
-#ifdef CONFIG_PROC_FS
-static const char *usermode_action[] = {
- ? ? "ignored",
- ? ? "warn",
- ? ? "fixup",
- ? ? "fixup+warn",
- ? ? "signal",
- ? ? "signal+warn"
-};
-

?/* Return true if and only if the ARMv6 unaligned access model is in use. */ ?static bool cpu_is_v6_unaligned(void)
?{

arch/arm/mm/alignment.c +10 -1
@@ -123,6 +113,16 @@ static int safe_usermode(int new_usermode, bool warn)
 ? ? ? return new_usermode;
 ?}
 
+#ifdef CONFIG_PROC_FS
+static const char *usermode_action[] = {
+ ? ? "ignored",
+ ? ? "warn",
+ ? ? "fixup",
+ ? ? "fixup+warn",
+ ? ? "signal",
+ ? ? "signal+warn"
+};
+
 ?static int alignment_proc_show(struct seq_file *m, void *v)
 ?{
 ? ? ? seq_printf(m, "User:\t\t%lu\n", ai_user);
--

1.7.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

Signature · 9 lines
Dave Martin <[email protected]>
Linaro Kernel Working Group

--
http://www.linaro.org/ -- Open source software for ARM SoCs

http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg
http://www.linaro.org/linaro-blog/