Re: [PATCH 2/6] arch/sparc: Define config parameter CPU_BIG_ENDIAN

2017-05-19 Thread Babu Moger


On 5/18/2017 9:26 PM, David Miller wrote:

From: Babu Moger 
Date: Thu, 18 May 2017 18:36:06 -0600


@@ -91,6 +91,10 @@ config ARCH_DEFCONFIG
  config ARCH_PROC_KCORE_TEXT
def_bool y
  
+config CPU_BIG_ENDIAN

+   bool
+   default y if SPARC64
+

32-bit sparc is big-endian too :-)

So please don't use SPARC64 for the setting, use plain SPARC instead.


Ok. Sure. Will do.


Re: [PATCH 2/6] arch/sparc: Define config parameter CPU_BIG_ENDIAN

2017-05-19 Thread Babu Moger


On 5/18/2017 9:26 PM, David Miller wrote:

From: Babu Moger 
Date: Thu, 18 May 2017 18:36:06 -0600


@@ -91,6 +91,10 @@ config ARCH_DEFCONFIG
  config ARCH_PROC_KCORE_TEXT
def_bool y
  
+config CPU_BIG_ENDIAN

+   bool
+   default y if SPARC64
+

32-bit sparc is big-endian too :-)

So please don't use SPARC64 for the setting, use plain SPARC instead.


Ok. Sure. Will do.


Re: [PATCH 2/6] arch/sparc: Define config parameter CPU_BIG_ENDIAN

2017-05-18 Thread David Miller
From: Babu Moger 
Date: Thu, 18 May 2017 18:36:06 -0600

> @@ -91,6 +91,10 @@ config ARCH_DEFCONFIG
>  config ARCH_PROC_KCORE_TEXT
>   def_bool y
>  
> +config CPU_BIG_ENDIAN
> + bool
> + default y if SPARC64
> +

32-bit sparc is big-endian too :-)

So please don't use SPARC64 for the setting, use plain SPARC instead.


Re: [PATCH 2/6] arch/sparc: Define config parameter CPU_BIG_ENDIAN

2017-05-18 Thread David Miller
From: Babu Moger 
Date: Thu, 18 May 2017 18:36:06 -0600

> @@ -91,6 +91,10 @@ config ARCH_DEFCONFIG
>  config ARCH_PROC_KCORE_TEXT
>   def_bool y
>  
> +config CPU_BIG_ENDIAN
> + bool
> + default y if SPARC64
> +

32-bit sparc is big-endian too :-)

So please don't use SPARC64 for the setting, use plain SPARC instead.


[PATCH 2/6] arch/sparc: Define config parameter CPU_BIG_ENDIAN

2017-05-18 Thread Babu Moger
Found this problem while enabling queued rwlock on SPARC.
The parameter CONFIG_CPU_BIG_ENDIAN is used to clear the
specific byte in qrwlock structure. Without this parameter,
we clear the wrong byte. Here is the code.

static inline u8 *__qrwlock_write_byte(struct qrwlock *lock)
 {
return (u8 *)lock + 3 * IS_BUILTIN(CONFIG_CPU_BIG_ENDIAN);
 }

Define CPU_BIG_ENDIAN for SPARC to fix it.

Signed-off-by: Babu Moger 
Reviewed-by: Håkon Bugge 
Reviewed-by: Jane Chu 
Reviewed-by: Shannon Nelson 
Reviewed-by: Vijay Kumar 
---
 arch/sparc/Kconfig |4 
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index a2ad946..8787fc4 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -91,6 +91,10 @@ config ARCH_DEFCONFIG
 config ARCH_PROC_KCORE_TEXT
def_bool y
 
+config CPU_BIG_ENDIAN
+   bool
+   default y if SPARC64
+
 config ARCH_ATU
bool
default y if SPARC64
-- 
1.7.1



[PATCH 2/6] arch/sparc: Define config parameter CPU_BIG_ENDIAN

2017-05-18 Thread Babu Moger
Found this problem while enabling queued rwlock on SPARC.
The parameter CONFIG_CPU_BIG_ENDIAN is used to clear the
specific byte in qrwlock structure. Without this parameter,
we clear the wrong byte. Here is the code.

static inline u8 *__qrwlock_write_byte(struct qrwlock *lock)
 {
return (u8 *)lock + 3 * IS_BUILTIN(CONFIG_CPU_BIG_ENDIAN);
 }

Define CPU_BIG_ENDIAN for SPARC to fix it.

Signed-off-by: Babu Moger 
Reviewed-by: Håkon Bugge 
Reviewed-by: Jane Chu 
Reviewed-by: Shannon Nelson 
Reviewed-by: Vijay Kumar 
---
 arch/sparc/Kconfig |4 
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index a2ad946..8787fc4 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -91,6 +91,10 @@ config ARCH_DEFCONFIG
 config ARCH_PROC_KCORE_TEXT
def_bool y
 
+config CPU_BIG_ENDIAN
+   bool
+   default y if SPARC64
+
 config ARCH_ATU
bool
default y if SPARC64
-- 
1.7.1