summaryrefslogtreecommitdiff
path: root/include/linux/raid
diff options
context:
space:
mode:
authorNeil Brown <neilb@cse.unsw.edu.au>2002-07-18 19:11:27 -0700
committerTrond Myklebust <trond.myklebust@fys.uio.no>2002-07-18 19:11:27 -0700
commitbab5d712e332ea0b68aa289cd730446c679216e2 (patch)
treed373e70cb2eb95dfeecbbf68c1868c53849d355b /include/linux/raid
parent5e601b358ca1e01ed96ab24a7511cfb79fd49401 (diff)
[PATCH] MD - Remove dependance on superblock
Remove dependance on superblock All the remaining field of interest in the superblock get duplicated in the mddev struture and this is treated as authoritative. The superblock gets completely generated at write time, and all useful information extracted at read time. This means that we can slot in different superblock formats without affecting the bulk of the code.
Diffstat (limited to 'include/linux/raid')
-rw-r--r--include/linux/raid/md_k.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h
index 9ddabfde79da..f7da358ca006 100644
--- a/include/linux/raid/md_k.h
+++ b/include/linux/raid/md_k.h
@@ -175,7 +175,20 @@ struct mddev_s
int sb_dirty;
int ro;
+ /* Superblock information */
+ int major_version,
+ minor_version,
+ patch_version;
int persistent;
+ int chunk_size;
+ time_t ctime, utime;
+ int level, layout;
+ int raid_disks;
+ unsigned long state;
+ sector_t size; /* used size of component devices */
+ __u64 events;
+
+ char uuid[16];
struct mdk_thread_s *sync_thread; /* doing resync or reconstruct */
unsigned long curr_resync; /* blocks scheduled */