On Wed, Aug 18, 2010 at 07:07:34PM -0700, Darrick J. Wong wrote:
Oddly, I ran the entire suite of tests against a larger set of machines, and
with Tejun's RFC patchset I didn't see nearly as much of an improvement. I
have been trying to put together a new tree based on "replace barrier with
sequenced flush" and Christoph's "explicitly flush/FUA" patch sets, though I've
gotten lost in the weeds. :(
Tejun's patches don't allow concurrent cache flushes to happen, while
my patch did. Tejun said there are drivers that can't handly empty
flushes with a bio attached, making this nessecary.
Tejun, any idea what drivers that would be?
I also experienced some sort of crash with Tejun's relaxed barrier patch on one
of my systems. I was hitting the BUG_ON in drivers/scsi/scsi_lib.c, line 1115.
My kernel source doesn't have a BUG_ON line there, but only one two
lines above. A req->nr_phys_segments that's zero sounds a bit like
empty flush requests, I'll need to look into it again.