On Tue, 23 Nov 2010 11:01:03 -0800 "Darrick J. Wong" <djwong@xxxxxxxxxx> wrote: > Here's a shorter version that sets up flush/fua unconditionally. > --- > Before 2.6.37, the md layer had a mechanism for catching I/Os with the barrier > flag set, and translating the barrier into barriers for all the underlying > devices. With 2.6.37, I/O barriers have become plain old flushes, and the md > code was updated to reflect this. However, one piece was left out -- the md > layer does not tell the block layer that it supports flushes or FUA access at > all, which results in md silently dropping flush requests. > > Since the support already seems there, just add this one piece of bookkeeping. > > Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> > --- > > drivers/md/md.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/drivers/md/md.c b/drivers/md/md.c > index 324a366..43243a4 100644 > --- a/drivers/md/md.c > +++ b/drivers/md/md.c > @@ -4338,6 +4338,8 @@ static int md_alloc(dev_t dev, char *name) > if (mddev->kobj.sd && > sysfs_create_group(&mddev->kobj, &md_bitmap_group)) > printk(KERN_DEBUG "pointless warning\n"); > + > + blk_queue_flush(mddev->queue, REQ_FLUSH | REQ_FUA); > abort: > mutex_unlock(&disks_mutex); > if (!error && mddev->kobj.sd) { Applied, thanks. NeilBrown -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html