lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 2 Feb 2013 22:20:36 +1100
From:	Stephen Rothwell <sfr@...b.auug.org.au>
To:	"Uwe Kleine-König" 
	<u.kleine-koenig@...gutronix.de>
Cc:	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
	Christoffer Dall <c.dall@...tualopensystems.com>,
	Will Deacon <will.deacon@....com>,
	Russell King <rmk@....linux.org.uk>
Subject: linux-next: manual merge of the cortex tree with the arm tree

Hi Uwe,

Today's linux-next merge of the cortex tree got a conflict in
arch/arm/include/asm/cputype.h between commit 59530adc3f1b ("ARM: Define
CPU part numbers and implementors") from the arm tree and commit
6ebd4d038dbb ("ARM: stub out read_cpuid and read_cpuid_ext for
CPU_CP15=n") from the cortex tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell                    sfr@...b.auug.org.au

diff --cc arch/arm/include/asm/cputype.h
index ad41ec2,574269e..0000000
--- a/arch/arm/include/asm/cputype.h
+++ b/arch/arm/include/asm/cputype.h
@@@ -59,30 -60,25 +60,43 @@@ extern unsigned int processor_id
  		    : "cc");						\
  		__val;							\
  	})
- #else
- #define read_cpuid(reg) (processor_id)
- #define read_cpuid_ext(reg) 0
- #endif
+ 
+ #else /* ifdef CONFIG_CPU_CP15 */
  
 +#define ARM_CPU_IMP_ARM			0x41
 +#define ARM_CPU_IMP_INTEL		0x69
 +
 +#define ARM_CPU_PART_ARM1136		0xB360
 +#define ARM_CPU_PART_ARM1156		0xB560
 +#define ARM_CPU_PART_ARM1176		0xB760
 +#define ARM_CPU_PART_ARM11MPCORE	0xB020
 +#define ARM_CPU_PART_CORTEX_A8		0xC080
 +#define ARM_CPU_PART_CORTEX_A9		0xC090
 +#define ARM_CPU_PART_CORTEX_A5		0xC050
 +#define ARM_CPU_PART_CORTEX_A15		0xC0F0
 +#define ARM_CPU_PART_CORTEX_A7		0xC070
 +
 +#define ARM_CPU_XSCALE_ARCH_MASK	0xe000
 +#define ARM_CPU_XSCALE_ARCH_V1		0x2000
 +#define ARM_CPU_XSCALE_ARCH_V2		0x4000
 +#define ARM_CPU_XSCALE_ARCH_V3		0x6000
 +
  /*
+  * read_cpuid and read_cpuid_ext should only ever be called on machines that
+  * have cp15 so warn on other usages.
+  */
+ #define read_cpuid(reg)							\
+ 	({								\
+ 		WARN_ON_ONCE(1);					\
+ 		0;							\
+ 	})
+ 
+ #define read_cpuid_ext(reg) read_cpuid(reg)
+ 
+ #endif /* ifdef CONFIG_CPU_CP15 / else */
+ 
+ #ifdef CONFIG_CPU_CP15
+ /*
   * The CPU ID never changes at run time, so we might as well tell the
   * compiler that it's constant.  Use this function to read the CPU ID
   * rather than directly reading processor_id or read_cpuid() directly.
@@@ -92,21 -88,15 +106,30 @@@ static inline unsigned int __attribute_
  	return read_cpuid(CPUID_ID);
  }
  
+ #else /* ifdef CONFIG_CPU_CP15 */
+ 
+ static inline unsigned int __attribute_const__ read_cpuid_id(void)
+ {
+ 	return processor_id;
+ }
+ 
+ #endif /* ifdef CONFIG_CPU_CP15 / else */
+ 
 +static inline unsigned int __attribute_const__ read_cpuid_implementor(void)
 +{
 +	return (read_cpuid_id() & 0xFF000000) >> 24;
 +}
 +
 +static inline unsigned int __attribute_const__ read_cpuid_part_number(void)
 +{
 +	return read_cpuid_id() & 0xFFF0;
 +}
 +
 +static inline unsigned int __attribute_const__ xscale_cpu_arch_version(void)
 +{
 +	return read_cpuid_part_number() & ARM_CPU_XSCALE_ARCH_MASK;
 +}
 +
  static inline unsigned int __attribute_const__ read_cpuid_cachetype(void)
  {
  	return read_cpuid(CPUID_CACHETYPE);

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ