extern int restore_stripes(int *dest, unsigned long long *offsets,
int raid_disks, int chunk_size, int level, int layout,
int source, unsigned long long read_offset,
- unsigned long long start, unsigned long long length);
+ unsigned long long start, unsigned long long length,
+ char *src_buf);
#ifndef Sendmail
#define Sendmail "/usr/lib/sendmail -t"
* (raid_disk must already be set and correct) and it is filled
* with 1 for slots that are thought to be active and 0 for slots which
* appear to be failed/missing.
+ * *info is zeroed out before data is added.
*/
void (*getinfo_super)(struct supertype *st, struct mdinfo *info, char *map);
struct mdinfo *(*getinfo_super_disks)(struct supertype *st);
*/
const char *(*get_disk_controller_domain)(const char *path);
+ /* for external backup area */
+ int (*recover_backup)(struct supertype *st, struct mdinfo *info);
+
int swapuuid; /* true if uuid is bigending rather than hostendian */
int external;
const char *name; /* canonical metadata name */
long long size,
int level, char *layout_str, int chunksize, int raid_disks,
struct mddev_dev *devlist,
- int force);
+ int assume_clean, int force);
extern int Grow_restart(struct supertype *st, struct mdinfo *info,
int *fdlist, int cnt, char *backup_file, int verbose);
extern int Grow_continue(int mdfd, struct supertype *st,
struct supertype *st, unsigned long stripes,
int *fds, unsigned long long *offsets,
int dests, int *destfd, unsigned long long *destoffsets);
+void abort_reshape(struct mdinfo *sra);
extern char *devnum2devname(int num);
extern void fmt_devname(char *name, int num);
#define PATH_MAX 4096
#endif
+#define PROCESS_DELAYED -2
+#define PROCESS_PENDING -3