From 9b0c1db2da4d6ed621c7460d8e74b9cf7898e346 Mon Sep 17 00:00:00 2001 From: Chris Lalancette Date: Wed, 21 Jul 2010 12:41:45 -0700 Subject: [PATCH] --- yaml --- r: 251211 b: refs/heads/master c: cbf462908c8080f47c2a3300072877589dd1275f h: refs/heads/master i: 251209: 79fcb9513c42105cfa1daca08612cdefecde2a7b 251207: 723c77fdbbb7b48a3a78952ea2c79ef07c88bf3b v: v3 --- [refs] | 2 +- trunk/drivers/xen/blkback/xenbus.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index bfae13d98146..e8f772888c62 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 98e036a356747cfaa225478b1e4875e190257b09 +refs/heads/master: cbf462908c8080f47c2a3300072877589dd1275f diff --git a/trunk/drivers/xen/blkback/xenbus.c b/trunk/drivers/xen/blkback/xenbus.c index c31e5c40b45c..a0534fc6a428 100644 --- a/trunk/drivers/xen/blkback/xenbus.c +++ b/trunk/drivers/xen/blkback/xenbus.c @@ -91,6 +91,13 @@ static void update_blkif_status(blkif_t *blkif) return; } + err = filemap_write_and_wait(blkif->vbd.bdev->bd_inode->i_mapping); + if (err) { + xenbus_dev_error(blkif->be->dev, err, "block flush"); + return; + } + invalidate_inode_pages2(blkif->vbd.bdev->bd_inode->i_mapping); + blkif->xenblkd = kthread_run(blkif_schedule, blkif, name); if (IS_ERR(blkif->xenblkd)) { err = PTR_ERR(blkif->xenblkd);