svn commit: r313343 - head/sys/arm/arm

Stanislav Galabov sgalabov at FreeBSD.org
Mon Feb 6 14:58:25 UTC 2017


Author: sgalabov
Date: Mon Feb  6 14:58:24 2017
New Revision: 313343
URL: https://svnweb.freebsd.org/changeset/base/313343

Log:
  sys/arm/arm/identcpu-v4.c: fix identify_arm_cpu()
  
  identify_arm_cpu() in sys/arm/arm/identcpu-v4.c incorrectly uses a
  u_int8_t variable to store the result of cpu_get_control().
  It should really use a u_int variable, the same way as done for cpu_ident()
  in the same function, as both cpuid and control registers are 32-bit..
  This issue causes users of identcpu-v4 to incorrectly report things such as
  icache status (bit 12 in cpu control register) and basically anything
  defined in bits above bit 7 :-)
  
  Reviewed by:	manu
  Sponsored by:	Smartcom - Bulgaria AD
  Differential Revision:	https://reviews.freebsd.org/D9460

Modified:
  head/sys/arm/arm/identcpu-v4.c

Modified: head/sys/arm/arm/identcpu-v4.c
==============================================================================
--- head/sys/arm/arm/identcpu-v4.c	Mon Feb  6 14:41:34 2017	(r313342)
+++ head/sys/arm/arm/identcpu-v4.c	Mon Feb  6 14:58:24 2017	(r313343)
@@ -294,8 +294,7 @@ u_int cpu_pfr(int num)
 void
 identify_arm_cpu(void)
 {
-	u_int cpuid;
-	u_int8_t ctrl;
+	u_int cpuid, ctrl;
 	int i;
 
 	ctrl = cpu_get_control();


More information about the svn-src-all mailing list