Skip to contentSkip to conversation

fix CPUID mask option handling

PATCH New Jan Beulich 1 participant 1 message Oct 15, 2008

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 fix CPUID mask option handling

c/s 18402 added command line options to AMD-specific code duplicating ones already existing in Intel code. The generic command line parser didn't support this scenario for integer options, however.

Additionally, the options added were using the same option string for two different purposes.

xen/arch/x86/cpu/amd.c +2 -2
Index: 2008-09-19/xen/arch/x86/cpu/amd.c
===================================================================
@@ -37,8 +37,8 @@ static unsigned int opt_cpuid_mask_ecx, 
 integer_param("cpuid_mask_ecx", opt_cpuid_mask_ecx);
 integer_param("cpuid_mask_edx", opt_cpuid_mask_edx);
 static unsigned int opt_cpuid_mask_ext_ecx, opt_cpuid_mask_ext_edx;
-integer_param("cpuid_mask_ecx", opt_cpuid_mask_ext_ecx);
-integer_param("cpuid_mask_edx", opt_cpuid_mask_ext_edx);
+integer_param("cpuid_mask_ext_ecx", opt_cpuid_mask_ext_ecx);
+integer_param("cpuid_mask_ext_edx", opt_cpuid_mask_ext_edx);
 
 static inline void wrmsr_amd(unsigned int index, unsigned int lo, 
 		unsigned int hi)
xen/common/kernel.c +1 -2
Index: 2008-09-19/xen/common/kernel.c
===================================================================
@@ -75,8 +75,7 @@ void cmdline_parse(char *cmdline)
                 strlcpy(param->var, optval, param->len);
                 break;
             case OPT_UINT:
-                *(unsigned int *)param->var =
-                    simple_strtol(optval, (const char **)&optval, 0);
+                *(unsigned int *)param->var = simple_strtol(optval, NULL, 0);
                 break;
             case OPT_BOOL:
             case OPT_INVBOOL: