[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [RFC PATCH 3/4] xen/arm: Sanitize cpuinfo ID registers fields
Hi Julien […] >> >> + >> + if ( old_reg != new_reg ) >> + printk(XENLOG_DEBUG "SANITY DIF: %s 0x%"PRIx64" -> 0x%"PRIx64"\n", >> + reg_name, old_reg, new_reg); >> + if ( old_reg != *cur_reg ) >> + printk(XENLOG_DEBUG "SANITY FIX: %s 0x%"PRIx64" -> 0x%"PRIx64"\n", >> + reg_name, old_reg, *cur_reg); >> + >> + if ( taint ) >> + { >> + printk(XENLOG_WARNING "SANITY CHECK: Unexpected variation in %s.\n", >> + reg_name); >> + add_taint(TAINT_CPU_OUT_OF_SPEC); >> + } >> +} >> + >> + >> +/* >> + * This function should be called on secondary cores to sanitize the boot >> cpu >> + * cpuinfo. > > Can we renamed boot_cpu_data to system_cpuinfo (or something similar)? This > would make clear this is not only the features for the boot CPU? While looking at this request, I checked a bit how boot_cpu_data and cpu_data overall are used: - boot_cpu_data is only used in setup.c, by boot_cpu_features macros, in smpboot to retrieve the bootcpu midr, in p2m and by cpufeatures - cpu_data[] is used in smpboot, in errata handling to test for csv2, and in vcpreg to access the midr So we have a bunch of cpuinfo structures as global variables but most of them are not really used or did I miss something ? So I am wondering if we should not reduce a bit the amount of global data and: - introduce a global system_cpuinfo - remove cpu_data[] and use a temp structure in the stack of the cpu booting - read midr directly in vcpreg - use boot_cpu_data in errata for csv2 - use system_cpuinfo in p2m It could even be possible to remove boot_cpu_data and put it on the stack of the boot cpu and only use system_cpuinfo but I did not investigate this. Cheers Bertrand
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |