]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/md/dm-snap.c
Merge master.kernel.org:/home/rmk/linux-2.6-arm
[mv-sheeva.git] / drivers / md / dm-snap.c
index 0789c22ff0d4993d9f625febc7cc8cc5c878bc52..54853773510c41216c263c5096164559df7782b8 100644 (file)
@@ -83,10 +83,10 @@ struct dm_snapshot {
        /* Whether or not owning mapped_device is suspended */
        int suspended;
 
-       mempool_t *pending_pool;
-
        atomic_t pending_exceptions_count;
 
+       mempool_t *pending_pool;
+
        struct dm_exception_table pending;
        struct dm_exception_table complete;
 
@@ -96,6 +96,11 @@ struct dm_snapshot {
         */
        spinlock_t pe_lock;
 
+       /* Chunks with outstanding reads */
+       spinlock_t tracked_chunk_lock;
+       mempool_t *tracked_chunk_pool;
+       struct hlist_head tracked_chunk_hash[DM_TRACKED_CHUNK_HASH_SIZE];
+
        /* The on disk metadata handler */
        struct dm_exception_store *store;
 
@@ -105,10 +110,12 @@ struct dm_snapshot {
        struct bio_list queued_bios;
        struct work_struct queued_bios_work;
 
-       /* Chunks with outstanding reads */
-       mempool_t *tracked_chunk_pool;
-       spinlock_t tracked_chunk_lock;
-       struct hlist_head tracked_chunk_hash[DM_TRACKED_CHUNK_HASH_SIZE];
+       /* Wait for events based on state_bits */
+       unsigned long state_bits;
+
+       /* Range of chunks currently being merged. */
+       chunk_t first_merging_chunk;
+       int num_merging_chunks;
 
        /*
         * The merge operation failed if this flag is set.
@@ -125,13 +132,6 @@ struct dm_snapshot {
         */
        int merge_failed;
 
-       /* Wait for events based on state_bits */
-       unsigned long state_bits;
-
-       /* Range of chunks currently being merged. */
-       chunk_t first_merging_chunk;
-       int num_merging_chunks;
-
        /*
         * Incoming bios that overlap with chunks being merged must wait
         * for them to be committed.