[openib-general] [PATCH 28 of 39] IB/ipath - Fixes a bug where our delay for EEPROM no longer works due to compiler reordering

Ralph Campbell ralphc at pathscale.com
Fri Jul 14 11:59:25 PDT 2006


> > >  static void i2c_wait_for_writes(struct ipath_devdata *dd)
> > >  {
> > > +  mb();
> > >    (void)ipath_read_kreg32(dd, dd->ipath_kregs->kr_scratch);
> > >  }

> > That's a bit weird.  I wouldn't have expected the compiler to muck around
> > with a readl().

> I never liked this patch.  The last time it came up there were
> conflicting answers about whether it was a code generation bug or a
> real issue talking to hardware or what.  At the least I think this
> merits a big comment explain what's going on -- and even better would
> be really understanding the bug that's being fixed so that we're
> confident it is indeed a real fix.
> 
> - R.

I haven't been able to reproduce the bug with -Os even on the systems
where it used to fail so I guess this is a non-issue.
Please ignore this patch.





More information about the general mailing list