Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm
[firefly-linux-kernel-4.4.55.git] / drivers / block / drbd / drbd_nl.c
index 76bb3a684b86e5c38bec24db5679b5b2760ae83b..2af26fc9528083d23cbde63fbe42128a26757599 100644 (file)
@@ -1230,6 +1230,11 @@ int drbd_adm_disk_opts(struct sk_buff *skb, struct genl_info *info)
        else
                mdev->ldev->md.flags |= MDF_AL_DISABLED;
 
+       if (new_disk_conf->md_flushes)
+               clear_bit(MD_NO_FUA, &mdev->flags);
+       else
+               set_bit(MD_NO_FUA, &mdev->flags);
+
        drbd_bump_write_ordering(mdev->tconn, WO_bdev_flush);
 
        drbd_md_sync(mdev);
@@ -3292,11 +3297,12 @@ void drbd_bcast_event(struct drbd_conf *mdev, const struct sib_info *sib)
        unsigned seq;
        int err = -ENOMEM;
 
-       if (sib->sib_reason == SIB_SYNC_PROGRESS &&
-           time_after(jiffies, mdev->rs_last_bcast + HZ))
-               mdev->rs_last_bcast = jiffies;
-       else
-               return;
+       if (sib->sib_reason == SIB_SYNC_PROGRESS) {
+               if (time_after(jiffies, mdev->rs_last_bcast + HZ))
+                       mdev->rs_last_bcast = jiffies;
+               else
+                       return;
+       }
 
        seq = atomic_inc_return(&drbd_genl_seq);
        msg = genlmsg_new(NLMSG_GOODSIZE, GFP_NOIO);