Re: [PATCH 36/50] xfs_mdrestore: restore rt group superblocks to realtime device

Christoph Hellwig
2024-12-10T05:53:01Z

> +++ b/mdrestore/xfs_mdrestore.c
> @@ -19,8 +19,9 @@ struct mdrestore_ops {
> void (*read_header)(union mdrestore_headers *header, FILE *md_fp);
> void (*show_info)(union mdrestore_headers *header, const char *md_file);
> void (*restore)(union mdrestore_headers *header, FILE *md_fp,
> - int ddev_fd, bool is_data_target_file, int logdev_fd,
> - bool is_log_target_file);
> + int ddev_fd, bool is_data_target_file,
> + int logdev_fd, bool is_log_target_file,
> + int rtdev_fd, bool is_rt_target_file);

This almost feels like adding a little struct nicely clean up the
interface here:

struct mdrestore_dev {
int fd;
bool is_file;
}

void (*restore)(union mdrestore_headers *header, FILE *md_fp,
struct mdrestore_dev *ddev,
struct mdrestore_dev *logdev,
struct mdrestore_dev *rtdev);

and also be useful for at least verify_device_size.