[PATCH v4 15/17] x86/traps: Fixup general protection faults caused by UMIP

Ricardo Neri ricardo.neri-calderon at linux.intel.com
Thu Feb 23 16:15:44 CST 2017


On Thu, 2017-02-23 at 10:27 +0100, Peter Zijlstra wrote:
> On Wed, Feb 22, 2017 at 10:37:04PM -0800, Ricardo Neri wrote:
> > @@ -492,6 +493,9 @@ do_general_protection(struct pt_regs *regs, long error_code)
> >  	RCU_LOCKDEP_WARN(!rcu_is_watching(), "entry code didn't wake RCU");
> >  	cond_local_irq_enable(regs);
> >  
> > +	if (user_mode(regs) && (fixup_umip_exception(regs) == true))
> > +		return;
> 
> I'm thinking
> 
> 	if (user_mode(regs) && fixup_umip_exception(regs))
> 		return;
> 
> is actually easier to read.

In a previous version Andy Lutomirsky suggested that 
	if (user_mode(regs) && (fixup_umip_exception(regs) == 0))

was easier to read :). Although at the time fixup_umip_exception
returned a numeric value. Now it only returns true/false for
successful/failed emulation. If with true/false not comparing to true
makes it easier to read, I will make the change.

Thanks and BR,
Ricardo







More information about the wine-devel mailing list