Re: [PATCH 1/2] i386: mce cleanup part1: functional change

Joerg Roedel
2007-10-09T16:06:50Z

On Tue, Oct 09, 2007 at 06:04:48PM +0200, Oleg Verych wrote:
> * Tue, 9 Oct 2007 14:49:55 +0200
>
> []
> > @@ -33,9 +33,20 @@ void fastcall (*machine_check_vector)(struct pt_regs *, long error_code) = unexp
> > /* This has to be run for each processor */
> > void mcheck_init(struct cpuinfo_x86 *c)
> > {
> > + uint32_t mca, mce;
> > +
> > if (mce_disabled==1)
> > return;
> >
> > + mca = cpu_has(c, X86_FEATURE_MCA);
> > + mce = cpu_has(c, X86_FEATURE_MCE);
> > +
> > + if (!mca || !mce) {
> > + printk(KERN_INFO "CPU%i: No machine check support available\n",
> > + smp_processor_id());
> > + return;
> > + }
> > +
>
> cpu_has() returns int,
> but would it be better to have something like
>
> if (!mce_disabled &&
> !(c->x86_capability & (X86_FEATURE_MCA | X86_FEATURE_MCE)) {
> printk(KERN_INFO "CPU%i: No machine check support available\n",
> smp_processor_id());

This looks complicated and is harder to read. Its exactly the purpose of the
cpu_has() macro to avoid such constructs.

> return;
> } else
> return;

Return unconditionaly here?

--
| AMD Saxony Limited Liability Company & Co. KG
Operating | Wilschdorfer Landstr. 101, 01109 Dresden, Germany
System | Register Court Dresden: HRA 4896
Research | General Partner authorized to represent:
Center | AMD Saxony LLC (Wilmington, Delaware, US)
| General Manager of AMD Saxony LLC: Dr. Hans-R. Deppe, Thomas McCoy