patch-2.0.35 linux/include/linux/raid1.h

Next file: linux/include/linux/raid5.h
Previous file: linux/include/linux/quota.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.0.34/linux/include/linux/raid1.h linux/include/linux/raid1.h
@@ -0,0 +1,41 @@
+#ifndef _RAID1_H
+#define _RAID1_H
+
+#include <linux/md.h>
+
+struct mirror_info {
+	int		number;
+	int		raid_disk;
+	kdev_t		dev;
+	int		operational;
+	int		next;
+	int		sect_limit;
+};
+
+struct raid1_data {
+	struct md_dev *mddev;
+	struct mirror_info mirrors[MD_SB_DISKS];  	/* RAID1 devices, 2 to MD_SB_DISKS */
+	int raid_disks;
+	int working_disks;			/* Number of working disks */
+	int last_used;
+	unsigned long	next_sect;
+	int		sect_count;
+};
+
+/*
+ * this is our 'private' 'collective' RAID1 buffer head.
+ * it contains information about what kind of IO operations were started
+ * for this RAID5 operation, and about their status:
+ */
+
+struct raid1_bh {
+	unsigned int remaining;
+	unsigned int state;
+	int cmd;
+	struct md_dev *mddev;                    /* we could use bh->personality? */
+	struct buffer_head *master_bh;
+	struct buffer_head *mirror_bh [MD_SB_DISKS];
+	struct buffer_head *next_retry;
+};
+
+#endif

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov