[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] common: clean up taint logic
On 09/08/16 11:39, Jan Beulich wrote: > Drop unused UNSAFE_SMP and BAD_PAGE flags. Style adjstments. > > Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> > > --- a/xen/common/kernel.c > +++ b/xen/common/kernel.c > @@ -22,8 +22,6 @@ > > enum system_state system_state = SYS_STATE_early_boot; > > -int tainted; > - > xen_commandline_t saved_cmdline; > > static void __init assign_integer_param( > @@ -168,14 +166,15 @@ int __init parse_bool(const char *s) > return -1; > } > > +unsigned int tainted; > + > /** > * print_tainted - return a string to represent the kernel taint state. > * > - * 'S' - SMP with CPUs not designed for SMP. > - * 'M' - Machine had a machine check experience. > - * 'B' - System has hit bad_page. > * 'C' - Console output is synchronous. > + * 'E' - An error (e.g. a machine check exceptions) has been injected. > * 'H' - HVM forced emulation prefix is permitted. > + * 'M' - Machine had a machine check experience. The wording here seems to imply that M -> E; but I don't see anything which adds ERROR_INJECT. Are you planning on adding this at some point in the future? -George > * > * The string is overwritten by the next call to print_taint(). > */ > @@ -183,11 +182,10 @@ char *print_tainted(char *str) > { > if ( tainted ) > { > - snprintf(str, TAINT_STRING_MAX_LEN, "Tainted: %c%c%c%c%c", > - tainted & TAINT_UNSAFE_SMP ? 'S' : ' ', > + snprintf(str, TAINT_STRING_MAX_LEN, "Tainted: %c%c%c%c", > tainted & TAINT_MACHINE_CHECK ? 'M' : ' ', > - tainted & TAINT_BAD_PAGE ? 'B' : ' ', > tainted & TAINT_SYNC_CONSOLE ? 'C' : ' ', > + tainted & TAINT_ERROR_INJECT ? 'E' : ' ', > tainted & TAINT_HVM_FEP ? 'H' : ' '); > } > else > @@ -198,7 +196,7 @@ char *print_tainted(char *str) > return str; > } > > -void add_taint(unsigned flag) > +void add_taint(unsigned int flag) > { > tainted |= flag; > } > --- a/xen/include/xen/lib.h > +++ b/xen/include/xen/lib.h > @@ -137,16 +137,14 @@ unsigned long long parse_size_and_unit(c > > uint64_t muldiv64(uint64_t a, uint32_t b, uint32_t c); > > -#define TAINT_UNSAFE_SMP (1<<0) > -#define TAINT_MACHINE_CHECK (1<<1) > -#define TAINT_BAD_PAGE (1<<2) > -#define TAINT_SYNC_CONSOLE (1<<3) > -#define TAINT_ERROR_INJECT (1<<4) > -#define TAINT_HVM_FEP (1<<5) > -extern int tainted; > +#define TAINT_SYNC_CONSOLE (1u << 0) > +#define TAINT_MACHINE_CHECK (1u << 1) > +#define TAINT_ERROR_INJECT (1u << 2) > +#define TAINT_HVM_FEP (1u << 3) > +extern unsigned int tainted; > #define TAINT_STRING_MAX_LEN 20 > extern char *print_tainted(char *str); > -extern void add_taint(unsigned); > +extern void add_taint(unsigned int taint); > > struct cpu_user_regs; > void dump_execstate(struct cpu_user_regs *); > > > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |