]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
UBI: minor serialization fix
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
Wed, 13 May 2009 14:05:11 +0000 (17:05 +0300)
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
Mon, 18 May 2009 09:28:26 +0000 (12:28 +0300)
The @vol->upd_marker should be protected by the @ubi->device_mutex,
otherwise 'paranoid_check_volume()' complains sometimes because
vol->upd_marker is 1 while vtbl_rec->upd_marker is 0.

Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
drivers/mtd/ubi/upd.c

index dce1d92d8e9d8f6948ffe773e7a1f5c38cc7c2b3..74fdc40c8627b84b4bf8ab89704176b3bcc22b72 100644 (file)
@@ -70,8 +70,8 @@ static int set_update_marker(struct ubi_device *ubi, struct ubi_volume *vol)
 
        mutex_lock(&ubi->device_mutex);
        err = ubi_change_vtbl_record(ubi, vol->vol_id, &vtbl_rec);
-       mutex_unlock(&ubi->device_mutex);
        vol->upd_marker = 1;
+       mutex_unlock(&ubi->device_mutex);
        return err;
 }
 
@@ -111,8 +111,8 @@ static int clear_update_marker(struct ubi_device *ubi, struct ubi_volume *vol,
 
        mutex_lock(&ubi->device_mutex);
        err = ubi_change_vtbl_record(ubi, vol->vol_id, &vtbl_rec);
-       mutex_unlock(&ubi->device_mutex);
        vol->upd_marker = 0;
+       mutex_unlock(&ubi->device_mutex);
        return err;
 }